欢迎来到天天文库
浏览记录
ID:39474190
大小:60.00 KB
页数:6页
时间:2019-07-04
《基于AT89S52的数字电压表仿真及C源程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基于AT89S52的数字电压表仿真及C源程序用ADC0809做的数字电压表,量程0~5VC源程序如下:#include#defineucharunsignedchar#defineuintunsignedintucharcodetable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};sbitdula=P2^6;sbitwela=P2^7;sbitCLK=P2^4;sbitST=P2^5;sb
2、itEOC=P2^3;sbitOE=P2^2;sbitP20=P2^0;sbitP21=P2^1;sbitP07=P0^7;ucharsw,gw,sf,bf;uintdate,temp;voiddelayms(ucharz){uchari,j;for(i=z;i>0;i--)for(j=110;j>0;j--);}voidinit(){TMOD=0X01;TH0=(65536-50)/256;TL0=(65536-50)%256;EA=1;ET0=1;TR0=1;P20=1;P21=1;}voiddisplay(sw,gw,sf,
3、bf){dula=1;P0=table[sw];dula=0;P0=0xff;wela=1;P0=0xfe;wela=0;delayms(5);dula=1;P0=table[gw];P07=1;dula=0;P0=0xff;wela=1;P0=0xfd;wela=0;delayms(5);dula=1;P0=table[sf];dula=0;P0=0xff;wela=1;P0=0xfb;wela=0;delayms(5);dula=1;P0=table[bf];dula=0;P0=0xff;wela=1;P0=0xf7;wela
4、=0;delayms(5);}voidmain(){init();while(1){ST=0;OE=0;ST=1;ST=0;while(EOC==0);OE=1;date=P3;OE=0;temp=date*1.0/255*500;sw=temp/1000;gw=temp%1000/100;sf=temp%100/10;bf=temp%10;display(sw,gw,sf,bf);}}voidtimer()interrupt1{TH0=(65536-50)/256;TL0=(65536-50)%256;CLK=~CLK;}
此文档下载收益归作者所有