AD0809简易数字电压表.ppt
《AD0809简易数字电压表.ppt》由会员分享,可在线阅读,更多相关《AD0809简易数字电压表.ppt(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、AD0809简易数字电压表简易数字电压表一一AD0809电压表设计要求电压表设计要求要求要求:设计一个简易的数字电压表,用来测量我们焊接的单片机开发板中AD0809模块前端电位器R40的实时电压值,并用电路板中左位数码管的前三位显示当前模拟电压的十进制数字量值,同时用右数码管显示当前的模拟电压值附加要求:附加要求:为了防止数字电压表使用时出现测量值与实际值存在误差的问题,须增加能通过按键对十进制数字量测量值进行100以内补偿值设定的功能.二、转换的流程图开始左右数码管显示十进制初始化在中显示数码管中的数值判断是否按键按下?判断是加1还是减1?否是加1减1结束三、设计中的问题三、设计中的问题n1
2、、串口在线下载问题;、串口在线下载问题;n2、数码管的显示问题;、数码管的显示问题;n3、用周立公芯片实现按键加一;、用周立公芯片实现按键加一;n4、LCD的显示;的显示;n5、调试中遇到显示不稳定;、调试中遇到显示不稳定;四、解答上述问题四、解答上述问题硬件问题:串口不能下载程序,通过一步步检测MAX232是否与串口连通,是否 与单片机接受和发送的端口连接上,借助万用表查看电阻、电容以及芯片是否正常工作。软件问题:经过了解zlg7290.h文件、zlg7290.c文件、VIIC_C51.h文件以 及 VIIC_C51.c文件,主要是zlg7290.c文件中Test_Key子函数、DispVa
3、lue子函数、ZLG7290_Download子函数。通过在主函数中调用子函数,并且多处的运用for、while、if语句,经过编译,再一步步排查问题。五、程序五、程序#include#includeZLG7290.h#includeI2C.h#include/#include#define data_point P0#define uchar unsigned chartypedef unsigned char BYTE;/重新定义typedef unsigned int WORD;/重新定义typedef bit BOOL;/重新定义BYTE code disp21=V;BYTE code
4、 disp33=.-+;BYTE code disp4=Stander:;sbit rs=P13;/定义P13端口为rssbit ep=P15;sbit rw=P14;/lcdsbit EOC=P33;sbit ADDA=P20;sbit ADDB=P21;sbit ADDC=P22;sbit OE=P25;sbit START=P26;/sbit CLK=P27;volatile bit FlagINT=0;unsigned char AD=0;char count=0;unsigned char disp7=0,0,0,0,0,0,0;unsigned int t0count=0;void
5、 delay(unsigned char t)doTH1=0 xD8;TL1=0 xf0;TR1=1;while(!TF1);TF1=0;TR1=0;while(-t);BOOL lcd_bz()BOOL result;rs=0;rw=1;ep=1;_nop_();_nop_();_nop_();_nop_();result=(BOOL)(P0&0 x80);ep=0;return result;lcd_wcmd(BYTE cmd)while(lcd_bz()=1);rs=0;rw=0;ep=0;_nop_();_nop_();P0=cmd;_nop_();_nop_();_nop_();_n
6、op_();ep=1;_nop_();_nop_();_nop_();_nop_();ep=0;lcd_pos(BYTE pos)lcd_wcmd(pos|0 x80);lcd_wdat(BYTE dat)while(lcd_bz();rs=1;rw=0;ep=0;P0=dat;_nop_();_nop_();_nop_();_nop_();ep=1;_nop_();_nop_();_nop_();_nop_();ep=0;lcd_init()lcd_wcmd(0 x38);lcd_wcmd(0 x0c);lcd_wcmd(0 x06);/lcd_wcmd(0 x00);/delay(1);/
7、lcd_wcmd(0 x14);/delay(1);lcd_wcmd(0 x01);/lcd_pos(12);/lcd_wdat(disp21);void INT0_SVC()interrupt 0FlagINT=1;void SystemInit()I2C_Init();TMOD=0 x01;delay(1);/等待ZLG7290复位完毕void ClearAll()unsigned char x;for(x=0;x8;x+)ZLG7290_Download(x,0,0,31);void display()unsigned int i,j,k=0 xfb;for(i=0;i=1;for(j=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AD0809 简易 数字 电压表
限制150内