草庐IT

【STM32Cube】学习笔记(六):DHT11温湿度传感器

文章目录摘要一、简介1.DHT11数字温湿度传感器2.DHT11性能参数2.DHT11数据结构2.DHT11传输时序二、硬件电路设计1.模块内部电路2.与单片机相连接电路三、软件设计1.CubeMX配置2.CubeIDE代码四、结果显示五、总结附录摘要本篇文章用STM32CubeMX和STM32CubeIDE软件编程,主控芯片为STM32F103C8T6驱动DHT11温湿度传感器,根据时序编写温湿度传感器的驱动代码,将传感器检测到的温度和湿度通过串口发送到窗口调试助手。由于使用完整的DHT11模块,所以电路结构比较简单。通过本文可以学会DHT11数字温湿度传感器的原理以及时序结构,并且根据其时

在ARMv8中aarch64与aarch32切换

需求描述在项目调试过程中,由于内存或磁盘空间不足需要将系统从aarch64切换到aarch32的运行状态去执行,接下来记录cortexA53的调试过程。相关寄存器描述ARM64:SPSR_EL3N(Negative):表示运算结果的最高位,用于指示运算结果是否为负数。Z(Zero):表示运算结果是否为零。C(Carry):表示无符号运算结果是否发生了进位或借位。V(Overflow):表示有符号运算结果是否发生了溢出。RES0(Reserved):保留位,未使用,必须为零。TCO(TrappedConditionOnly):条件码只在陷入到EL3时有效。DIT(DataIndependentT

performance - 为什么 TeraSort 映射阶段在 CRC32.update() 函数中花费大量时间?

我正在尝试分析哪些函数在TeraSortHadoop作业中消耗的时间最多。对于我的测试系统,我使用的是基本的单节点伪分布式设置。这意味着NameNode、DataNode、Tasktracker和JobtrackerJVM都在同一台机器上运行。我首先使用TeraGen生成约9GB的数据,然后在其上运行TeraSort。当JVM执行时,我使用VisualVM对它们的执行进行采样。我知道这不是目前最准确的分析器,但它是免费且易于使用的!我使用最新版本的Apachehadoop发行版,我的实验在基于IntelAtom的系统上运行。当我查看VisualVM中热点方法的自用时间(CPU)时,我发

【esp32c3配置arduino IDE教程】

【esp32c3配置arduinoIDE教程】1.安装ArduinoIDE1.1下载ArduinoIDE1.2安装ArduinoIDE1.3启动ArduinoIDE1.4初始化ArduinoIDE1.5测试ArduinoIDE软件2.配置esp32c3环境2.1设置包地址2.1选择esp32开发板3.验证esp32c3配置arduinoIDE3.1点灯Fade3.2读取模拟量Analog4.总结本文主线FastBond2阶段1——基于ESP32C3开发的简易IO调试设备,esp32c3环境搭建,设计目标如下设计用户操作界面,该设备具备简单易用的操作界面,外加显示屏SSD1306和旋转编码器进行

【物联网】手把手完整实现STM32+ESP8266+MQTT+阿里云+APP应用——第3节-云产品流转配置

🌟博主领域:嵌入式领域&人工智能&软件开发本节目标:本节目标是进行云产品流转配置为后面实际的手机APP的接入做铺垫。云产品流转配置的目的是为了后面能够让后面实际做出来的手机APP可以控制STM32/MCU,STM32/MCU可以将数据发给实际的手机APP。配置步骤主要分为三步:1.创建数据源;2.创建数据目的;3.创建解析器需要注意:手机APP数据传至STM32的数据源是手机APP,数据目的是STM32,反过来就是STM32数据传至手机APP的数据源是STM32,数据目的是手机APP。即需要来回配置两次。其余章节见本专栏:https://blog.csdn.net/m0_61712829/ca

【单片机毕设选题】 单片机自动写字机器人设计与实现 - 物联网 嵌入式 stm32

文章目录0前言1简介2主要器件3实现效果4硬件设计总体框架**AB32VG1主控MCU**5软件说明总体框架6部分核心代码7最后0前言🔥这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天要分享的是🚩基于单片机的自动写字机器人设计与实现🥇学长这里给一个题目综合评分(每项满分5分)难度系数:3分工作量:3分创新点:5分1简介基于RTthread的写字机控制系统,采用独立研发的运动控制系统,结合RTT的多线程,将运

【LINUX下格式化U盘】如何在LINUX下将U盘格式化为FAT32

问题1:将U盘连接至虚拟机时,设备"KingstonDataTraveler3.0"无法连接到理想的主机控制器。因为该U盘是USB3.0,一般默认虚拟机设置的兼容是USB2.0。在虚拟机设置->USB控制器里面修改兼容性就可以。在命令行中输入sudofdisk-l找到U盘的设备名称,我的是dev/sdb然后输入sudomkfs-tvfat/dev/sdb问题2:mkfs.vfat:unabletoopen/dev/sdb:Deviceorresourcebusy原因:U盘已经挂载了。尝试:umount/dev/sdb但是发现没有挂载df-h发现挂载上去的名字叫/dev/sdb1umount/d

STM32G4x FLASH 读写配置结构体(LL库下使用)

主要工作就是把HAL的超时用LL库延时替代,保留了中断擦写模式、轮询等待擦写,我已经验证了部分。笔者用的芯片为STM32G473CBT6128KBFlash,开环环境为CUBEMX+MDK5.32,因为G4已经没有标准库了,笔者还是习惯使用标准库的开发方式,所以选择了LL库开发应用,但是LL库没有对Flash进行支持,所以笔者想通过修改HAL库的Flash驱动来使用。介绍下Datasheet内容,STM32G473系列有支持ECC的最大512KB闪存、两个边写边读的存储体、专有代码读出保护(PCROP)、安全存储区域、1KBOTP区域。STM32G473xB/xC/xE器件具有高达512KB的

STM32 OLED显示字符汉字

本文代码使用HAL库。文章目录前言一、OLED接线:二、点阵:三、写数据,命令函数四、显示字符,字符串:总结前言OLED屏幕是一种高对比度、高亮度、低功耗、灵活可弯曲的显示技术。在电子产品中,OLED屏幕通常用于显示各种文本、图标、图像等内容。本篇文章将介绍使用I2C接口在OLED屏幕上显示字符,汉字。一、OLED接线:我使用的OLED分辨率是128x64。这里我使用STM32上的2个接口模拟I2C的功能。模拟I2C:通常是指在没有硬件I2C接口的情况下,使用单片机的GPIO模拟实现I2C通信协议。I2C通信协议是一种串行通信协议,通常用于连接微控制器、传感器、存储器等设备,其具有简单、高效、

STM32物联网基于ZigBee智能家居控制系统

实践制作DIY-GC0169-ZigBee智能家居  一、功能说明:基于STM32单片机设计-ZigBee智能家居二、功能介绍:1个主机显示板:STM32F103C最小系统+ZigBee无线模块+OLED显示器+语音识别模块+多个按键+ESP8266-WIFI模块(仅WIFI版本有)1个传感器板:  STM32F103C最小系统+ZigBee无线模块+DHT11温度湿度传感器+雨滴采集板+光敏电阻光强采集1个执行板:     STM32F103C最小系统+ZigBee无线模块+舵机-窗户+ULN2003步进电机-窗帘+继电器-空调+LED灯模块-房间灯总体功能:通过ZigBee模块实现3块电路