全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/*/ DHT22使用范例/单片机 : AT89S52 或 STC89C52RC/*/#include #include /typedef unsigned char U8; /* defined for unsigned 8-bits integer variable无符号8位整型变量 */typedef signed char S8; /* defined for signed 8-bits integer variable有符号8位整型变量 */typedef unsigned int U16; /* defined for unsigned 16-bits integer variable无符号16位整型变量 */typedef signed int S16; /* defined for signed 16-bits integer variable有符号16位整型变量 */typedef unsigned long U32; /* defined for unsigned 32-bits integer variable无符号32位整型变量 */typedef signed long S32; /* defined for signed 32-bits integer variable有符号32位整型变量 */typedef float F32; /* single precision floating point variable(32bits) 单精度浮点数(32位长度) */typedef double F64; /* double precision floating point variable(64bits) 双精度浮点数(64位长度) */#define uchar unsigned char#define uint unsigned int#define Data_0_time 4/-/-IO口定义区-/-/sbit P2_0 = P20 ;sbit P2_1 = P21 ;sbit P2_2 = P22 ;sbit P2_3 = P23 ;/-/-定义区-/-/U8 U8FLAG,k;U8 U8count,U8temp;U8 U8T_data_H,U8T_data_L,U8RH_data_H,U8RH_data_L,U8checkdata;U8U8T_data_H_temp,U8T_data_L_temp,U8RH_data_H_temp,U8RH_data_L_temp,U8checkdata_temp;U8 U8comdata;U8 outdata5; /定义发送的字节数U8 indata5;U8 count, count_r=0;U8 str5=RS232;U16 U16temp1,U16temp2;SendData(U8 *a)outdata0 = a0;outdata1 = a1;outdata2 = a2;outdata3 = a3;outdata4 = a4;count = 1;SBUF=outdata0;void Delay(U16 j) U8 i;for(;j0;j-)for(i=0;i27;i+);void Delay_10us(void)U8 i;i-;i-;i-;i-;i-;i-;void COM(void)U8 i;for(i=0;i8;i+)U8FLAG=2;while(!P2_0)&U8FLAG+);Delay_10us();Delay_10us();Delay_10us();U8temp=0;if(P2_0)U8temp=1;U8FLAG=2;while(P2_0)&U8FLAG+);/超时则跳出for循环if(U8FLAG=1)break;/判断数据位是0还是1/ 如果高电平高过预定0高电平值则数据位为 1U8comdata=1;U8comdata|=U8temp; /0/rof/-/-湿度读取子程序 -/-/-以下变量均为全局变量-/-温度高8位= U8T_data_H-/-温度低8位= U8T_data_L-/-湿度高8位= U8RH_data_H-/-湿度低8位= U8RH_data_L-/-校验 8位 = U8checkdata-/-调用相关子程序如下-/- Delay();, Delay_10us();,COM();/-void RH(void)/主机拉低18msP2_0=0;Delay(5);P2_0=1;/总线由上拉电阻拉高 主机延时20usDelay_10us();Delay_10us();Delay_10us();Delay_10us();/主机设为输入 判断从机响应信号P2_0=1;/判断从机是否有低电平响应信号 如不响应则跳出,响应则向下运行if(!P2_0)/T !U8FLAG=2;/判断从机是否发出 80us 的低电平响应信号是否结束while(!P2_0)&U8FLAG+);U8FLAG=2;/判断从机是否发出 80us 的高电平,如发出则进入数据接收状态while(P2_0)&U8FLAG+);/数据接收状态COM();U8RH_data_H_temp=U8comdata;COM();U8RH_data_L_temp=U8comdata;COM();U8T_data_H_temp=U8comdata;COM();U8T_data_L_temp=U8comdata;COM();U8checkdata_temp=U8comdata;P2_0=1;/数据校验U8temp=(U8T_data_H_temp+U8T_data_L_temp+U8RH_data_H_temp+U8RH_data_L_temp);if(U8temp=U8checkdata_temp)if(1)U8RH_data_H=U8RH_data_H_temp;U8RH_data_L=U8RH_data_L_temp;U8T_data_H=U8T_d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社区商业中心建设与管理岗位招聘专业问题集锦
- 绿色社区发展策略
- 港口电气技师培训课程设计
- 生产部经理精益生产与智能制造实施方案
- 网络安全培训资料网络安全意识与防护策略
- 2025陕西安康镇坪县飞地经济发展工作领导小组办公室公益性岗位选聘工作人员考试笔试备考试题及答案解析
- 2026年荆州职业技术学院单招综合素质考试题库附答案详解
- 2026年辽宁生态工程职业学院单招综合素质考试题库及答案详解1套
- 2026年四川航天职业技术学院单招职业倾向性测试题库及完整答案详解1套
- 2026年西安海棠职业学院单招职业技能考试题库带答案详解
- 油漆车间年终总结
- 2025年甘肃省水务投资集团有限公司招聘企业管理人员笔试考试参考试题及答案解析
- 2025年10月自考07180广播播音主持试题及答案
- 乡村康养项目申请书
- 2025四川绵阳科发置地有限公司项目聘用人员招聘9人备考题库及答案解析(夺冠)
- 私人奴隶协议书范本
- GB/T 17774-2025通风机尺寸
- 2025年综合物流园区建设可行性研究报告及总结分析
- 兴国县2025年招聘城市社区专职网格员【23人】考试参考题库附答案解析
- 承包砂石场合同范本
- 2025年杭州萧山技师学院招聘职业教育合同制教师28人笔试考试备考试题及答案解析
评论
0/150
提交评论