HDC1000温湿度传感器的配置问题请教
使用单片机模拟IIC时序驱动HDC1000,始终没有读出温湿度传感器,请问应该如何配置HDC1000配置寄存器,示波器看我的IIC时序应该是正确的,DRDYN引脚始终是高电平,没有拉低过。我的配置寄存器代码如下:
static void HDC1000_Seting(void)
{
uint16 tempcom = 0x0000; // HDC1000 configuration and status
uint8 temp[2] = {0};
tempcom |= 1 << HDC1000_Enht;
tempcom |= 1 << HDC1000_Mode;
temp[0] = (uint8)(tempcom >> 8);
temp[1] = (uint8)(tempcom & 0xFF);
I2C_WriteRegToHd100(HDC1000_Read_Conf, temp, 2);
I2C_WriteRegToHd100(HDC1000_Read_Temperature, 0, 0);
// I2C_WriteRegToHd100(HDC1000_Read_Humidity, 0, 0);
}
然后再主循环中不断读取内部温湿度寄存器,始终是FF FF FF FF,请帮我分析一下吧,谢谢
楼主,你还,我也出现你这样的问题,请问你解决了吗?谢谢。
您好,我也遇到这样的问题,全速运行时是错的,读出来的全部是FF FF,但是单步调的时候是对的。请问您知道怎么解决吗?
tempcom |= 1 << HDC1000_Enht; //加热使能不需要,测试用的
配置寄存器前最好Soft_Reset一下。
温湿度传感器HDC1000读温湿度时,一定要先等它转换完成才能读取,不然会读到错误的数据。
读温湿度时,发送了读取寄存器地址后,需要发停止位,再等待DRDYn引脚变为低电平,才能读走数据。
上传一份我写的吧,读取都正常的。
你能否将速度快时候的接口时序用示波器抓一个图过来?看看是什么情况?
你好 可以发一份你测试的程序和 这款芯片的PCB连接 和测试电路图
我想学习 谢谢!
仔细研读了你的程序 还有一些问题 还是想QQ请教你 不知道能否看到这条回复 369979917 万分感谢!
你好 最近我在研究这个传感器 还是有一些细节问题不懂 如果你看到的话 可以加我QQ吗 369979917
这是因为你触发一次测量后,没有足够的延时来让传感器完成数据转换,延时时长参考电特性表里的转换时间。如果温湿度都要测量,那么延时时长不能低于两个转换时间的和。
为了减少自热的影响,建议在高分辨率测量时,不超过每秒2次测量,即一次温度,一次湿度。