久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3100|回復: 1
收起左側

單片機水位(上下限)監測報警、斷電24C2存儲報警器程序仿真(1路模擬量,存儲)

[復制鏈接]
ID:64696 發表于 2021-9-16 08:36 | 顯示全部樓層 |閱讀模式
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei截圖20210728012429.png

單通道模擬量報警
比如:酒精報警器,檢測濃度,然后濃度過限報警;通過按鍵設置報警值,同時報警值通過24C02保存

當然也可以改成別的名字,比如:甲烷報警、一氧化碳報警、天然氣報警等。

程序流程圖:
51hei.png

元件    型號
單片機    AT89C51
電容    10uf
電容    30pf
晶振    12MHZ
電阻    10k
按鈕   
存儲器    24C02
模數芯片    ADC0832
電位器    1k
電阻    1k
三極管    PNP
蜂鳴器    有源
顯示器    LCD1602
排阻    10k

單片機源程序如下:
  1. #include <reg51.h>
  2. #include <ADC0832.h>
  3. #include"i2c.h"
  4. #include "lcd1602.h"
  5. #define uchar unsigned char
  6. #define uint unsigned int

  7. sbit k1=P1^0;
  8. sbit k2=P1^1;
  9. sbit beep=P2^3;
  10. uchar disp1[]="Alcohol:000";
  11. uchar disp2[]="limit:050";
  12. uchar Alcohol=0;//酒精濃度
  13. uchar limit =50;//報警閥值

  14. uchar k=0;
  15. void delay(uint i) //延時
  16. {
  17.         while(i--);
  18. }

  19. void main()
  20. {
  21.         TMOD|=0X01;
  22.         TH0=0X3C;
  23.         TL0=0XB0;       
  24.         ET0=1;//打開定時器0中斷允許
  25.         EA=1;//打開總中斷
  26.         TR0=1;//打開定時器
  27.         init_1602();
  28.         limit=At24c02Read(0);//初始化存儲
  29.         if(limit>200)
  30.         {
  31.                 limit=50;
  32.                 At24c02Write(0,limit);
  33.                 delay(10000);
  34.         }
  35.         write_string(1,0,disp1); //顯示
  36.         write_string(2,2,disp2);
  37.         while(1)
  38.         {
  39.                 if(Alcohol>limit)//報警判斷
  40.                         beep=0;
  41.                 else
  42.                         beep=1;
  43.                 if(!k1)//加
  44.                 {
  45.                         if(limit<200)
  46.                                 limit++;
  47.                         At24c02Write(0,limit);
  48.                         delay(10000);
  49.                         while(!k1);
  50.                 }
  51.                 if(!k2)//減
  52.                 {
  53.                         if(limit>0)
  54.                                 limit--;
  55.                         At24c02Write(0,limit);
  56.                         delay(10000);
  57.                         while(!k2);
  58.                 }
  59.         }
  60. }
  61. void Timer0() interrupt 1//定時器中斷
  62. {
  63.         TH0=0X3C;
  64.         TL0=0XB0;
  65.         if(k<10)
  66.                 k++;
  67.         else
  68.         {
  69.                 k=0;
  70.                 Alcohol=ADC();//測酒精
  71.                 disp1[8]=Alcohol/100+0x30;
  72.                 disp1[9]=Alcohol%100/10+0x30;
  73.                 disp1[10]=Alcohol%10+0x30;
  74.                 disp2[6]=limit/100+0x30;
  75.                 disp2[7]=limit%100/10+0x30;
  76.                 disp2[8]=limit%10+0x30;
  77.                 write_string(1,0,disp1); //顯示
  78.                 write_string(2,2,disp2);
  79.         }
  80. }
復制代碼
51hei截圖20210728012610.png
所有資料51hei附件下載,注意仿真只能用Proteus7.8版本打開dsn文件:
報警器(1路模擬量,存儲).rar (617.99 KB, 下載次數: 66)

評分

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

查看全部評分

回復

使用道具 舉報

ID:795427 發表于 2021-9-17 16:30 | 顯示全部樓層
可以在proteus8.9上仿真,但是需要將ADC083X.dll文件替換成proteus7,舊版本的文件,再進行仿真就可以了。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲日日夜夜 | 精品国产乱码久久久久久影片 | 国产视频久久 | 亚洲男女视频在线观看 | 久久久精品久久 | 成人福利在线 | 国产一区 | 欧美日韩亚洲国产综合 | 神马影院一区二区三区 | 亚洲精品欧美 | 成人3d动漫一区二区三区91 | 超碰伊人久久 | 国产电影一区二区在线观看 | 午夜视频导航 | 综合久久综合久久 | 日韩免费高清视频 | 福利视频网址 | 色一级| 亚洲福利一区二区 | 亚洲成人av在线播放 | 黄色一级网 | 在线观看免费国产 | 亚洲精品电影在线观看 | 久久亚洲一区二区三区四区 | 91在线电影| 久久av一区 | 黄色av一区 | 日本特黄特色aaa大片免费 | www.日日干 | 午夜伦4480yy私人影院 | 久久久久久久91 | 成年视频在线观看福利资源 | 免费成人在线网 | www精品| 国产乱人伦 | 欧美激情久久久 | 伊人手机在线视频 | 午夜影院黄 | 中文字幕一区二区三区在线乱码 | 九九热在线观看 | 中文字幕第二区 |