巴菲特小编讨论易福门P+F传感器接口如何调测:
系统简化为 单片机+传感器
其中,P+F传感器是指带数字通信接口的传感器,跟单片机的连接方式,可能是 单总线,可能是 IIC,还可能是SPI,或者UART,再或者是自定义的接口协议。
对于这类的单元系统,怎么调试呢?
首先,找参考代码。
建议去官wang找找手册资料,有些官wang直接提供了参考代码,可以直接下载备用。
如果官wang没有提供代码,可以用搜索引擎去搜代码,也可以考虑到各大技术论坛去寻宝。
第二,找到参考代码后,建议先通读下P+F代码(假设这个代码是正确的),看下代码的组织架构和各功能函数的实现。
找到跟底层相关的函数,一般就是读数据操作,写数据操作,读/写命令等。
第三,修改硬件相关的实现代码,移植到自己的平台。
zui理想的情况,实现了自己想要的功能了。那么,恭喜你,进展很顺利。
万一出错了/达不到预期效果,怎么办?怎么排查问题呢?
建议如下,
首先,保证底层的读写操作是正确的。
--写操作,看下有没有能直接观测的。输出高电平/低电平,输出特定波形等
--读操作,读取特定寄存器的值,看下返回值是否符合预期。很多传感器都有ID值(或者特殊传感器),读取的话会返回固定数值。 读取这些寄存器,看下是否符合预期结果。 如果符合预期,可以初步得出底层操作是没问题的。
其次,操作传感器进行转换操作,读取转换结果,看下是否符合预期。(会涉及到传感器寄存器的操作,先操作哪个寄存器,后操作哪个寄存器。 往寄存器里写入哪个数值需要结合器件的使用说明书)
最后,P再分享一个常见的错误。
很多转换结果,需要进行数值运算和转换。
建议在P+F代码的开始阶段,先建立一个数组,模拟转换结果,然后进行转换,直接查看转换结果,看下是否满足预期。
数值的类型转换/除法运算等,避免这块出问题。
一边给客户处理询价,一边写。先写这些吧。希望您帮助到大家