DHT11传感器STC12单片机程序_第1页
DHT11传感器STC12单片机程序_第2页
DHT11传感器STC12单片机程序_第3页
DHT11传感器STC12单片机程序_第4页
DHT11传感器STC12单片机程序_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

include include include sbit DHT P0 0 管脚定义 DHT11 总线输入输出 uchar data byte uchar Tem Z Tem X Hum Z Hum X Check void LCD Display 声明 LCD Display 液晶显示函数 void Rec DHT 声明 Rec DHT DHT11 接收数据函数 void receive 主函数 void main lcd init while 1 Rec DHT LCD Display delayms 1000 延时函数 延时 ms void delays 12 000MHz uchar i j k i 1 j 234 k 113 do do while k while j while i 延时 ius void delay10us uchar i for i 0 i 6 i nop nop nop nop nop nop nop nop 主机发出开始信号 void DHT11 Start DHT 1 delay10us DHT 0 delays 保持电平时间大于 18ms 延时 20ms DHT 1 delay10us 延迟等待 20 40us 延时 20us delay10us delay10us delay10us DHT 1 拉高等待 DHT11 响应 DHT11 接收一个字节数据 uchar receive data uchar i temp count data byte 0 for i 0 i 8 i count 2 while DHT 等待 50us 低电平结束 delay10us 等待 40us 高电平 后判断电平高低 高 DHT 为 1 低 DHT 为 0 delay10us delay10us delay10us temp 0 if DHT 1 temp 1 DHT 为高 1 位为 1 count 2 while DHT 等待 DHT 高电平结束 if count 1 break DHT 为低 0 位为 0 data byte 35 write 注意防署 else if Tem Z70 write 注意除湿 else if Hum Z0 i 单片机晶振频率为 12MHZ for j 120 j 0 j 单片机 12 倍速度运行 12864 写命令 void write com uchar com uchar i uchar i data i data 0 xf8 11111000 写指令 0 cs 1 sclk 0 for i 0 i 8 i sid bit i data sclk 0 sclk 1 i data i data 1 i data com i data for i 0 i 8 i sid bit i data sclk 0 sclk 1 i data i data 1 i data com i data i data 4 for i 0 i 8 i sid bit i data sclk 0 sclk 1 i data i data 1 cs 0 delayms 10 12864 写数据 void write data uchar date uchar i uchar i data i data 0 xfa 写数据 cs 1 for i 0 i 8 i sid bit i data sclk 0 sclk 1 i data i data 1 i data date i data for i 0 i 8 i sid bit i data sclk 0 sclk 1 i data i data 1 i data date i data i data 4 for i 0 i 8 i sid bit i data sclk 0 sclk 1 i data i data 1 cs 0 delayms 10 lcd12864 初始化 void lcd init psb 0 液晶屏为串行数据传输模式 rst 0 复位 delayms 2 rst 1 delayms 2 write com 0 x30 基本指令 扩充指令为 34H delayms 4 write com 0 x02 清除 ddram delayms 4 write com 0 x0c 显示开 关光标 delayms 4 write com 0 x01 清屏 delayms 4 设定显示位置 x y 为 12864 轴坐标 x 1 4 y 1 16 void lcd pos uchar x uchar y uchar pos if x 1 x 0 x80 x 为第几行 1 4 else if x 2 x 0 x90 else if x 3 x 0 x88 else if x 4 x 0 x98 pos x y 1 write com pos 指定位置显示任意文字 字符 void write uchar str uchar i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论