2026/5/13 11:00:16
网站建设
项目流程
枣强网站建设代理,推广网店店铺,个人做外贸怎么做,杭州市住房和城乡建设局全套资料包含#xff1a;Proteus仿真源文件keil C语言源程序AD原理图流程图元器件清单说明书等
资料下载#xff1a;
通过网盘分享的文件#xff1a;资料分享 链接: 百度网盘 请输入提取码 提取码: tgnu 目录
资料下载#xff1a;
Proteus仿真功能
项目文件资料#…全套资料包含Proteus仿真源文件keil C语言源程序AD原理图流程图元器件清单说明书等资料下载通过网盘分享的文件资料分享链接:百度网盘 请输入提取码提取码: tgnu目录资料下载Proteus仿真功能项目文件资料一、Proteus仿真源文件二、AD原理图文件二、报告说明书三、系统流程图四、Keil c语言程序源代码项目功能交流电压表1、测量范围分成2个档位1mV-100mV和100mV-10V2、自动切换档位3、多次测量取平均值4、上位机控制启动和停止【说明测量过程比较慢测量一次大概要花3~5秒因为51单片机跑滤波算法比较花时间】项目文件一、Proteus仿真源文件二、AD原理图文件二、报告说明书三、系统流程图四、器件清单元件型号数量单片机AT89C511电容30pf2电容10uf1电阻10k2按钮1晶振12MHZ1集成运放LM3241显示器LCD16021电阻21k1电阻1k1稳压管3.3V1排阻10k1模数芯片TLC15431五、Keil c语言程序源代码(部分)#include reg51.h #include lcd1602.h #includeTLC1543.h #define uchar unsigned char #define uint unsigned int sbit testP1^7; uchar disp1[]000mV ; uchar disp2[]00.00V; uchar dang1;//档位 uchar time0,times0; uint volt10,volt20,sum0,volt0;//电压 uchar start1; //延时 void delay(uint i) { while(i--); } void send(uchar *p)//发送 { while(*p!\0) { SBUF*p; while(!TI); TI0; p; } } //主函数 void main() { init_1602(); write_string(1,0,1:1mV-100mV); SCON0X50; //设置为工作方式1 TMOD0X21; //设置计数器工作方式2 TH10XFD; TL10XFD; ES1; //打开接收中断 EA1; //打开总中断 TR11; //打开计数器 TH00X3C; TR01;//打开定时器 while(1) { if(start1) { delay(100); //测量 if(dang0)//1mV-100mV { volt1TLC1543_read(0); if(volt1volt2) volt2volt1; } else//100mV-10V { test0; volt1TLC1543_read(1); if(volt1volt2) volt2volt1; } } } } //定时器0中断 void Timer0() interrupt 1 { if(start1) { if(time10)//定时采集 time; else { time0; sumvolt2;//累加 volt20; if(times5)//平均值 times; else { times0; voltsum; sum0;volt20; voltvolt/5; if(dang0)//1挡 { voltvolt*69/72; disp1[0]volt/1000x30; disp1[1]volt%100/100x30; write_string(2,5,disp1); if(volt105)//档位切换 dang1; send(disp1); SBUF0x0d;while(!TI);TI0; } else//2挡 { if(volt105)//档位切换 dang0; write_string(1,0,2:100mV-10V); voltvolt*2; if(volt1000)//100-1000mV { disp1[0]volt/1000x30; disp1[1]volt%100/100x30; disp1[2]volt%100x30; write_string(2,5,disp1); send(disp1); SBUF0x0d;while(!TI);TI0; } else //1-10V { disp2[0]volt/100000x30; disp2[1]volt%10000/10000x30; disp2[3]volt%1000/1000x30; disp2[4]volt%100/100x30; write_string(2,5,disp2); send(disp2); SBUF0x0d;while(!TI);TI0; } } } } } TL00XB0; } //串口中断 void Usart() interrupt 4 { startSBUF-0x30;//出去接收到的数据 RI 0;//清除接收中断标志位 if(start0) { write_string(1,0, welcom!); write_string(2,4, ); } }六、全套资料包含七项目资源获取需要完整的资料可以点击下面的名片关注回复“资料”↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓