1-wire协议、高精度数字温度芯片M601 M1601 M1820系列应用问题解答
M601、M1601、M1820系列是1-wire协议通信的高精度数字模拟混合信号温度传感芯片。M601为体温芯片,最高测温精度为±0.1℃@+28°C~+43°C,达到医疗应用级别;M601Z、M1601Z、M1820Z最高测温精度为±0.1℃@0°C~+50℃;M601W、M1601W、M1820W最高测温精度为±0.1℃@+20℃~+70℃;M601P、M1601P、M1820P最高测温精度为±0.1℃@-20℃~+30℃;另有M601B、M1601B、M1820B最高测温精度为±0.5℃@0°C~+50℃;用户无需进行校准。
温度芯片感温原理基于CMOS半导体PN节温度与带隙电压的特性关系,经过小信号放大、模数转换、数字校准补偿后,数字总线输出,具有精度高、一致性好、测温快、功耗低、可编程配置灵活、寿命长等优点。
温度芯片内置16-bit ADC,分辨率0.004°C,具有-70°C到+150°的超宽工作范围;有唯一64位ID序列号,在出厂前经过100%测试校准,根据温度误差特性进行校准系数拟合,芯片内部自动进行补偿计算。为了简化系统应用,芯片的ID搜索、测温数据内存访问、功能配置等均基于数字单总线协议指令,上位机微处理器只需要一个GPIO端口便可进行读写访问。
数字单总线作为传感器的通信接口,有着很多明显优势:
- 1-500个多传感节点串联采集,可寻址组网;
- 传输距离远,16Kbps速率下可达数百米;
- 只需要电源、数字、地三线, 成本低;
- MCU适用性广,一个GPIO连接即可。
芯片内置非易失性EEPROM存储单元,用于保存芯片ID号、高低温报警阈值、温度校准修正值以及用户自定义信息,如传感器节点编号、位置信息等。M601系列另有ALERT报警指示引脚,便于用户扩展硬件报警应用。
M601、M1601、M1820系列可替代PT100/PT1000,广泛应用在智能穿戴、电子体温计、动物体温检测、医疗电子、冷链物流/仓储、智能家居、热表气表水表等领域。
针对客户在使用M601、M1601、M1820系列过程中出现的常见问题,敏源特进行如下梳理,以方便客户使用。
1.VDD GND接纽扣电池正负,DQ接GPIO,其他Alert等引脚悬空是否OK?
建议用一个GPIO给温度IC供电,这样零待机功耗,也可以当硬件Reset使用。Alert引脚若不需要使用时必须悬空,其他引脚可以悬空或接地处理均可。
2.上电后需要对DQ进行配置操作吗?
DQ引脚无需配置。与M601、M1601、M1820单总线接口连接的MCU的GPIO必须是双向,输出配置为OD(开漏)输出。DQ线经过2kΩ-10kΩ的上拉电阻与VDD相连。
3.芯片测试温度响应时间需要多长?
温度IC本身测温转换时间可配置为4ms/5.5ms/10.5ms,时间越长,内部滤波效果越好,精度越高,单总线通信约1-2ms。所以最终产品热稳定时间的关键在导热设计。
4.芯片测温转换时间4ms/5.5ms/10.5ms怎么配置?
芯片内部有一个配置寄存器,通过重复性位域设置。重复性越高,精度越高,但转换时间也越长。对于体温测量,建议选择高重复性设置,对应的转换时间是10.5ms。
5.芯片采样频率是否可设置?如何设置?
周期性采样模式采样频率可通过配置寄存器的MPS(Measure Per Second)位设置,有0.5,1,2,4和10次/秒5种选择。也可以上位机通过不同延时单次测量实现。请注意采样频率是指芯片内部测温平均次数,不是实际的测温转换时间。
6.采样频率能设置0.01Hz,10Hz和20Hz吗?
能设置10Hz,不能设置0.01Hz和20Hz。但可以用单次测量命令,用软件定时实现,极限频率更高。
7.如何用软件延时实现单总线通讯时序?
用示波器对照,调整单总线时序各时间参数,以满足单总线协议规范。为简化测试,最好对ResetPresence,Write0,Write1 和Read bit单独调试。
8.如何观察单总线通讯读DQ的时间?
把Readbit例程中的读DQ,临时改为写DQ为0。在不接单总线芯片的情况下,用示波器观察Readbit的时序脉冲。
9.读温经常出现异常值(对应39.996/40.00),如何避免?
这种属于通信异常,推荐加入presence响应检测机制,CRC校验机制,确保出现问题时可以先排查是硬件问题还是软件问题导致。如果presence都无法响应成功,优先考虑是否硬件连接出现了问题。
通常读取scratchpad后需进行CRC校验以确保读数正确。如果CRC校验不通过,优先考虑时序优化是否完善。如果需要从根本上杜绝,可以通过进一步优化时序,增加裕度来避免;
偶尔通信异常,CRC校验不过,剔除就可以。
若硬件出现问题,出现DQ断路,读温易出现39.996(对应原始数据0xFFFF)。
出现短路,若DQ与GND短路则读温会出现40.00(对应原始数据0x0000)。
若无presence响应,读温易出现39.996(对应原始数据0xFFFF)。
具体检测机制详见例程驱动。
10.单总线通信DQ的GPIO口引脚模式如何选择?
一般情况下,优先推荐将DQ的GPIO口模式设置为开漏输出模式(Open-Drain),推荐参考我们的应用例程(M601 M1601 M1820 1-wire例程);但是如果使用的是长线缆(超过50m)驱动温度芯片,由于长线缆的寄生电容较大,建议将DQ的GPIO设置为PP(Push-pull)模式,这时推荐使用参考例程(M601 M1601 M1820 MTS01 1-Wire-长线缆应用例程)。
更多问题详见产品FAQ资料,或咨询:sales@mysentech.com。