欢迎来到天天文库
浏览记录
ID:57684676
大小:482.99 KB
页数:9页
时间:2020-08-31
《基于单片机的多路电压采集.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、此程序分三部分,一是主程序,二是1602显示程序,三是ad0808采样程序,附protues仿真图。//*************************************************************************************************//*************************************************************************************************//**<程序名>:多路数字电压表采集//**<功能>:使用LCD16
2、02显示被检测电压,精度为0.05V,范围是0~5V。//**<版本说明>:这是第3版,使用LCD显示。//**<作者>:程沛//**<修改>:杨坚//**<完成时间>:2011年11月18日//*************************************************************************************************//*头文件及宏定义#include"includes.h"#include#defineTIME0H0x3C#defineTIME0L0xB0//#de
3、fineabcP1//*****************************************************************************///全局变量******************************//***************************************************************************unsignedcharuc_Clock=0;//定时器0中断计数bitb_DATransform=0;//<<<<<<<<<<<<<<<<<<<<<<<<<<<
4、<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>//把电压显示在LCD//<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>voidvShowVoltage(unsignedintuiNumber){unsignedcharucaNumber[3],ucCount;if(uiNumber>999)uiNumber=999;ucaNumber[0]=uiNumber/100;//把计算数字的每个位存入数组。ucaN
5、umber[1]=(uiNumber-100*(int)ucaNumber[0])/10;ucaNumber[2]=uiNumber-100*(int)ucaNumber[0]-10*ucaNumber[1];for(ucCount=0;ucCount<3;ucCount++){vShowOneChar(ucaNumber[ucCount]+48);//从首位到末位逐一输出。if(ucCount==0)vShowOneChar('.');}}//**********************************************************
6、***************************************//*主函数//*************************************************************************************************voidmain(){unsignedintm,g,k;unsignedcharabc;//for(m=0;m<8;m++)//{//<<<<<<<<<<<<<<<<<设置定时器0>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>TMO
7、D=0x01;//定时器0,模式1。TH0=TIME0H;TL0=TIME0L;TR0=1;//启动定时器。ET0=1;//开定时器中断。EA=1;//开总中断vdInitialize();vWriteCMD(0x84);//写入显示起始地址(第二行第一个位置)vShowChar("Voltage:");vWriteCMD(0xC9);vShowChar("(V)");while(1){abc=0x00;for(m=0;m<8;m++){P1=abc;abc++;if(b_DATransform==1){b_DATransform=0;vWriteCMD(0x
8、80);vShowVoltage(m)
此文档下载收益归作者所有