数字电压表程序及仿真图.doc

数字电压表程序及仿真图.doc

ID:51845320

大小:93.00 KB

页数:6页

时间:2020-03-16

数字电压表程序及仿真图.doc_第1页
数字电压表程序及仿真图.doc_第2页
数字电压表程序及仿真图.doc_第3页
数字电压表程序及仿真图.doc_第4页
数字电压表程序及仿真图.doc_第5页
资源描述:

《数字电压表程序及仿真图.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、//************************************************//**用adc0809进行电压测量,lcd1602显示,精度0.001v**//************************************************#include"reg51.h"#include"intrins.h"#defineucharunsignedchar#defineuintunsignedintucharcodetable[]="ID:";//欢迎显示,包

2、括空格在内<=16ucharcodetable1[]="Name:";//欢迎显示,包括空格在内<=16//************管脚定义************************sbitADC_OE=P3^0;//ADC输入允许信号端口sbitADC_EOC=P3^1;//ADC转换结束信号输出端sbitADC_START=P3^2;//ADC启动转换信号输入端sbitADC_CLK=P3^3;//ADC时钟输入端sbitlcd_rs=P3^4;//液晶数据命令选择端sbitlcd_en=

3、P3^5;//液晶使能//************参数定义************************ucharnum;//LCD1602开机显示数组数ucharAD_data;//AD转换原始数据uchardis1[]="CurrentVoltage";uchardis2[]={'','','','','V','=','0','.','0','0','0','v','','','','',};//初始化数组,用来保存电压显示//************子函数定义****************

4、********voiddelay(ucharz);//delay延时子程序voidinit_lcd();//LCD1602初始化函数voidInitTimer0();//定时器0初始化函数voidwrite_com(ucharcom);//LCD1602写指令函数voidwrite_data(uchardate);//LCD1602写数据函数voidwrite_welcome();//LCD1602开启显示欢迎函数voidinit_ADC();//ADC初始化函数voidAD_covert();/

5、/AD转换子程序voidADC_change();//ADC转换函数voidwrite_adc();//ADC显示函数//************主函数************************voidmain(){init_lcd();//LCD1602初始化write_welcome();//LCD1602开启显示欢迎InitTimer0();//定时器0初始化init_lcd();//LCD1602初始化init_ADC();//ADC初始化while(1){AD_covert();//

6、AD转换ADC_change();//ADC转换函数write_adc();//ADC显示}}//************delay延时子程序************************voiddelay(ucharz){ucharx,y;for(x=0;x

7、38);//设置16*2显示,5*7点阵,8位数据接口write_com(0x08);//写一个字符后地址指针加1write_com(0x01);//显示清零,数据指针清零write_com(0x06);//写一个字符后地址指针加1write_com(0x0c);//关显示,光标不显示不闪烁}//************定时器0初始化函数************************voidInitTimer0(){TMOD=0x02;//定时器0工作方式2TH0=0x14;//初值位20TL0=

8、0x14;EA=1;//开总中断ET0=1;//允许T0中断TR0=1;//启动T0}//************LCD1602写指令函数************************voidwrite_com(ucharcom){lcd_rs=0;//选择写指令P2=com;//将要写的命令送到数据总线上delay(5);//延时5ms,待数据稳定lcd_en=1;//由于初始化已将lcd_en置为0,使能端给一个高脉冲,delay(5);//延时5ms,待数据稳

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。