RISC-V MCU开发实战(一) :DHT11

简介: DHT11是一款有已校准数字信号输出的温湿度传感器。 其精度湿度±5%RH, 温度±2℃,量程湿度5-95%RH,温度-20~+60℃。该传感器包括一个电阻式测湿元件和一个NTC测温元件,可通过单片机等微处理器简单的电路连接就能够实时的采集本地湿度和温度。

软件平台 :MounRiver Studio(MRS),硬件平台:CH32V103开发板、DHT11温度传感器。

1、DHT11简介
DHT11是一款有已校准数字信号输出的温湿度传感器。 其精度湿度±5%RH, 温度±2℃,量程湿度5-95%RH,温度-20~+60℃。该传感器包括一个电阻式测湿元件和一个NTC测温元件,可通过单片机等微处理器简单的电路连接就能够实时的采集本地湿度和温度。 DHT11与单片机之间能采用简单的单总线进行通信,仅仅需要一个I/O口。单总线是美国DALLAS公司推出的外围串行扩展总线技术。与SPI、I²C串行数据通信方式不同.它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的,具有节省I/O口线、资源结构简单、成本低廉、便于总线扩展和维护等诸多优点。传感器内部湿度和温度数据40Bit的数据一次性传给单片机,数据采用校验和方式进行校验,有效的保证数据传输的准确性。

关于DHT11具体信息,可参考其产品手册。

2、硬件连接
DHT11的VCC、GND引脚与单片机VCC、GND引脚连接
DHT11的Dout引脚与单片机PA1连接(用户可自定义)

3、MRS中开发流程
1)首先新建一个CH32V103C8T6 的工程,流程与之前文章中操作相同,新建hardware文件夹,外设DHT11文件夹,DHT11.c源文件以及DHT11.h头文件,添加头文件路径,
如图:
1.png

在头文件定义两个确定IO传输方向的宏,以及IO操作函数的宏备用,其他就是函数声明,代码如下:
2.png

源文件中实现DHT11初始化函数,复位函数,检测函数,通信函数,其中DHT11一次完整的数据传输为40BIT,高位先出,数据格式为:8位湿度整数数据+8位湿度小数数据+8位温度数据+8位温度小数据+8位校验位,根据DHT11手册说明,小数位为预留位,现在全为0,校验位为8位湿度整数数据+8位湿度小数数据+8位温度数据+8位温度小数据结果的末8位,校验位正确时,再将温湿度数据输出。
具体函数代码如下:
3.png

4.png

5.png

主函数逻辑实现循环读和打印即可
7.png

2)成功编译之后,可进入调试来观察寄存器的值(不要在读取数据过程中打断点)
8.png

3)调试无误之后,将程序下载到板子,用串口打印助手观察输出

9.png

相关文章
ubuntu22.04安装QQ音乐
ubuntu22.04 下安装QQMusic
1289 0
|
3月前
|
数据采集 Web App开发 JSON
Python爬虫基本原理与HTTP协议详解:从入门到实践
本文介绍了Python爬虫的核心知识,涵盖HTTP协议基础、请求与响应流程、常用库(如requests、BeautifulSoup)、反爬应对策略及实战案例(如爬取豆瓣电影Top250),帮助读者系统掌握数据采集技能。
246 0
|
数据采集 数据可视化 关系型数据库
【python案例】基于Python 爬虫的房地产数据可视化分析设计与实现
本文设计并实现了一个基于Python爬虫的房地产数据可视化分析系统,通过BeautifulSoup框架采集房源信息,使用pandas进行数据处理,MySQL存储数据,并利用pyecharts进行数据可视化,以帮助用户更直观地了解房源信息并辅助选房购房。
1704 4
|
11月前
|
供应链 NoSQL Java
关于Redisson分布式锁的用法
Redisson分布式锁是实现分布式系统中资源同步的有效工具。通过合理配置和使用Redisson的各种锁机制,可以确保系统的高可用性和数据一致性。本文详细介绍了Redisson分布式锁的配置、基本用法和高级用法,并提供了实际应用示例,希望对您在实际项目中使用Redisson分布式锁有所帮助。c
1546 10
|
Ubuntu 网络安全 数据安全/隐私保护
Ubuntu 普通用户修改sudoers导致无法使用sudo的解决办法
Ubuntu 普通用户修改sudoers导致无法使用sudo的解决办法
534 2
|
IDE 物联网 网络性能优化
什么是MQTT?如何使用ESP12F芯片连接到MQTT服务器
通过上述步骤,你可以成功地使用ESP12F模块连接到MQTT服务器,发布和订阅消息。MQTT的轻量级和高效性使其非常适合各种物联网应用,而ESP12F模块的强大功能和低成本使其成为实现这些应用的理想选择。
577 0
|
人工智能 运维 NoSQL
动态精选|阿里云2月产品与服务更新盘点
阿里云宣布全面降价,核心产品如云服务器、对象存储和云数据库降价高达55%,增强人工智能平台PAI的功能,推出EAS-Serverless模型服务和DLC的闲时资源利用。云数据库Redis版支持离线全量Key分析,MongoDB版增加分片集群按key闪回功能。此外,还发布了文档AI助手、服务器迁移中心的一键迁移功能、应用高可用服务的多活容灾2.0版本、云安全中心的无代理检测商业化版本、云解析DNS流量分析、Salesforce on Alibaba Cloud的Sandbox预览版以及OpenAPI Explorer的SID等新功能。
451 0
|
Ubuntu 安全 测试技术
Ubuntu 22.04 Samba 安装和配置
SMB(Server Message Block)是一种跨平台的文件共享协议,它允许不同操作系统之间的文件和打印机共享。在本文中,我们将详细介绍如何在 Ubuntu 服务器上部署和配置一个 SMB 服务器,并涵盖多通道配置、性能测试、安全最佳实践以及一些常见问题。【8月更文挑战第1天】
2343 1