欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機水塔控制系統+proteus仿真+keil源程序 [打印本頁]

作者: 草棚    時間: 2018-5-28 10:10
標題: 單片機水塔控制系統+proteus仿真+keil源程序
單片機水塔控制系統仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. #include<reg51.h>
  2. //定義一個數組,使數碼管顯示的數字和數組元素的下標相等
  3. unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
  4.                             0x6d,0x7d,0x07,0x7f,0x6f};
  5. sbit shuiman=P1^0;//水滿
  6. sbit sw5=P1^1;//水位5
  7. sbit sw4=P1^2;//水位4
  8. sbit sw3=P1^3;//水位3
  9. sbit sw2=P1^4;//水位2
  10. sbit sw1=P1^5;//水位1
  11. sbit shougong=P1^6;//手工上水
  12. sbit dianji=P1^7;//電機控制位
  13. sbit state=P3^7;//電機工作指示
  14. /*延時程序*/
  15. void delay02s(void)
  16. {
  17.   unsigned char i,j,k;
  18.   for(i=100;i>0;i--)
  19.   for(j=100;j>0;j--)
  20.   for(k=248;k>0;k--);
  21. }
  22. main()
  23. {
  24.         P0=0;
  25.         while(1)
  26.                 {  /*************************傳感器是設計的一次只能觸發一個傳感器單?****************************
  27.               //水滿
  28.                         if(shuiman==0&&sw5==1&&sw4==1&&sw3==1&&sw2==1&&sw1==1)//當唯一的閉合一個傳感器單元:水位6時發生
  29.                         {
  30.                                 dianji=1;//關電機
  31.                                 state=1;//電機工作指示燈熄滅
  32.             P0=table[6];//顯示水位深度:6**** 已滿
  33.                                 delay02s();//延時一段時間讓數碼管顯示給人以提示:水已滿
  34.                         }
  35.                                 //水位5
  36.                         if(shuiman==1&&sw5==0&&sw4==1&&sw3==1&&sw2==1&&sw1==1)//當唯一的閉合一個傳感器單元:水位5時發生
  37.                         {
  38.                                 P0=table[5];//顯示水位深度:5
  39.                         }
  40.                         //水位4
  41.                         if(shuiman==1&&sw5==1&&sw4==0&&sw3==1&&sw2==1&&sw1==1)//當唯一的閉合一個傳感器單元:水位4時發生
  42.                         {
  43.                                 P0=table[4];//顯示水位深度:4
  44.                         }
  45.                         //水位3
  46.                         if(shuiman==1&&sw5==1&&sw4==1&&sw3==0&&sw2==1&&sw1==1)//當唯一的閉合一個傳感器單元:水位3時發生
  47.                         {
  48.                                   P0=table[3];//顯示水位深度:5
  49.                         }
  50.                         //水位2
  51.               if(shuiman==1&&sw5==1&&sw4==1&&sw3==1&&sw2==0&&sw1==1)//當唯一的閉合一個傳感器單元:水位2時發生
  52.                         {
  53.                                 P0=table[2];//顯示水位深度:2
  54.                         }
  55.                         //水位低
  56.                         if(shuiman==1&&sw5==1&&sw4==1&&sw3==1&&sw2==1&&sw1==0)//當唯一的閉合一個傳感器單元:水位1時發生
  57.                         {
  58.                                 dianji=0;//開電機
  59.                                 state=0;//電機工作指示燈打開
  60.                         P0=table[1];//顯示水位深度:1
  61.                         }
  62.                         //手工上水
  63.                     if(shougong==0)//當按手工上水按鈕時發生
  64.                         {  
  65.                       dianji=0;//開電機
  66.                                 state=0;//電機工作指示燈打開
  67.                                 P0=table[0];//顯示0表示手工上水已有反應
  68.                                 delay02s();//延時一段時間讓數碼管顯示給人以提示:已開始手工上水
  69.                         }
  70.                
  71.                 }
  72.          
  73. }
復制代碼

所有資料51hei提供下載:
單片機水塔控制系統.zip (38.82 KB, 下載次數: 37)



作者: refus    時間: 2018-6-24 11:07
此分享證明有用




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1