目錄
具體實現(xiàn)功能
設(shè)計介紹
51單片機簡介
資料內(nèi)容
仿真實現(xiàn)(protues8.7)
程序(Keil5)
全部內(nèi)容
具體實現(xiàn)功能
1、輸入直流電壓值,自動選擇量程,處理后利用LCD1602進行顯示。
2、仿真模擬實現(xiàn)直流電壓的測量與顯示,可進行四個量程的切換(2V、20V、200V、500V)。
設(shè)計介紹
?51單片機簡介
51單片是一種低功耗、高性能CMOS-8位微控制器,擁有靈巧的8位CPU和可編程Flash,使得51單片機為眾多嵌入式控制應(yīng)用系統(tǒng)提供靈活、高效的解決方案。
本設(shè)計所使用的芯片可兼容以下所有的51系列單片機(包括AT系列和STC系列)。
?資料內(nèi)容
仿真實現(xiàn)(protues8.7)
本設(shè)計利用protues8.7軟件實現(xiàn)仿真設(shè)計,具體如圖。
程序(Keil5)
本設(shè)計利用KEIL5軟件實現(xiàn)程序設(shè)計。
主函數(shù)如下:
void main() { float DATA,temp2; char temp1; LcdInit(); //LCD初始化 LCD_word(0x80,"voltage:"); while(1) { P2=0xFF; temp1=P2; temp1=temp1&0xf0; switch(temp1) { case 0x80: {P2=P2&0xF8;A=0;break;} case 0xc0: {P2=P2&0xF9;BB=0;break;} case 0xE0: {P2=P2&0xFA;C=0;break;} case 0xF0: {P2=P2&0xFB;D=0;break;} } AD_START=0; AD_OE=0; AD_START=1; _nop_(); AD_START=0; while(!AD_EOC); AD_OE=1; temp2=P1; AD_OE=1; DATA=temp2/255.0*5.0; temp1=P2; temp1=temp1&0x0f; switch(temp1) { case 0x08:DATA=DATA*1;break; case 0x09:DATA=DATA*10;break; case 0x0A:DATA=DATA*100;break; case 0x0B:DATA=DATA*1000;break; } LCD_DATA(0x89,DATA); LCD_word(0x80+15,"V"); } }
程序運行結(jié)果如圖:
全部內(nèi)容
全部內(nèi)容如下:
資料鏈接:https://docs.qq.com/doc/DT0ZleG9PZ0NhSWxU
?
-
電壓表
+關(guān)注
關(guān)注
3文章
322瀏覽量
39864 -
仿真
+關(guān)注
關(guān)注
52文章
4269瀏覽量
135747 -
51單片機
+關(guān)注
關(guān)注
277文章
5710瀏覽量
127296 -
數(shù)字電壓表
+關(guān)注
關(guān)注
4文章
190瀏覽量
33570
發(fā)布評論請先 登錄
Analog Devices Inc. ADMX3652Z ±20V數(shù)字電壓表數(shù)據(jù)手冊
數(shù)字電壓表的主要指標(biāo)_數(shù)字電壓表由什么構(gòu)成
數(shù)字電壓表的使用方法
數(shù)字電壓表概述_數(shù)字電壓表的作用
數(shù)字電壓表的工作特性_數(shù)字電壓表工作原理
ADC0809測對地(理論應(yīng)為0V)的電壓時,結(jié)果卻顯示為2.5V,是哪里出了問題?
51單片機中為什么很少出現(xiàn)printf的身影

設(shè)計分享|基于51單片機的電梯仿真系統(tǒng)設(shè)計

評論