能完成测试室内室外温度,并且可以设计报警阈值,
用89c51单片机实现,
程序用操作系统写的,
供大家学习,内容都是原创,
如有不足之地,请多多指教。
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
仿真
程序
单片机源程序如下:
- #include "config.h"
- bit flag1s=0;
- uint threshold=600;//阈值
- void delay(uint x)//us级延时
- {
- while(x--);
- }
- void init_TIM()//定时器初始化
- {
- TMOD=(TMOD&0x0F)|0x10; //初始化定时器
- TH1=0xdc;//20ms
- TL1=0x00;
- TR1=ET1=1;//启动定时器1,开启定时器1中断
- RCAP2H=0x4c;//50ms
- RCAP2L=0x00;
- ET2=TR2=1;//启动定时器2,开启定时器2中断
- EA=1;//总中断打开
- }
- void main0() _task_ 0//任务0
- {
- delay(20000);//上电等待单片机
- init_TIM();//定时器初始化
- beep=1;
- os_create_task(1);//激活任务一
- os_create_task(2);//激活任务二
- os_delete_task(0);//删除任务0
- while(1);
- }
- void TIM1() interrupt 3//定时器1中断
- {
- TH1=0xdc;//20ms
- TL1=0x00;
- if(TC>threshold||TC1>threshold)
- {
- beep=0;
- }
- else
- beep=1;
- }
- void TIM2() interrupt 5//定时器2中断
- {
- static uchar num=0;
- TF2=0;
- num++;
- if(num==20)
- {
- num=0;
- flag1s=1;
- }
- }
复制代码
文件
全部资料51hei下载地址:
温控项目.zip
(166.47 KB, 下载次数: 18)
|