首页 ADC0808Proteus仿真 用1602显示

ADC0808Proteus仿真 用1602显示

举报
开通vip

ADC0808Proteus仿真 用1602显示 信号源参数设置(U2) (程序) #include             //52系列单片机头文件 #include #define uchar unsigned char #define uint unsigned int sbit st=P2^2;        //定义AD的WR端口 sbit oe=P2^3;        //定义AD的RD端口 sbit eoc=P2^4; sbit ale=P2^5; sbit lcden=P2^1;    //液晶使能端 sbit lcdrs=P2^0; sb...

ADC0808Proteus仿真 用1602显示
信号源参数设置(U2) (程序) #include             //52系列单片机头文件 #include #define uchar unsigned char #define uint unsigned int sbit st=P2^2;        //定义AD的WR端口 sbit oe=P2^3;        //定义AD的RD端口 sbit eoc=P2^4; sbit ale=P2^5; sbit lcden=P2^1;    //液晶使能端 sbit lcdrs=P2^0; sbit P3_5=P2^7;    //液晶数据命令选择端 uchar  code  td[]={0x00,0x10,0x20,0x30,0x40,0x50,0x60,0x70,}; uchar  code  tongdao[]={"TONGDAO:"}; uchar  code  dianya[]={"DIANYA:"}; uint a; int number=0; void delay(uint z) { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void delaynms(uint x) { uchar  i; while(x-->0) { for(i=0;i<125;i++) {;}}} void write_com(uchar com) { lcdrs=0; P0=com; delay(5); lcden=1; delay(5); lcden=0; } void write_data(uchar date) { lcdrs=1; P0=date; delay(5); lcden=1; delay(5); lcden=0; } void init() { lcden=0; write_com(0x38);//设置16X2显示,5X7点阵,8位数据接口 write_com(0x0c);//设置开显示,不显示光标 write_com(0x06);//写一个字符后地址指针加1 write_com(0x01);//显示清零,数据指针清零 } void display(uchar m,uchar bai,uchar shi,uchar ge)  //显示子函数 {     write_com(0x80+0x08); write_data(48+m); write_com(0x80+0x40+0x07); write_data(48+bai); write_data('.'); write_data(48+shi); write_data(48+ge); } void key() { if(!P3_5)//P3.5 是否按下 { delaynms(20);//延时判误 if(!P3_5)//再一次判断 P3。5 是否按下 { while(!P3_5);//等待P3。5 为高电平 number++;//通道号显示加一 if(number>7)number=0;//八通道 } } } void main()        //    主程序 { uint a1,a2,a3,i; init(); write_com(0x80); for(i=0;tongdao[i]!=0;i++) write_data(tongdao[i]); write_com(0x80+0x40); for(i=0;dianya[i]!=0;i++) write_data(dianya[i]); while(1) { P3=td[number]; ale=1; oe=0;//以下三条指令为起动 AD0809 st=0;                    st=1; st=0; delaynms(1); while(!eoc);//等待转换结束 P1=0xff; oe=1;//取出读得的数据 a=P1; a=a*100/51; a1=a/100; a2=a%100/10; a3=a%10; display(number,a1,a2,a3); key(); } }
本文档为【ADC0808Proteus仿真 用1602显示】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_597436
暂无简介~
格式:doc
大小:20KB
软件:Word
页数:7
分类:互联网
上传时间:2019-05-28
浏览量:32