找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9022|回复: 10
收起左侧

智能温控器单片机源程序 热敏电阻+ADC0809检测 Proteus仿真

  [复制链接]
ID:108102 发表于 2017-4-12 11:47 | 显示全部楼层 |阅读模式
51单片机做的智能温控器设计:ADC0809,proteus与程序,用一个可变电阻代替热敏电阻来实现仿真控制.
下面是仿真原理图:
0.png
0.png

51单片机源程序:
  1. //设计要求:智能温控设
  2. //用ADC0809检测温度,如果大于设定温度则断开回路,小于
  3. //则进行加热,等于设定温度则保持不变
  4. //其中分别用数码管显示设定温度与实际温度
  5. //用两个按键进行加减设定温度
  6. //收获ADC0809高位应该与单片机低位连接
  7. //在读取温度时必须先将P1口复位为1,不然会发生短路现象
  8. #include<reg51.h>
  9. #include<intrins.h>
  10. #define Duan P0

  11. sbit wei1=P2^0;//数码管选通
  12. sbit wei2=P2^1;
  13. sbit wei3=P2^2;
  14. sbit wei4=P2^3;
  15. sbit Relay=P2^4;//控制电路继电器闭合,使加热
  16. sbit Start=P2^5;//AD0809开始转化端口
  17. sbit EOC=P2^6; //ADC0809转化标志口
  18. void System_Init();          //系统初始化
  19. unsigned char  M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//数码管段位
  20. char shezhi=50;
  21. int val;//转化值
  22. char i=0;
  23. void delay1ms(void)   //误差 0us
  24. {
  25.     unsigned char a,b,c;
  26.     for(c=1;c>0;c--)
  27.         for(b=142;b>0;b--)
  28.             for(a=2;a>0;a--);
  29. }

  30. void main()
  31. {
  32.   System_Init();
  33.   while(1)
  34.   {
  35.     P1=0xff;
  36.     Start=0;
  37.     Start=1;  //开始转化
  38.     _nop_();
  39.     Start=0;       
  40.     _nop_();
  41.     while(!EOC);   //转化结束
  42.         val=(P1*100/256); //量程转化
  43.         if(val>shezhi)//是否继续加热
  44.         Relay=0;
  45.         else
  46.         Relay=1;
  47.   }
  48. }
  49. void System_Init()
  50. {
  51.   TMOD=0x01;
  52.   EA=1;
  53.   ET0=1;
  54.   TH0=(65535-5000)/256;
  55.   TL0=(65535-5000)%256;
  56.   TR0=1;
  57.   EX0=1;
  58.   EX1=1;
  59.   

  60. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码

0.png
全部资料下载(仿真工程文件和源码):
智能温控器.zip (84.57 KB, 下载次数: 260)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:161033 发表于 2017-6-4 23:09 | 显示全部楼层
感谢了。
回复

使用道具 举报

ID:249105 发表于 2017-11-14 13:27 | 显示全部楼层
谢谢前辈,学习到了
回复

使用道具 举报

ID:315608 发表于 2018-4-24 19:09 | 显示全部楼层
非常感谢楼主的奉献
回复

使用道具 举报

ID:314339 发表于 2018-4-24 20:35 来自手机 | 显示全部楼层
谢谢楼主分享
回复

使用道具 举报

ID:566250 发表于 2019-6-22 11:37 来自手机 | 显示全部楼层
厉害厉害
回复

使用道具 举报

ID:282095 发表于 2019-6-23 06:45 | 显示全部楼层
个人感觉热敏电阻可以采用变阻箱进行替换
回复

使用道具 举报

ID:566250 发表于 2019-6-23 17:54 来自手机 | 显示全部楼层
厉害  受教了真的是
回复

使用道具 举报

ID:60739 发表于 2020-2-27 15:12 | 显示全部楼层
感谢 楼主 非常有用
回复

使用道具 举报

ID:427818 发表于 2020-5-17 12:08 | 显示全部楼层
感谢分享
回复

使用道具 举报

ID:768915 发表于 2020-6-4 23:20 | 显示全部楼层
大神,上面的代码还差多少
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表