标签:
ADC0808
引脚功能各引脚功能如下:
1 #include<reg52.h> 2 #define uchar8 unsigned char 3 #define uint16 unsigned int 4 #define LED P0 5 #define out P1 6 sbit start = P2^1 ; 7 sbit OE = P2^7; // 当A/D转换结束时,此端输入一个高电平,输出数字量。OE=0,关闭输出,不准输出到单片机 8 sbit EOC = P2^3; // A/D转换结束信号,输出,当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。 9 sbit CLOCK = P2^0; // 时钟脉冲输入端 10 11 sbit add_a = P2^4; // abc 用来选择 ADC芯片的通道, 12 sbit add_b = P2^5; 13 sbit add_c = P2^6; 14 15 void main(void) 16 { 17 18 uchar8 temp ; 19 20 add_a=0; add_b=0; add_c=1; // 选择 ADC0809 芯片的通道 4 对应 100 21 22 while(1) 23 { 24 start=0; 25 start=1; // 上升沿使得 0809 复位 26 start=0; // 下降沿 启动AD 转换 27 28 while(1) 29 { 30 CLOCK = ! CLOCK ; if( EOC == 1) break ; // 等待转换结束,跳出循环 31 } 32 33 OE=1; 34 35 temp = out ; // 暂存转换结果 36 OE = 0; // 关闭输出 37 38 LED=~temp; // 这里取反,是因为自己把 电路图 线接反了 39 //所以通过软件修改,使得LED 亮的 为 1,灭的为 0 40 // 采样结果通过 P0 口 输出到 LED 灯 41 } 42 43 }
标签:
原文地址:http://www.cnblogs.com/shengruxiahua/p/5076821.html