SHTC3的研发经历

SHTC3自学笔记

一、SHTC3介绍
SHTC3是一款低功耗温湿度传感器,温度的采集范围为-40℃~125℃,湿度的采集范围为 0%~100%。
通讯方式是I2C,引脚定义如图1所示。
引脚
I2C的器件地址只有一个,如图2所示。
在这里插入图片描述
二、读写SHTC3
1、写入数据的步骤如下:
1)IIC发送器件地址+读/写位,器件地址如图2所示。如:写0xE0(11100000)。
2)IIC发送需要写入的指令(两个字节,分两次发送)。如发送唤醒指令,则连续发送0x35,0x17。
2、读取的步骤如下:
1)IIC发送器件地址+读/写位。如:读0xE1(11100001)。
2)IIC连续接收6个字节的数据。

三、SHTC3的寄存器
SHTC3只有1个16位寄存器,所有指令都是直接写进这个寄存器的,很简单,不用再写入寄存器地址了。关于可以指令,我这里只讲几条比较重要的指令,其他不常用的就不介绍了,你们可以看数据手册,具体介绍如下:
1、睡眠指令(数值:0xB098):让SHTC3进入睡眠模式,该模式下耗电更少。
2、唤醒指令(数值:0x3517):SHTC3如果处于休眠状态,需要先执行唤醒指令才能开始采集温湿度。
3、测量指令(数值:看下表):让SHTC3进行温湿度采集。采集有多种模式选择。每一次采集都会同时采集温度和湿度,然后把采集的数据放到寄存器里面,可以自行选择先存放温度还是湿度。可以使用时钟拉伸,如果使用时钟拉伸的话,那么发送完测量命令之后,在SHTC3测量温度湿度数据的过程中,SHTC3会拉低I2C的时钟线SCL,通过这样来禁止主机发送命令给SHTC3,只有当SHTC3完成温度湿度数据测量时,SHTC3才会释放时钟线SCL。也可以选择正常模式或者低功耗模式。具体指令如表1所示。
在这里插入图片描述
4、读取ID(数值:0xEFC8):通过读取ID可以判断主机和SHTC3通讯是否正常。
5、软复位(数值:0x805D):对SHTC3进行软件复位。

四、采集数据的操作步骤
1、唤醒SHTC3:先发送写入指令(0xE0),再发送唤醒指令高位(0x35),再发送唤醒指令低位(0x17)。
2、等待唤醒:数据手册上写的最大唤醒时间是240us,等待的时间大于这个就行了。
3、发送采集指令:先发送写入指令(0xE0),再发送采集指令的高位和低位。采集指令有多个,根据需要自行选择。
4、接收数据:发送读取指令(0xE1),连续接收6个字节数据。如果采集的指令是先存温度,那么这6个字节的第1-2个字节就是温度数值,第3个字节是温度校验。第4-5个字节是湿度数值,第6个字节是湿度校验。如果采集的指令是先存湿度,则前3个字节和后3个字节相反。
5、进入睡眠:发送写入指令,再发送睡眠指令进入睡眠。
详细的操作流程可以参考图4。
在这里插入图片描述
五、数据的计算和校验
1、计算:采集到的数据根据下面的公式计算即可得到温度和湿度。
在这里插入图片描述
例如:采集到的湿度数值是0x6501,换算成十进制是25857。
则:湿度 = 100 * 25857 / 65536 = 39.45 (单位:%)
采集到的温度数值是0x6600,换算成十进制是26112。
则:温度 = -45 + 175 * 26112 / 65536 = 24.72 (单位:℃)
2、校验:根据采集到的温度和湿度计算出校验值之后和采集到的温度和湿度校验位的值进行比较,若是一致的,说明数据无误,反之,则数据有误。如果不需要严格监测数据,也可以直接忽略掉校验位,不影响正常的采集。
校验的方式是CRC-8,多项式为0x31,初始值为0xFF,如图6所示。(和模型CRC-8/MAXIM类似)
在这里插入图片描述
好了,以上就是关于SHTC3这款芯片的介绍,如有错误欢迎指出。如果想要源码,可以在下面的链接下载。(源码是用stm8L控制的,要用32的话稍微改一下引脚定义和初始化就ok了)

https://download.csdn.net/download/shenzhen_zixian/11712590

  • 8
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值