HAL库开发SHT30温湿度传感器驱动
传感器手册地址来源于半导小芯Sensirion-SHT30A-DIS-B.pdf部分内容参考自博主辰哥单片机设计引脚引脚对应接线SDA数据信号ADDRAD连接到高电平或低电平不可以悬空ALERTAL报警引脚不用必须悬空SCL时钟信号AD置0 i2c地址为 0x44AD置1 i2c地址为 0x45传感器特性SHT系列型号的传感器都是单次指令式测量都没有寄存器所以在手册上查不到寄存器表不同的是STH3x系列是2字节指令SHT2x和SHT4x是单字节指令以SHT30为例读取温湿度并进行CRC校验的指令参数Repeatability从高到低对应精度从高到低0x2C,0x06精度最高测量时间约 15ms0x2C,0x0D中精度测量时间约 6.5ms0x2C,0x10低精度测量时间约4.5ms功耗低Clock stretching时钟拉伸: 从机在正在进行的传输中可主动拉低 SCL 强制主机暂停但从机不能主动发起一次新的传输START 条件只能由主机产生。不常用只有处理较长时间数据时才用到其他指令例如软复位0x30,0xA2读取序列号0x36,0x82中断清除0x30,0x93字节顺序官方时序图高字节在前读出的数据格式为T MSB | T LSB | CRC_T | RH MSB | RH LSB | CRC_RH数据解算公式公式代码raw_temp和raw_hum是读取到的未结算的数据T(℃) -45 175 * ((float)raw_temp / 65535.0f); RH(%) 100 * ((float)raw_hum / 65535.0f);代码部分HAL库SHT30.h#ifndef SHT30_H #define SHT30_H #include main.h #include usart.h #include i2c.h #include cmsis_os.h #include freertos.h #define SHT30_ADDR (0x44 1) #define SHT_SCL_GPIO_Port GPIOB #define SHT_SCL_Pin GPIO_PIN_6 #define SHT_SDA_GPIO_Port GPIOB #define SHT_SDA_Pin GPIO_PIN_7 void SHT30_ReadData(float *temperature, float *humidity); #endif // SHT30_HSHT30.c#include sht30.h // 读取温湿度数据 uint8_t cmd[2] {0x2C, 0x06}; /** * brief 读取并解算温湿度数据 * * param temperature * param humidity */ void SHT30_ReadData(float *temperature, float *humidity) { HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_RESET); // 写指令(并检测是否写成功) if (HAL_I2C_Master_Transmit(hi2c1, SHT30_ADDR, cmd, 2, 100) ! HAL_OK) { *temperature -999.0f; *humidity -999.0f; return; } osDelay(15); // 读数据并检测是否读取成功 uint8_t data[6]; if (HAL_I2C_Master_Receive(hi2c1, SHT30_ADDR, data, 6, 100) ! HAL_OK) { *temperature -999.0f; *humidity -999.0f; return; } // 读回的字节顺序T MSB | T LSB | CRC_T | RH MSB | RH LSB | CRC_RH // 解析数据(第2位和第4位是CRC校验) uint16_t temp_raw data[0] 8 | data[1]; uint16_t hum_raw data[3] 8 | data[4]; *temperature -45.0f 175.0f * (float)temp_raw / 65535.0f; *humidity 100.0f * (float)hum_raw / 65535.0f; }

相关新闻

AML启动器:重新定义XCOM 2模组管理的智能解决方案

AML启动器:重新定义XCOM 2模组管理的智能解决方案

AML启动器:重新定义XCOM 2模组管理的智能解决方案 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xc…

2026/7/31 13:32:49阅读更多 →
用了AI写合同,效率翻倍了!但选哪个工具,我说点真实感受

用了AI写合同,效率翻倍了!但选哪个工具,我说点真实感受

入职前赶合同、网上找的模板总有过时条款、找律师起草费用又高……这些场景,相信很多HR、创业者或者行政岗的朋友都不陌生。最近,“用AI生成劳动合同模板”成了不少人的新选择。我花了一段时间,把市面上主流的几类AI合同工具都体验了一遍&…

2026/7/31 13:32:49阅读更多 →
电信企业部门墙严重?北京华恒智信管理案例

电信企业部门墙严重?北京华恒智信管理案例

【导读】你的企业是否经常遇到这样的问题——各业务部门之间沟通交流很少,缺乏合作交流,形成坚固的部门墙;一旦领导者不在,管理体系便流于形式,基本处于严重"瘫痪"状态。这些都是典型的领导人员管控缺失问题…

2026/7/31 13:32:49阅读更多 →
ArkTS 进阶之道(26):@LocalStorageLink/@LocalStorageProp 页面级状态绑定边界——为啥双向绑定 vs 单向只读

ArkTS 进阶之道(26):@LocalStorageLink/@LocalStorageProp 页面级状态绑定边界——为啥双向绑定 vs 单向只读

ArkTS 进阶之道(26):LocalStorageLink/LocalStorageProp 页面级状态绑定边界——为啥双向绑定 vs 单向只读本文是「ArkTS 进阶之道」系列第 26 篇,续「ArkUI 状态联动」深水区。上篇讲 StorageLink/StorageProp 应用级状态绑定边界…

2026/7/31 14:46:10阅读更多 →
技术干货:慧新软件分享如何通过结构化数据攻占AI搜索排名

技术干货:慧新软件分享如何通过结构化数据攻占AI搜索排名

引言:搜索逻辑正在被改写 2026年,以DeepSeek、Kimi、豆包、通义千问为代表的AI对话应用日活用户已突破数亿-5。用户的搜索习惯正在发生根本变化——从“输入几个关键词、翻找蓝色链接”转变为“直接提问、获得完整答案”。 这一变化意味着传统的搜索引…

2026/7/31 14:46:10阅读更多 →
grep -v反向过滤排除内容实操

grep -v反向过滤排除内容实操

grep -v反向过滤排除内容实操一、实验目的掌握反向过滤功能,剔除无用日志、冗余信息,保留有效内容。二、实验环境CentOS7.9系统三、操作步骤过滤排除空行Bashgrep -v ^$ log.txt排除指定关键字内容Bashgrep -v warning log.txt四、结果验证无用内容被过滤…

2026/7/31 14:46:10阅读更多 →
grep关键字日志过滤基础实操

grep关键字日志过滤基础实操

grep关键字日志过滤基础实操一、实验目的掌握grep筛选文本关键字,快速过滤日志和配置文件关键信息。二、实验环境CentOS7.9系统三、操作步骤筛选文件中包含root的行Bashgrep root /etc/passwd忽略大小写匹配关键字Bashgrep -i ERROR log.txt四、结果验证精准筛选出含…

2026/7/31 14:46:10阅读更多 →
shutdown、reboot开关机规范实操

shutdown、reboot开关机规范实操

shutdown、reboot开关机规范实操一、实验目的掌握Linux正规关机、重启命令,规范服务器开关机操作。二、实验环境CentOS7.9系统三、操作步骤立即重启服务器Bashreboot立即关机Bashshutdown -h now定时10分钟后关机Bashshutdown -h 10四、结果验证服务器正常执行重启、…

2026/7/31 14:46:10阅读更多 →
# HarmonyOS ArkTS 滑动删除列表实战(三):交互式列表增删操作

# HarmonyOS ArkTS 滑动删除列表实战(三):交互式列表增删操作

摘要:列表滑动删除是移动应用中极为常见的交互模式。本文详细讲解如何在 HarmonyOS ArkTS 中实现带有切换删除按钮的列表,支持添加和删除列表项,涵盖 List 组件、手势交互、状态管理和动画反馈等核心技术点。一、项目概述 「滑动删除」功能是…

2026/7/31 14:44:10阅读更多 →
覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

覆盖国产 + 海外 + 开源模型,OpenClaw 2.7.9 Windows/Mac 双端部署详解

🔹 工具基础介绍 OpenClaw 是开源生态中一款实用性较强的本地智能工具,凭借本地离线运行、可视化图形操作和任务自动化三大核心特性,赢得了众多用户的青睐。与普通在线对话AI工具不同,它属于能够直接操控本机软硬件的智能数字员工…

2026/7/30 15:03:16阅读更多 →
伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

伺服阀焊完微漏毁整机?精密激光焊接三关锁住高压

所谓液压伺服阀体的精密激光焊接,是用激光束对阀座壳体(通常为不锈钢或铝合金)进行密封焊接,使阀体在21-35MPa的高压液压油或压缩气体中长期运行而不发生介质泄漏。液压伺服阀是高端液压系统的"大脑"。从航空航天飞行控…

2026/7/30 12:22:27阅读更多 →
D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南

D2DX:三步实现《暗黑破坏神2》高清宽屏体验的终极指南 【免费下载链接】d2dx D2DX is a complete solution to make Diablo II run well on modern PCs, with high fps and better resolutions. 项目地址: https://gitcode.com/gh_mirrors/d2/d2dx 你是否还在…

2026/7/30 15:13:02阅读更多 →
物理复制比逻辑复制好在哪?数据库复制原理详解

物理复制比逻辑复制好在哪?数据库复制原理详解

数据库复制是把主库数据同步到备库的机制,分为逻辑复制和物理复制两种。逻辑复制传输的是 SQL 语句或行变更事件,物理复制传输的是存储引擎底层的物理日志。阿里云 PolarDB(云原生数据库)采用物理复制,在同步延迟、数据…

2026/7/31 0:00:40阅读更多 →
BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi/Bilib…

2026/7/31 0:00:41阅读更多 →
有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

当前,游戏行业的“DataAI融合”已从概念验证进入价值落地阶段。根据IDC 2025年数据,中国AI游戏云市场规模已达18.6亿元;同时,游戏研发环节AI渗透率高达86%,生成式AI内容普及率超过50%。面对庞大的市场,游戏…

2026/7/31 0:00:41阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/31 0:49:33阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/31 5:08:18阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/30 15:43:46阅读更多 →