电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

单片机实例数字电压表设计和实现 电气工程自动化专业

单片机实例数字电压表设计和实现  电气工程自动化专业_第1页
1/4
单片机实例数字电压表设计和实现  电气工程自动化专业_第2页
2/4
单片机实例数字电压表设计和实现  电气工程自动化专业_第3页
3/4
28. 数字电压表 1. 实验任务 利用单片机 AT89S51 与 ADC0809 设计一个数字电压表,能够测量 0-5V 之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。 2. 电路原理图 图 1.28.1 3. 系统板上硬件连线 a) 把“单片机系统”区域中的 P1.0-P1.7 与“动态数码显示”区域中的ABCDEFGH 端口用 8 芯排线连接。 b) 把“单片机系统”区域中的 P2.0-P2.7 与“动态数码显示”区域中的S1S2S3S4S5S6S7S8 端口用 8 芯排线连接。 c) 把“单片机系统”区域中的 P3.0 与“模数转换模块”区域中的 ST 端子用导线相连接。 d) 把“单片机系统”区域中的 P3.1 与“模数转换模块”区域中的 OE 端子用导线相连接。 e) 把“单片机系统”区域中的 P3.2 与“模数转换模块”区域中的 EOC 端子用导线相连接。 f) 把“单片机系统”区域中的 P3.3 与“模数转换模块”区域中的 CLK 端子用导线相连接。 g) 把“模数转换模块”区域中的 A2A1A0 端子用导线连接到“电源模块”区域中的 GND 端子上。 h) 把“模数转换模块”区域中的 IN0 端子用导线连接到“三路可调电压模块”区域中的 VR1 端子上。 i) 把“单片机系统”区域中的 P0.0-P0.7 用 8 芯排线连接到“模数转换模块”区域中的 D0D1D2D3D4D5D6D7 端子上。 4. 程序设计内容 i. 由于 ADC0809 在进行 A/D 转换时需要有 CLK 信号,而此时的 ADC0809的 CLK 是接在 AT89S51 单片机的 P3.3 端口上,也就是要求从 P3.3输出 CLK 信号供 ADC0809 使用。因此产生 CLK 信号的方法就得用软件来产生了。 ii. 由于 ADC0809 的参考电压 VREF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。实际显示的电压值 (D/256*VREF) 5. 汇编源程序(略)6. C 语言源程序#include unsigned char code dispbitcode[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};unsigned char dispbuf[8]={10,10,10,10,0,0,0,0};unsigned char dispcount;unsigned char getdata;unsigned int temp;unsigned char i;sbit ST=P3^0;sbit OE=P3^1;sbit EOC=P3^2;sbit CLK=P3^3;void main(void){ST=0;OE=0;ET0=1;ET1=1;EA=1;TMOD=0x12;TH0=216;TL0=216;TH1=(65536-4000)/256;TL1=(65536-4000)%256;TR1=1;TR0=1;ST=1;ST=0;while(1){if(EOC==1){OE=1;getdata=P0;OE=0;temp=getdata*235;temp=temp/128;i=5;dispbuf[0]=10;dispbuf[1]=10;dispbuf[2]=10;dispbuf[3]=10;dispbuf[4]=10;dispbuf[5]=0;dispbuf[6]=0;dispbuf[7]=0;while(temp/10){dispbuf[i]=temp%10;temp=temp/10;i++;}dispbuf[i]=temp;ST=1;ST=0;}}}void t0(void) interrupt 1 using 0{CLK=~CLK;}void t1(void) interrupt 3 using 0{TH1=(65536-4000)/256;TL1=(65536-4000)%256;P1=dispcode[dispbuf[dispcount]];P2=dispbitcode[dispcount];if(dispcount==7){P1=P1 | 0x80;}dispcount++;if(dispcount==8){dispcount=0;}}

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

单片机实例数字电压表设计和实现 电气工程自动化专业

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部