新闻  |   论坛  |   博客  |   在线研讨会
天热了,做个温度,湿度计(附源程序)
ysjabcd | 2012-07-22 11:28:27    阅读:1144   发布文章

/* 此显示程序适用于自制温湿度计P0做段选,P2.1做wei1 P2.2做wei2 P2.3做wei3 P2.6做wei4 I/O为P2.0 将显示扫描移到定时器内运行,每次扫描时间相同,解决了闪烁现象,同时通过调整扫描时间,做到虚拟PWM调光功能 3.7脚为检测脚,加下拉光敏电阻,若为低电平认为白天,亮度高,反之认为黑夜,亮度低*/ #include #include typedef unsigned char U8; typedef unsigned int U16; U8 code table[]={ // 此处为共阳码表 0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e}; sbit P2_0 = P2^0 ; sbit wei1 = P2^1 ; sbit wei2 = P2^2; sbit wei3 = P2^3 ; sbit wei4 = P2^6 ; sbit dian = P2^4 ;//温度与湿度之间显示点 sbit text = P3^7; //接光敏电阻 unsigned int a,b; U8 U8FLAG,U8temp; U8 shidu_shi,shidu_ge,wendu_shi,wendu_ge; U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata; U8 U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp; U8 U8comdata; void Delay(U16 z) { U8 x,y; for(x=z;x0;x--) for(y=40;y0;y--); } void Delay_10us(void) { U8 i; i--; i--; i--; i--; i--; i--; i--; i--; i--; i--; i--; i--; i--; i--; } void COM(void) { U8 i; for(i=0;i

*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客