第一范文网 - 专业文章范例文档资料分享平台

2013年全国大学生电子设计竞赛A题论文

来源:用户分享 时间:2025/5/21 2:54:09 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

sbit AD_CLK=P1^3; sbit EOC=P1^4; sbit P3_0=P3^0;

void delay(unsigned int tt) {

while(tt--); }

void Write_Cmd(uchar dd) {

c_rs=0; c_rw=0; c_e=0; delay(50); P2=dd; c_e=1; delay(50); c_e=0; delay(50); }

void Write_Dat(uchar dd) {

c_rs=1; c_rw=0; c_e=0; delay(50); P2=dd; c_e=1; delay(50); c_e=0; delay(50); }

void Lcd_Init() { Write_Cmd(0x38); delay(200);

Write_Cmd(0x38); delay(200);

Write_Cmd(0x38); delay(200);

Write_Cmd(0x38); delay(200);

21

Write_Cmd(0x08); delay(200);

Write_Cmd(0x01); delay(200);

Write_Cmd(0x06); delay(200);

Write_Cmd(0x0c); delay(200);

Write_Cmd(0x80+0x00); }

uint tlc1543(uchar port) {

uint m=0; uint h; uchar i; AD_CS=0; EOC=1; port<<=4;

for(i=0;i<10;i++) { AD_IN=(bit)(port&0x80); AD_CLK=1; m<<=1;

h=AD_OUT; m=m|h; AD_CLK=0; port<<=1; }

EOC=0; AD_CS=1; return(m); }

void main() {

float res; uchar i=0; TCON=0x01; IP=0x01; IE=0x81; Lcd_Init(); while(1) {

22

if(xx==0) { num=tlc1543(0); res=num*5.0/1023.0; msg2[4]=msg1[(int)(res*1000)]; msg2[3]=msg1[(int)(res*100)]; msg2[1]=msg1[(int)(res*10)]; msg2[0]=msg1[(int)res]; if(msg2[0]==0x30) { msg2[1]=0x20; } Write_Cmd(0x80+0x02); Write_Dat(0x55); Write_Cmd(0x80+0x03); Write_Dat(0x3A); i=0; Write_Cmd(0x80+0x44); while(msg2[i]!=0x00) { Write_Dat(msg2[i]); i++; } Write_Cmd(0x80+0x50); Write_Dat(0x56); } if(xx==1) { num=tlc1543(1); res=num*5.0/1023.0/1.61; if(res<2.5) {P3_0=1;} if(res>=2.5) {P3_0=0;} msg3[4]=msg1[(int)(res*1000)]; msg3[3]=msg1[(int)(res*100)]; msg3[2]=msg1[(int)(res*10)]; msg3[0]=msg1[(int)res]; Write_Cmd(0x80+0x02); Write_Dat(0x49); Write_Cmd(0x80+0x03); 23

Write_Dat(0x3A); i=0; Write_Cmd(0x80+0x44); while(msg3[i]!=0x00) { Write_Dat(msg3[i]); i++; } Write_Cmd(0x80+0x50); Write_Dat(0x41); } if(xx==2) { num=tlc1543(2); res=num*5.0/1023.0/40.16; msg3[4]=msg1[(int)(res*1000)]; msg3[3]=msg1[(int)(res*100)]; msg3[2]=msg1[(int)(res*10)]; msg3[0]=msg1[(int)res]; Write_Cmd(0x80+0x02); Write_Dat(0xE0); Write_Cmd(0x80+0x03); Write_Dat(0x3A); i=0; Write_Cmd(0x80+0x44); while(msg3[i]!=0x00) { Write_Dat(msg3[i]); i++; } Write_Cmd(0x80+0x50); Write_Dat(0x20); } } }

void ISR_INT0() interrupt 0 using 1 {

xx++; if(xx==3) xx=0; }

24

2013年全国大学生电子设计竞赛A题论文.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c762wx9wbwx9da6b52ivb_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top