找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 10176|回復(fù): 42
收起左側(cè)

最簡單的單片機(jī)智能水塔控制系統(tǒng)(Proteus仿真+源代碼)

  [復(fù)制鏈接]
回帖獎勵 5 黑幣 回復(fù)本帖可獲得 1 黑幣獎勵! 每人限 1 次(中獎概率 30%)
ID:293363 發(fā)表于 2019-3-8 11:43 | 顯示全部樓層 |閱讀模式
如題所示

講述用單片機(jī)做智能水塔控制系統(tǒng)

下面請各位爺入席就坐,裝13即將開始。

要求:水位達(dá)到最低水位時自動抽水(PNP驅(qū)動,12V繼電器控制)
          無論水位高低,可以人工上水

          達(dá)到最高水位時,電機(jī)自動停止工作
          為了直觀的看到水位,我用了數(shù)碼管和LED來顯示水位。廢話不多說


直接上程序和仿真圖

QQ鎴浘20181201090627.png 0.png

單片機(jī)源程序如下:
  1. #include<reg51.h>
  2. #define uint unsigned int
  3. //定義一個數(shù)組,使數(shù)碼管顯示的數(shù)字和數(shù)組元素的下標(biāo)相等
  4. unsigned char code table[]={0xc0,0xf9,0xa4,0xb0,0x99,         
  5.             0x92,0x82,0xf8,0x80,0x90};
  6. sbit shuiman=P1^0;//水滿
  7. sbit sw5=P1^1;//水位5
  8. sbit sw4=P1^2;//水位4
  9. sbit sw3=P1^3;//水位3
  10. sbit sw2=P1^4;//水位2
  11. sbit sw1=P1^5;//水位1
  12. sbit shougong=P1^6;//手工上水
  13. sbit dianji=P1^7;//電機(jī)控制位
  14. /*延時程序*/
  15. void delayms(uint xms)
  16. {
  17.    uint i,j;
  18.    for(i=xms;i>0;i--)
  19.          for(j=120;j>0;j--);
  20. }

  21. void main()
  22. {
  23.         P0=0xbf;        //開機(jī)顯示“-"
  24.         while(1)
  25.                 {  
  26.               //水滿
  27.                         if(shuiman==0&&sw5==0&&sw4==0&&sw3==0&&sw2==0&&sw1==0)//當(dāng)唯一的閉合一個傳感器單元:水位6時發(fā)生
  28.                         {
  29.                                 dianji=1;//關(guān)電機(jī)
  30.                 P0=table[6];//顯示水位深度:6**** 已滿
  31.                                 delayms(50);//延時一段時間讓數(shù)碼管顯示給人以提示:水已滿
  32.                         }
  33.                                 //水位5
  34.                         if(shuiman==1&&sw5==0&&sw4==0&&sw3==0&&sw2==0&&sw1==0)//當(dāng)唯一的閉合一個傳感器單元:水位5時發(fā)生
  35.                         {
  36.                                 P0=table[5];//顯示水位深度:5
  37.                         }
  38.                         //水位4
  39.                         if(shuiman==1&&sw5==1&&sw4==0&&sw3==0&&sw2==0&&sw1==0)//當(dāng)唯一的閉合一個傳感器單元:水位4時發(fā)生
  40.                         {
  41.                                 P0=table[4];//顯示水位深度:4
  42.                         }
  43.                         //水位3
  44.                         if(shuiman==1&&sw5==1&&sw4==1&&sw3==0&&sw2==0&&sw1==0)//當(dāng)唯一的閉合一個傳感器單元:水位3時發(fā)生
  45.                         {
  46.                                   P0=table[3];//顯示水位深度:5
  47.                         }
  48.                         //水位2
  49.               if(shuiman==1&&sw5==1&&sw4==1&&sw3==1&&sw2==0&&sw1==0)//當(dāng)唯一的閉合一個傳感器單元:水位2時發(fā)生
  50.                         {
  51.                                 P0=table[2];//顯示水位深度:2
  52.                         }
  53.                         //水位低
  54.                         if(shuiman==1&&sw5==1&&sw4==1&&sw3==1&&sw2==1&&sw1==0)//當(dāng)唯一的閉合一個傳感器單元:水位1時發(fā)生
  55.                         {
  56.                                 dianji=0;//開電機(jī)
  57.                         P0=table[1];//顯示水位深度:1
  58.                         }
  59.                         //手工上水
  60.                     if(shougong==0)//當(dāng)按手工上水按鈕時發(fā)生
  61.                         {  
  62.                            if(shuiman==0&&sw5==0&&sw4==0&&sw3==0&&sw2==0&&sw1==0)
  63.                            {
  64.                            dianji=1;
  65.                            }
  66.                         dianji=0;//開電機(jī)
  67.                                 P0=table[0];//顯示0表示手工上水已有反應(yīng)
  68.                                 delayms(800);//延時一段時間讓數(shù)碼管顯示給人以提示:已開始手工上水
  69. ……………………

  70. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼

所有資料51hei提供下載:
水塔自動供水.rar (164.71 KB, 下載次數(shù): 214)


評分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復(fù)

使用道具 舉報

ID:463658 發(fā)表于 2019-3-10 10:59 | 顯示全部樓層
電機(jī)能直接連I/O接口嗎?不需要一個繼電器嗎?
回復(fù)

使用道具 舉報

ID:293363 發(fā)表于 2019-3-14 11:22 | 顯示全部樓層
省略號001 發(fā)表于 2019-3-10 10:59
電機(jī)能直接連I/O接口嗎?不需要一個繼電器嗎?

連了的啊,您在看看圖
回復(fù)

使用道具 舉報

ID:293363 發(fā)表于 2019-3-14 11:25 | 顯示全部樓層
n20028 發(fā)表于 2019-3-11 10:45
流弊!可以發(fā)給我嗎?

發(fā)給您了,您看下。
回復(fù)

使用道具 舉報

ID:489439 發(fā)表于 2019-3-22 10:05 | 顯示全部樓層
非常感謝樓主
回復(fù)

使用道具 舉報

ID:444187 發(fā)表于 2019-3-22 11:02 | 顯示全部樓層
led=Oxfe;led=Oxfe;
         delay(50000);
         delay(50000);led=Oxfe;
         delay(50000);
回復(fù)

使用道具 舉報

ID:555212 發(fā)表于 2019-6-5 03:42 | 顯示全部樓層
代碼全都懂,要我做仿真就做不了了
回復(fù)

使用道具 舉報

ID:563754 發(fā)表于 2019-6-16 18:10 | 顯示全部樓層
厲害啊
回復(fù)

使用道具 舉報

ID:563754 發(fā)表于 2019-6-16 18:11 | 顯示全部樓層
陳潤源home 發(fā)表于 2019-3-14 11:22
連了的啊,您在看看圖

知道啦
回復(fù)

使用道具 舉報

ID:564821 發(fā)表于 2019-6-17 18:02 | 顯示全部樓層
挺好,程序特別詳細(xì)
回復(fù)

使用道具 舉報

ID:565736 發(fā)表于 2019-6-18 15:02 | 顯示全部樓層
真棒要好好學(xué)習(xí)一下
回復(fù)

使用道具 舉報

ID:571295 發(fā)表于 2019-6-26 00:51 | 顯示全部樓層
乖乖,這個還是不會
回復(fù)

使用道具 舉報

ID:506687 發(fā)表于 2019-7-23 11:12 | 顯示全部樓層
有朋友做出來的嗎?
回復(fù)

使用道具 舉報

ID:640789 發(fā)表于 2019-11-12 21:50 | 顯示全部樓層
參考一下
回復(fù)

使用道具 舉報

ID:460753 發(fā)表于 2019-11-16 17:15 | 顯示全部樓層
真棒要好好學(xué)習(xí)一下
回復(fù)

使用道具 舉報

ID:658482 發(fā)表于 2019-12-8 13:34 | 顯示全部樓層
我想問一下數(shù)碼管旁邊的 respack-8的排阻好像沒什么作用,是不是有點(diǎn)畫蛇添足了?
回復(fù)

使用道具 舉報

ID:293363 發(fā)表于 2020-2-8 11:50 | 顯示全部樓層
12192199197 發(fā)表于 2019-12-8 13:34
我想問一下數(shù)碼管旁邊的 respack-8的排阻好像沒什么作用,是不是有點(diǎn)畫蛇添足了?

請仔細(xì)看看51的使用手冊,看看51的內(nèi)部結(jié)構(gòu)
回復(fù)

使用道具 舉報

ID:697549 發(fā)表于 2020-2-24 17:47 | 顯示全部樓層
加油加油
回復(fù)

使用道具 舉報

ID:426203 發(fā)表于 2020-4-3 13:52 | 顯示全部樓層
請問下仿真里的前幾個按鍵怎么在仿真里體現(xiàn)的?
回復(fù)

使用道具 舉報

ID:775632 發(fā)表于 2020-6-11 12:47 | 顯示全部樓層
非常感謝
回復(fù)

使用道具 舉報

ID:776124 發(fā)表于 2020-6-11 13:48 | 顯示全部樓層
謝謝樓主非常詳細(xì)
回復(fù)

使用道具 舉報

ID:776304 發(fā)表于 2020-6-11 16:14 | 顯示全部樓層
做的挺好的
回復(fù)

使用道具 舉報

ID:773947 發(fā)表于 2020-6-11 17:37 | 顯示全部樓層
感謝樓主
回復(fù)

使用道具 舉報

ID:143767 發(fā)表于 2020-6-13 13:38 | 顯示全部樓層
這個比較實(shí)用
回復(fù)

使用道具 舉報

ID:560474 發(fā)表于 2020-6-13 14:01 | 顯示全部樓層
厲害啊
回復(fù)

使用道具 舉報

ID:778090 發(fā)表于 2020-6-13 14:44 | 顯示全部樓層
新手入門,有人帶帶嗎
回復(fù)

使用道具 舉報

ID:780871 發(fā)表于 2020-6-16 13:51 | 顯示全部樓層
感謝樓主
回復(fù)

使用道具 舉報

ID:712942 發(fā)表于 2020-6-18 09:45 | 顯示全部樓層
12192199197 發(fā)表于 2019-12-8 13:34
我想問一下數(shù)碼管旁邊的 respack-8的排阻好像沒什么作用,是不是有點(diǎn)畫蛇添足了?

p0口為低電平,連上上拉電阻為高電平
回復(fù)

使用道具 舉報

ID:781759 發(fā)表于 2020-6-24 11:20 | 顯示全部樓層
感謝樓主
回復(fù)

使用道具 舉報

ID:787812 發(fā)表于 2020-6-27 22:09 | 顯示全部樓層
感謝分享呦
回復(fù)

使用道具 舉報

ID:793756 發(fā)表于 2020-6-30 13:30 | 顯示全部樓層
好,真的好hsjhdjsh
回復(fù)

使用道具 舉報

ID:74868 發(fā)表于 2023-6-30 08:51 | 顯示全部樓層
程序很實(shí)用,值得借鑒
回復(fù)

使用道具 舉報

ID:1033765 發(fā)表于 2024-6-6 16:44 | 顯示全部樓層
好厲害,學(xué)到了!
回復(fù)

使用道具 舉報

ID:1063561 發(fā)表于 2024-6-7 06:22 | 顯示全部樓層
代碼全都懂,自己做就不會了
回復(fù)

使用道具 舉報

ID:1122580 發(fā)表于 2024-6-7 12:38 | 顯示全部樓層
大佬,厲害厲害,多多益善。
回復(fù)

使用道具 舉報

ID:902092 發(fā)表于 2024-6-12 15:58 | 顯示全部樓層
感謝感謝,能用上
回復(fù)

使用道具 舉報

ID:17585 發(fā)表于 2024-6-13 12:21 | 顯示全部樓層
感謝,實(shí)用
回復(fù)

使用道具 舉報

ID:1124287 發(fā)表于 2024-6-13 17:46 | 顯示全部樓層
P0口加上拉電阻沒問題啊
回復(fù)

使用道具 舉報

ID:1113566 發(fā)表于 2024-6-14 08:25 | 顯示全部樓層
學(xué)習(xí)仿真一下
回復(fù)

使用道具 舉報

ID:291549 發(fā)表于 2024-6-17 10:37 | 顯示全部樓層
解壓文件夾還有個笑臉,用心了。
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表