STM32实例——基于STM32开发板实现传感数据采集-DHT11温湿度采集

Posted 我不学python

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STM32实例——基于STM32开发板实现传感数据采集-DHT11温湿度采集相关的知识,希望对你有一定的参考价值。

STM32开发板实现传感数据采集-DHT11温湿度采集

一、前言

本项目是基于STM32开发板的温湿度采集,传感器采用DHT11温湿度传感器,软件采用keil5等。本项目采用ARM结构中最为代表的Cortex-M4系列的芯片,选用STM32F407ZGT6开发板进行项目开发。传感器将采集到的数据传输到STM32(MCU)主控进行数据处理,最后通过串口打印出来。

二、硬软件准备

1、硬件准备

  • STM32F407ZGT6
  • DHT11温湿度传感器

2、软件准备
keil5:
官方链接:http://www.keil.com/demo/eval/arm.htm
STM32f407固件库:
官方链接:http://www.keil.com/dd2/pack
STM32CudeMx
官方链接:http://www.st.com/web/en/catalog/tools/PF259242
STM32CudeMx的f407软件包:
官方链接:http://www.st.com/web/en/catalog/tools/PF259243

3、项目实施
1、keil5安装
安装请参照链接:keil5安装链接
2、STM32CudeMx安装
安装请参照链接:STM32CudeMx安装
3、BSP工程项目创建

①打开STM32CudeMX

在这里插入图片描述
②点击创建工程(ACCESS TO MCU SELECTOR)在这里插入图片描述
③搜索STM32F407ZG,双击绿色区域
在这里插入图片描述
④点击Categor→System Core →GPIO,选择PF9和PF10,都选择为GPIO_OutPut方式
在这里插入图片描述
⑤对PF9和PF10的GPIO进行具体配置
在这里插入图片描述
⑥配置RCC时钟
在这里插入图片描述
⑦配置系统时钟
在这里插入图片描述
⑧这里以串口1为例 我们可以选择串口的模式(异步,同步,半双工) 串口接收中断

a)点击USATR1
b)设置MODE为异步通信(Asynchronous)
c)基础参数:波特率为115200 Bits/s。传输数据长度为8 Bit。奇偶检验无,停止位1 接收和发送都使能
d)GPIO引脚设置 USART1_RX/USART_TX
e) NVIC Settings 一栏使能接收中断
在这里插入图片描述
⑨配置STM32F407ZGT6的时钟树,由于是外部8M的晶振,所以得出一下的时钟树
a)选择外部时钟HSE 8MHz
b)PLL锁相环倍频168倍
c)系统时钟来源选择为PLL
d)设置APB1分频器为 /4在这里插入图片描述
⑩建立工程在这里插入图片描述
在这里插入图片描述
4. BSP工程项目
①用keil5打开此工程
在这里插入图片描述②点击option(魔法棒),然后进行主频配置,修改为8.0或者12.0,然后重新打开该工程进行检查,最后进行编译。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
③在keil5上面创建SYSTEM和HARDWAVE两个文件夹

以上是关于STM32实例——基于STM32开发板实现传感数据采集-DHT11温湿度采集的主要内容,如果未能解决你的问题,请参考以下文章

STM32实例——基于STM32开发板实现传感数据采集-DHT11温湿度采集

STM32实例——基于STM32开发板实现传感数据采集-DHT11温湿度采集

基于STM32开发板实现传感数据采集-DHT11温湿度采集

基于STM32F103C8T6最小系统板HAL库CubeMX驱动HC-SR501红外人体传感模块

基于STM32F103C8T6最小系统板HAL库CubeMX驱动HC-SR501红外人体传感模块

基于STM32F103C8T6最小系统板HAL库CubeMX驱动HC-SR501红外人体传感模块