海芯科技的HX710A的ADC结果“每度20.4个读数”是什么意思?
最近在使用海芯科技的HX710A这颗专为电子秤设计的24位A/D芯片,这颗芯片与常用的HX711大同小异,唯一不同的是芯片内部含温度传感器,可以读出来,用于需要温度补偿的地方,它的文档里有一段话,死活看不明白,希望坛子里的兄弟帮忙解释一下:如上图所示,文中说“典型温度测量精度为每度20.4个读数(15位)”……
这句话实在让人费解,20.4个读数是什么意思???
比如我通过该芯片在常温下读出的ADC结果,虽然ADC是24位,但是由于它说只有15位精度,所以我把结果右移9位,只保留高15位,得到的结果是:3531,
那么这个ADC读数3531到底表示温度是多少度呢???
附上HX710A的文档:
20.4LSB/℃
温度每增加一度 读数增加20.4
没有一个确定的零点,也就是说不知道 0℃的确切值,而且每个传感器还都不一样,需要校准。
假设两个传感器 经过校准 0度时的输出值分别是1000和1100
那么10℃时输出就是1204和1304。
其他的图片也说了,你用来准确测温需要进行校准,如果只是用来温度补偿,则直接按照标定的系数来补偿就好了 难道真的自古二楼出真相?先自顶一下…二楼说法思考中 二楼 正解 本帖最后由 dzrs0620 于 2015-4-3 08:19 编辑
maxwelllls 发表于 2015-4-2 23:27
20.4LSB/℃
温度每增加一度 读数增加20.4
没有一个确定的零点,也就是说不知道 0℃的确切值,而且每个传感 ...
如果想测量绝对温度的话,应如何通过软件校准?难道是把芯片扔在绝对零度的环境里,记下读数,然后以后通过计算当前读数和绝对零度读数的差值再除以20.4得到当前温度?问题是每颗芯片都不同,批量如何处理? 楼主另外一个帖子里AT我两个,看来必须回复下了。
我还真没用过HX710里内部的温度传感器呢,从描述看,这个20.4是一个斜率的参数,但是你的软件必须做一个基准的标定,比如当前温度是20度,你的程序记录下当前的AD值,当温度变化,这个AD值会跟着变动,你那这当前的AD值和之前记录的值做减法,然后除以20.4就是变化的实际度数,因为基准是20度,那么这个变化就是从20度这个基准点变化的温度数,算的时候,搞清楚是升温还是降温,就可以很容易得到你要的实际当前温度。
那个基准温度要保存到EEPROM哦,一次标定,永久使用。 ilikemcu 发表于 2015-4-3 08:28
楼主另外一个帖子里AT我两个,看来必须回复下了。
我还真没用过HX710里内部的温度传感器呢,从描述看,这 ...
谢谢前辈过来回复,那岂不是每台设备都要标定一下……我看不到不少生产电子秤的也有标定这一说法,照理来说,电子秤压力传感器的输出是接的芯片差分输入……为什么也要用标准砝码进行标定呢?直接根据一克的差值进行换算不就行了?门外汉,诚心请教…… 学习下,HX710A线性度稳定度怎么样,对布线要求高吗 dzrs0620 发表于 2015-4-3 09:22
谢谢前辈过来回复,那岂不是每台设备都要标定一下……我看不到不少生产电子秤的也有标定这一说法,照理来 ...
因为传感器灵敏度,AD增益,等等这些都是模拟量,都有很大的离散性,所以使用数字化方式进行标定是必须的步骤。早期的也有用电位器的,拨码开关的,很古老的
HX710系列唯一不足的就是温漂大些,其它性能都是很OK的。 carney 发表于 2015-4-3 11:49
学习下,HX710A线性度稳定度怎么样,对布线要求高吗
我是把24位结果右移8位,只使用高16位,在旧板子上随便搭的线,不好评价它的这些性能…… dzrs0620 发表于 2015-4-3 15:34
我是把24位结果右移8位,只使用高16位,在旧板子上随便搭的线,不好评价它的这些性能…… ...
谢谢分享经验 以前用710做了一个东东,结果人家说停产了,改用了711,不知道是不是真的 mcu5i51 发表于 2015-4-4 11:05
以前用710做了一个东东,结果人家说停产了,改用了711,不知道是不是真的
我选型前,必上万能的某宝搜索一下,只要出来的结果超过3个,我就可以放心的用…… dzrs0620 发表于 2015-4-4 13:07
我选型前,必上万能的某宝搜索一下,只要出来的结果超过3个,我就可以放心的用…… ...
怎么我用手册上的代码读出来的数据不对,都是不变的
页:
[1]