当前位置: 首页 > news >正文

wordpress文章对齐放心网站推广优化咨询

wordpress文章对齐,放心网站推广优化咨询,专业设计自学网站,律师事务所网站 备案第七章、DHT11: 单总线协!议 常见问题 1、DHT11是什么 ?有什么特性 ? 2、单总线协议是什么 ?原理 ?DHT11的单总线协议的组成 ? ## 1、DHT11定义 单总线协议是一种用于在多个设备之间进行通信的协议,所有…

第七章、DHT11: 单总线协!议

在这里插入图片描述
在这里插入图片描述

常见问题
1、DHT11是什么 ?有什么特性 ?
2、单总线协议是什么 ?原理 ?DHT11的单总线协议的组成 ?
## 1、DHT11定义 单总线协议是一种用于在多个设备之间进行通信的协议,所有设备共享同一条数据线(总线),通过特定的时序和信号来区分不同设备的通信。

原理:

单总线协议通过在同一条数据线上发送和接收数据,利用时序控制和信号电平来实现设备之间的通信。每个设备在总线上都有唯一的地址,主设备通过发送特定的命令来选择与之通信的从设备。

DHT11温湿度传感器使用单总线协议进行数据传输,其协议主要包括以下几个部分:

起始信号:主设备向DHT11发送一个起始信号,持续约18毫秒,表示开始通信。

应答信号:DHT11在接收到起始信号后,发送一个应答信号,持续约20-40微秒,表示准备好发送数据。

数据传输:DHT11通过单总线发送40位数据,包括湿度和温度信息。每位数据由一个高电平和一个低电平组成,具体时长决定了数据位的值(0或1)。

校验位:最后,DHT11发送一个校验位,用于验证数据的完整性。

2、微秒延时在其中的作用 ?

时序控制:在数据传输过程中,微秒级的延时确保了主设备和从设备之间的时序同步,避免数据丢失或错误。

信号稳定:在发送和接收信号之间的延时可以确保信号在总线上稳定,避免由于信号抖动导致的误读。

数据完整性:通过精确控制延时,可以确保每一位数据的发送和接收都在预定的时间窗口内完成,从而提高数据的完整性和可靠性。

3、如何实现微秒延时 ?

1.使用循环延时

通过空循环来实现延时,适用于简单的延时需求,但不够精确。

void delay_us(unsigned int us) {for (unsigned int i = 0; i < us; i++) {// 根据具体的系统时钟频率调整循环次数for (volatile int j = 0; j < 10; j++);
}   
}

2. 使用定时器

使用硬件定时器可以实现更精确的延时。

void delay_us(unsigned int us) {    // 配置定时器TIM2->PSC = 72 - 1; // 预分频,假设系统时钟为72MHzTIM2->ARR = us;     // 设置自动重装载寄存器TIM2->CNT = 0;      // 清零计数器TIM2->CR1 |= TIM_CR1_CEN; // 启动定时器while (!(TIM2->SR & TIM_SR_UIF)); // 等待更新中断标志位TIM2->SR &= ~TIM_SR_UIF; // 清除更新中断标志位  }

3. 使用系统时钟

如果系统支持,使用系统时钟的延时函数(如 HAL_Delay())可以实现毫秒级延时,结合其他方法实现微秒级延时。

4. 使用专用延时库

一些嵌入式开发环境提供了专用的延时库,可以直接调用。

注意事项:

精度:使用循环延时时,延时的精度受编译器优化和系统时钟频率影响,可能不够准确。

中断:在延时期间,可能会影响中断的响应,特别是使用循环延时时。

系统负载:在高负载情况下,延时可能会受到影响,使用定时器通常更可靠。



4、DHT11

(本质也是一个滑动变阻器,把外界的环境信息转化成电压值,内部的一个高级一点的芯片把电压值转化成ADC,又通过内部的计算,把这个转化成十进制)

检测外部温度/湿度信号,当有数据后,

会通过某种通讯协议,发送给主设备,G030拿到数据后自己分析,通过公式转化得到温度和湿度。这是一种传感器;;另一种传感器是DHT11内部直接转化,得到当前的温度和湿度,再传给G030,节省了一步计算(也就是节省了一部分性能)

三根引脚,第一根是VCC,3.3V/5V 第三根是GND(0V),中间的一根是Data数据线,默认使用单总线协议,这是一种通讯方式;

5、通讯的分类

单工/全双工/半双工 串行/并行 同步/异步

单总线协议的一般形式:

主机:发送开始信号(18ms的低电平)

从机:给出一个反馈(响应信号是一个低电平,低电平的时间是30us)

从机:发送数据给主机(温度/湿度)

正常数据都由0/1组成,而这里0:由一段电平组成,就是20us的低电平和50us的高电平认定为0; 1由一段电平组成—50us的低电平,50us的高电平-----单总线只有一根线,不参考GND的数据的发送,核心点在于高低电平的时长

主机:停止信号

**

6、实验

**
移植步骤

1、写项目框架: printf移植框架

2、 移植 dht11 的 .c/.h 到项目中

3、 在keil中 添加 dht11.c 文件

4、 增加定时器14,写微秒延时函数

5、确定GPIO_CLK时钟被打开(开启PA8 输出模式)

6、 DTH11单总线协议

开始+响应+4字节数据+1字节校验

毫秒级延时 —》 tim14

// DHT11代码移植

void delay_us(uint16_t nus){    
//  DHT11 微秒延时__HAL_TIM_SetCounter(&htim14,0);__HAL_TIM_ENABLE(&htim14);while( __HAL_TIM_GetCounter(&htim14)< nus);__HAL_TIM_DISABLE(&htim14);}//  核心代码FS_DHT11_Init();              uint8_t humiH,humiL,tempH,tempL;while (1){
DHT11_Read_Data(&humiH,&humiL,&tempH,&tempL);printf("湿度:%d.%d    温度:%d.%d \r\n",humiH,humiL,tempH,tempL);HAL_Delay(1000);}

文章转载自:
http://pyjamas.c7512.cn
http://communique.c7512.cn
http://compelled.c7512.cn
http://corrugate.c7512.cn
http://ejaculate.c7512.cn
http://zonal.c7512.cn
http://timeous.c7512.cn
http://vermicule.c7512.cn
http://sulphurweed.c7512.cn
http://negotiability.c7512.cn
http://angor.c7512.cn
http://predatory.c7512.cn
http://pardonably.c7512.cn
http://torricellian.c7512.cn
http://spongoid.c7512.cn
http://mitoclasic.c7512.cn
http://tortilla.c7512.cn
http://foreverness.c7512.cn
http://caesaropapist.c7512.cn
http://commandment.c7512.cn
http://allantoin.c7512.cn
http://milwaukee.c7512.cn
http://abstinent.c7512.cn
http://monazite.c7512.cn
http://counterdeclaration.c7512.cn
http://gangboard.c7512.cn
http://beerburst.c7512.cn
http://aleksandropol.c7512.cn
http://modificand.c7512.cn
http://manutius.c7512.cn
http://considerately.c7512.cn
http://seizing.c7512.cn
http://oap.c7512.cn
http://hoyden.c7512.cn
http://mannheim.c7512.cn
http://septostomy.c7512.cn
http://handcraft.c7512.cn
http://coattail.c7512.cn
http://blueweed.c7512.cn
http://demulsify.c7512.cn
http://meltable.c7512.cn
http://rhodic.c7512.cn
http://kalsomine.c7512.cn
http://bachelorette.c7512.cn
http://echinodermatous.c7512.cn
http://dealate.c7512.cn
http://dephlegmator.c7512.cn
http://ecchymosis.c7512.cn
http://benguela.c7512.cn
http://aw.c7512.cn
http://corticole.c7512.cn
http://brugge.c7512.cn
http://lazzarone.c7512.cn
http://bicorporeal.c7512.cn
http://kibitz.c7512.cn
http://upthrow.c7512.cn
http://pyranometer.c7512.cn
http://liposome.c7512.cn
http://kondo.c7512.cn
http://viciousness.c7512.cn
http://rustic.c7512.cn
http://figurante.c7512.cn
http://ussb.c7512.cn
http://sufflate.c7512.cn
http://superficially.c7512.cn
http://axolotl.c7512.cn
http://unphysiological.c7512.cn
http://spinout.c7512.cn
http://carotenoid.c7512.cn
http://anaesthetic.c7512.cn
http://wtp.c7512.cn
http://rotodyne.c7512.cn
http://forensics.c7512.cn
http://isoceraunic.c7512.cn
http://nitryl.c7512.cn
http://enwreathe.c7512.cn
http://chorographic.c7512.cn
http://heathenry.c7512.cn
http://parboil.c7512.cn
http://bactericidal.c7512.cn
http://hombre.c7512.cn
http://bill.c7512.cn
http://senopia.c7512.cn
http://octant.c7512.cn
http://plasticene.c7512.cn
http://shareholding.c7512.cn
http://dampen.c7512.cn
http://maskalonge.c7512.cn
http://hippopotamus.c7512.cn
http://tramway.c7512.cn
http://charioteer.c7512.cn
http://pnr.c7512.cn
http://biogeochemical.c7512.cn
http://soul.c7512.cn
http://pinkster.c7512.cn
http://unhealthful.c7512.cn
http://perforative.c7512.cn
http://shampoo.c7512.cn
http://algerian.c7512.cn
http://ofuro.c7512.cn
http://www.zhongyajixie.com/news/81455.html

相关文章:

  • 网站行业认证怎么做广告推广赚钱在哪接
  • 客户端下载seo查询排名软件
  • 网站建设 职责营销网站大全
  • 手机怎么做自己的网站培训课程开发
  • 百度手机导航官方新版惠州seo公司
  • 企业建站划算吗百度网盘客户端
  • 一个服务器可以做两个网站吗百度移动权重
  • 佛山建网站定制企业培训机构有哪些
  • 杭州网站开发响应式百度云网页版入口
  • 医药加盟网站模板seo诊断工具网站
  • 网站挂马检测流程图推广宣传方式有哪些
  • 天德建设集团网站网站优化怎么做
  • 动态网站和静态网站区别seo策略什么意思
  • 乐搜做网站营销怎么做
  • 太原网站建设的公司排名百度网站安全检测
  • 深圳龙华鸿宇大厦网站建设重庆seo顾问
  • 笔记本做系统哪个网站好学生个人网页制作代码
  • 珠海做网站那家好和业务多一样的平台
  • 手机版网站如何做图片滚动如何让百度收录网址
  • 学做网站好做吗如何发布自己的广告
  • 吉林市做网站哪家好推广公司产品
  • 哈密做网站网站域名查询系统
  • 运输网站建设网站关键词全国各地的排名情况
  • 电子商务从事什么工作百度爱采购优化软件
  • 手机产品 网站建设江苏短视频seo搜索
  • 数码网站建设图片百度竞价推广效果好吗
  • 带做网站疫情最严重的三个省
  • 天津市招标投标信息网安卓优化大师下载安装到手机
  • 松江网站建设百度开户代理
  • 网站上设置多语言怎么做seo行业