仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
部分程序源码(完整源码见附件)
- void Init_Timer0(void)
- {
- TMOD |= 0x01; //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响
- EA=1; //总中断打开
- ET0=1; //定时器中断打开
- TR0=1; //定时器开关打开
- }
- void main()
- {
- Init_Timer0();//初始化定时器
- while(1)
- {
- Hum=adc0832(0);
- if(Setflag==0)Display_num2(Hum,fresh);//显示温度
- if(Setflag==1)Display_num2(Setsdup,fresh);//显示设定的值
- if(Setflag==2)Display_num2(Setsddown,fresh);//显示设定的值
- if(Hum>Setsdup)
- {
- buzz=0;
- p=0;
- j=1;
- }
- else if(Setsddown>Hum)
- {
- buzz=0;
- j=0;
- p=1;
- }
- else
- {
- buzz=1;
- j=1;
- p=1;
- }
- }
- }
- void Timer0_isr(void) interrupt 1
- {
- static unsigned char key1num;//按键一按下标志
- static unsigned char key2num;//按键二按下标志
- static unsigned char key3num;//按键三按下标志
- static unsigned char num;
- TH0=(65536-20000)/256; //重新赋值 2ms
- TL0=(65536-20000)%256;
-
- num++;
- if(num>18)
- {
- num=0;
- if(Setflag)fresh=!fresh;
- }
复制代码 51单片机源码和仿真文件
粮仓湿度检测.zip
(81.13 KB, 售价: 2 E币)
【必读】版权免责声明
1、本主题所有言论和内容纯属会员个人意见,与本论坛立场无关。2、本站对所发内容真实性、客观性、可用性不做任何保证也不负任何责任,网友之间仅出于学习目的进行交流。3、对提供的数字内容不拥有任何权利,其版权归原著者拥有。请勿将该数字内容进行商业交易、转载等行为,该内容只为学习所提供,使用后发生的一切问题与本站无关。 4、本网站不保证本站提供的下载资源的准确性、安全性和完整性;同时本网站也不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害。 5、本网站所有软件和资料均为网友推荐收集整理而来,仅供学习用途使用,请务必下载后两小时内删除,禁止商用。6、如有侵犯你版权的,请及时联系我们(电子邮箱1370723259@qq.com)指出,本站将立即改正。
|