今天一天解决了一个问题.
在Wince下与设备通过SPI通讯,过程如下:
1. 给设备发Reset信号
2. 检查数据是否Ready
3. SPI通讯
为了具体化,我列出程序的伪代码:
1. 拉高Reset脚
2. Sleep 1毫秒(给出的规格是最少Delay 10us)
3. 拉低Reset脚
4. 检查Ready脚是否为高
5. SPI采集数据
Bug的表现是这样的:
a. 有时候测不到Ready信号
b. 有时候能取到正常的数据,大部分时候数据完全不对,偶尔前半部分数据对.
c. 为了模块化,我改了一版封装比较好的版本,就是把混在一起的语句用几个函数包装了起来.测试时发现封装好的版本大部分时候检测不到信......
阅读全文