首页 > 其他分享 >STM32 IIC温湿度传感器(STH45)实验

STM32 IIC温湿度传感器(STH45)实验

时间:2023-12-25 20:32:07浏览次数:32  
标签:IIC CRC 温湿度 校验 STM32 传输 传感器 I2C 读取


SHT45 简介

.精度 ΔRH = ±1.0 %RH, ΔT = ±0.1 °C
• VDD = 1.08 V …3.6 V
• 平均电流:0.4 μA,空闲电流:80 nA
• I2C FM、CRC 校验和、乘法。I2C 地址。
• 专利保护选项 [1]、PTFE 膜和可拆卸保护盖
• 工作范围:0 …100 %相对湿度,−40…125 摄氏度
• 在冷凝环境中功能齐全
• 动力加热器,真正的NIST可追溯性
• JEDEC JESD47 认证 • 符合 ISO 17025 : 2017 的传感器专用校准证书,3 点温度校准

SHT4x是一个数字传感器平台,用于测量不同精度等级的相对湿度和温度。其 I2C 接口提供多个预配置的 I2C 地址,同时保持超低功耗预算。功率调整的内部加热器可在三个加热级别下使用,从而使传感器能够在苛刻的环境中运行。四引脚双扁平无引线封装适用于表面贴装技术 (SMT) 加工,包括可选的封装专利 PTFE [1] 膜或可拆卸保护盖。可根据ISO17025提供传感器特定校准证书,可通过唯一的序列号进行识别。

框图

STM32 IIC温湿度传感器(STH45)实验_校验和


STM32 IIC温湿度传感器(STH45)实验_嵌入式硬件_02

2 I2C通信

I2C通信基于恩智浦的I2C总线规范和用户手册UM10204[3]。 支持的 I2C 模式包括标准模式、快速模式和快速模式增强模式。数据以 16 位字和 8 位校验和的倍数传输(循环冗余校验 = CRC)。所有传输必须以开始条件 (S) 开始,并以停止条件 (P) 结束。若要完成读取传输,请发送不确认 (NACK) 和停止条件 (P)。对特定从设备进行寻址是通过发送其 7 位 I2C 地址后跟第 8 位来完成的,表示通信方向:“零”表示传输到从设备,即“写入”,“一”表示“读取”请求。I2C传输类型的原理图如图14所示。传感器不支持时钟拉伸。如果传感器收到读取标头并且仍然忙于测量或加热等,它将返回 NACK。测量数据只能接收一次,并在第一次确认 I2C 读头后从传感器的寄存器中删除。

STM32 IIC温湿度传感器(STH45)实验_校验和_03


I2C 传输类型:首先将写入标头发送到 I2C 从机,然后发送命令,例如“以最高精度测量 RH&T”。测量完成后,将确认定向到该 I2C 从机的读取请求,并从机将开始数据传输。

I2C 总线使用 8 位数据包运行。从传感器到主站的信息在每秒 8 位数据包后都有一个校验和。 湿度和温度数据将始终按以下方式传输:第一个值是温度信号(28位数据+8位CRC),第二个值是湿度信号(28位数据+8位CRC)。

STM32 IIC温湿度传感器(STH45)实验_嵌入式硬件_04


STM32 IIC温湿度传感器(STH45)实验_单片机_05


标签:IIC,CRC,温湿度,校验,STM32,传输,传感器,I2C,读取
From: https://blog.51cto.com/u_15346322/8971762

相关文章

  • STM32采集传感器数据通过冒泡排序取稳定值
    STM32采集传感器数据通过冒泡排序取稳定值一、前言在物联网、单片机开发中,经常需要采集各种传感器的数据。比如:温度、湿度、MQ2、MQ3、MQ4等等传感器数据。这些数据采集过程中可能有波动,偶尔不稳定,为了得到稳定的值,我们可以对数据多次采集,进行排序,去掉最大......
  • 【DIY】自制STM32_Arduino
    【DIY】自制STM32_Arduino电路板前言为了在STM32上使用SimpleFOC,使用SimpleFOC的Arduino驱动板,就有了制作STM32_Arduino电路板的想法。使用STM32F103C8T6作为主控,使用立创EDA专业版软件进行电路板设计。功能需求:电路板外形上与Arduino外形相同。使用STM32的定时器TIM输出引......
  • iic学习笔记
    一、简介由飞利浦主导开发的片间互联协议。iic通信使用三线(sdascl以及gnd,不包括电源线),极大程度上减少了对ic的io口的占用。同时iic支持多主机以及多从机,方便了程序的设计。二、协议层简介在iic总线上scl的电平决定了整条iic总线的有效性。当scl出于高电平时,主机与从机可以侦......
  • 【IIC】通过Arduino的SoftI2C库学习IIC通信
    【IIC】通过Arduino的SoftI2C库学习IIC通信SoftIC库SoftI2C库是Arduino的一个第三方库,可以通过软件模拟IIC时序与其他设备进行通信。可以实现与Wire库一样的功能。SoftI2C库的官方链接:https://www.arduino.cc/reference/en/libraries/softi2c/相关的API函数如下所示:IIC基本知......
  • STM32MP157驱动开发——USB设备驱动
    一、简介  由于USB协议太过庞大和复杂,所以本节只对STM32MP157自带的USB驱动进行使能和测试。详细的USB接口和协议的介绍,可以参考原子哥的资料《USB2.0协议中文版.pdf》和《USB3.0协议中文版.pdf》。  USB全称为UniversalSerialBus,翻译过来就是通用串行总线,用......
  • STM32中滴答定时器的使用并进行ms和us级延时
    STM32中滴答定时器的使用并进行ms和us级延时滴答定时器(Systick)滴答定时器Systick是stm32内核中的一个系统定时器,是属于内核的外设。滴答定时器是一个24位的倒计数定时器,当计数到0时,会从LOAD寄存器中自动重装载定时初值,开始新一轮计数。在core_cm3.h和core_cm4.h头文件中都会......
  • 阅读STM32-hal库代码得到的几点C代码编程规范
    阅读STM32-hal库代码得到的几点C代码编程规范规范一:头文件使用#ifndef_XXX_H#define_XXX_H#ifdef__cplusplusextern"C"{#endif//头文件内容#ifdef__cplusplus}#endif#endif在C++编译环境中,会定义__cplusplus宏,如果在C++代码中需要使用C语言的函数和变......
  • stm32之名缩写词
    缩写名称缩写名称NVIC嵌套向量中断控制器CANCAN通信SysTick系统滴答定时器USBUSB通信RCC复位和时钟控制RTC实时时钟GPIO通用IO口CRCCRC校验AFIO复用IO口PWR电源控制EXTI外部中断BKP备份寄存器TIM定时器IWDG独立看门狗ADC模......
  • STM32 窗口看门狗(WWDG)实验
    ......
  • STM32智能小车 0基础教学
    (文章目录)前言最近发现很多小伙伴都想自己制作一辆属于自己的智能小车,从今天开始我准备从选材料开始教大家如何制作一辆智能小车。一、必备器材选择及其作用1.主控制器STM32首先最重要的就是选择主控制器,因为我们需要通过STM32来控制各个模块协调工作。这里我们选择STM32RC......