LCD1602+ADC0832制作的数字电压表_第1页
LCD1602+ADC0832制作的数字电压表_第2页
LCD1602+ADC0832制作的数字电压表_第3页
LCD1602+ADC0832制作的数字电压表_第4页
LCD1602+ADC0832制作的数字电压表_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、ADC0832+LCD1602+PROTEUS 仿真电路 C51 程序 RP1 2 D7 TTe TTs y57 7 DJ ypT TTH RESPACK ALE P2.7.A15 P2.6.A14 P2.SJ/k13 P1.2 Pkin2EX P1 iDiT2 P3EN RST XTAL2 SfTALI P2.3JA11 P2.ZJA1B P2.1;A9 P2 0Ae ie 19 ill 301 Tai 且 4 PI2 5i a ATB9C52 3F D2 ii3B D1 39 DO U1 Pg.T翌 P3E丽 P3 5jT1 P3 4jTCi P3.3fHTT P3.2iiNTQ P3.1

2、/TXD P3.D;R)CD PQ.T/ADr PQ.e; pa.5 pa.4 PD.3 PO.Z PO 1 PO-OADO ADfi AD5 AD4 ADS A02 A01 /I P12 T, P11 P1O. HJ k iCk 1 k RVf L IDh O GND CH1 CLK CH0 VCC CH0=1.352U CH1=2.566U 曙囂呂 S3SSS sj*|sj| JD K 5 a B G T CM 寸 1 LU s E z a Cl Q a Ji O 呂 电路设计:曾宪阳 http:/ /* /LCD1602+ADC0832制作的数字电压表 /接口方式:模拟口线 /作者:曾宪

3、阳 / 网址:http:/ /* #in clude #in cludevi ntri ns.h #defi ne uchar un sig ned char #defi ne uint un sig ned int #defi ne IO 1602 P0 /IO 口 sbit RS_1602=PO; sbit RW_1602=P 2八1; sbit E_1602=卩2八2; sbit CS=P 1八0; sbit CLK =P 1八1; sbit DIO=P 1八2; void delay_ms(u nsig ned int t)/11.0592MHz 1ms uchar x,y; for(

4、t;t0;t-) for(x=0;xv114;x+) for(y=0;y1;y+); void Wr1602Cmd(u nsig ned char dat) 写命令函数 E_1602=0; IO_1602=dat; RS_1602=0; RW_1602=0; E_1602=1; delay_ms(1); E_1602=0; delay_ms(1); void Wr1602Dat(u nsig ned char dat) /写数据函数 E_1602=0; IO_1602=dat; RS_1602=1; RW_1602=0; E_1602=1; delay_ms(1); E_1602=0; del

5、ay_ms(1); void In it1602(void) delay_ms(20); Wr1602Cmd(0 x38); delay_ms(5); Wr1602Cmd(0 x38); delay_ms(5); Wr1602Cmd(0 x06); Wr1602Cmd(0 x0c);/ Wr1602Cmd(0 x01);/ 清屏 Wr1602Cmd(0 x80);/ 设置地址 uchar RdAdcO832(bit Hx) uchar value0,value1,i; CS=1;CLK=0;DIO=1; CS=O; DI0=1;_nop_();_nop_();_nop_();_nop_();

6、/ CLK=1;_nop_();_nop_();_nop_();_nop_(); CLK=0;_nop_();_nop_();_nop_();_nop_(); 写ST位 DI0=1;_nop_();_nop_();_nop_();_nop_();/ CLK=1;_nop_();_nop_();_nop_();_nop_(); CLK=0;_nop_();_nop_();_nop_();_nop_(); 写SGL位 DIO=Hx;_nop_();_nop_();_nop_();_nop_();/ 位 写通道号 CLK=1;_nop_();_nop_();_nop_();_nop_(); CLK=

7、0;_nop_();_nop_();_nop_();_nop_(); DI0=1; for(i=0;iv8;i+) CLK=1;_nop_();_nop_();_nop_();_nop_(); CLK=0;_nop_();_nop_();_nop_();_nop_(); value0=1; if(DI0=1) value1|=0 x80; else valuel CLK=1;_nop_();_nop_();_nop_();_nop_(); CLK=0;_nop_();_nop_();_nop_();_nop_(); CS=1; if(value0!=value1) P1 else P 1|=0

8、X80; retur n value0; void mai n() un sig ned long i; In it1602(); while(1) Wr1602Cmd(0 x80); i=RdAdc0832(0); i=(i*5000/255); Wr1602Dat(C); Wr1602Dat(H); Wr1602Dat(0); Wr1602Dat(=); Wr1602Dat(0+i/1000); Wr1602Dat(.); Wr1602Dat(0+i%1000/100); Wr1602Dat(0+i%1000%100/10); Wr1602Dat(0+i%1000%100%10); Wr1

9、602Dat(V); Wr1602Cmd(0 xC0); i=RdAdc0832(1); i=(i*5000/255); Wr1602Dat(C); Wr1602Dat(H); Wr1602Dat(1); Wr1602Dat(=); Wr1602Dat(0+i/1000); Wr1602Dat(.); Wr1602Dat(0+i%1000/100); Wr1602Dat(0+i%1000%100/10); Wr1602Dat(0+i%1000%100%10); Wr1602Dat(V); 制作的数字电压表-总线连接方式 LCD1602+ADC0809 LCD1 LWfllft. ua:AiCj

10、y 1N0=2.4S0U 翌壷j iodoS 兰 宮5 tdTx Qs0 H 口 U3:A 町 p 2 p * JI o E a I s -H. a s 2 IT U7 ft - i 1 4 4 T. 耳j堆 円J昭 P2ZA1C PJiA1 P24.A12 P2fiAl3 P2SAW P2.AE Pit远 -I TfT碎 P3 .TXD oa.i-WT r 押吕丽 PU 旳.心TE M.ft =M void delay_ms(ui nt t) uchar x,y; for(t;tO;t-) for(x=0;x114;x+) for(y=0;y1;y+); void In it1602(voi

11、d) delay_ms(15); *(uchar xdata*)LCDWnteComAddr)=0 x38; delay_ms(5); *(uchar xdata*)LCDWnteComAddr)=0 x38; delay_ms(5); *(uchar xdata*)LCDWnteComAddr)=0 x38; delay_ms(2); *(uchar xdata*)LCDWnteComAddr)=0 x08; delay_ms(2); *(uchar xdata*)LCDWnteComAddr)=0 x01; delay_ms(2); *(uchar xdata*)LCDWnteComAdd

12、r)=OxOc; delay_ms(2); *(uchar xdata*)LCDWnteComAddr)=0 x06; delay_ms(2); *(uchar xdata*)LCDWnteComAddr)=0 x80; delay_ms(2); void Disp lay(void) *(uchar xdata*)LCDWnteComAddr)=0XC0; delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=T; delay_ms(2); *(uchar xdata*)LCDWnteDatAddr)-N: delay_ms(2); *(uchar xda

13、ta*)LCDWriteDatAddr)=O; delay_ms(2); *(uchar xdata*)LCDWnteDatAddr)-=: delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=(0+Dis p0); delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=(.); delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=(0+Dis p1); delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=(O+Dis p2); delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=(0+Dis p3); delay_ms(2); *(uchar xdata*)LCDWriteDatAddr)=(V); delay_ms(2); void ADC0809(void) un sig ned long i; *(uchar xdata*)ADC0809Addr)=0; de

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论