目錄
具體實現功能
設計介紹
51單片機簡介
資料內容
仿真實現(protues8.7)
程序(Keil5)
全部內容
具體實現功能
1、輸入直流電壓值,自動選擇量程,處理后利用LCD1602進行顯示。
2、仿真模擬實現直流電壓的測量與顯示,可進行四個量程的切換(2V、20V、200V、500V)。
設計介紹
?51單片機簡介
51單片是一種低功耗、高性能CMOS-8位微控制器,擁有靈巧的8位CPU和可編程Flash,使得51單片機為眾多嵌入式控制應用系統(tǒng)提供靈活、高效的解決方案。
本設計所使用的芯片可兼容以下所有的51系列單片機(包括AT系列和STC系列)。
?資料內容
仿真實現(protues8.7)
本設計利用protues8.7軟件實現仿真設計,具體如圖。
程序(Keil5)
本設計利用KEIL5軟件實現程序設計。
主函數如下:
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"); } }
程序運行結果如圖:
全部內容
全部內容如下:
資料鏈接:https://docs.qq.com/doc/DT0ZleG9PZ0NhSWxU
?
-
電壓表
+關注
關注
3文章
318瀏覽量
38871 -
仿真
+關注
關注
50文章
4023瀏覽量
133340 -
51單片機
+關注
關注
273文章
5697瀏覽量
122997 -
數字電壓表
+關注
關注
4文章
183瀏覽量
33041 -
單片機
+關注
關注
0文章
201瀏覽量
16658
發(fā)布評論請先 登錄
相關推薦
評論