spi调试记录

1.iwr1443作为spi主设备,msp432p401r作为spi从设备。
为什么选spi:本来选用的是uart,但是uart的速率比较低,115200是最稳定的,速率高了之后432接收就丢数据了。还有更重要的一点,uart的tx端默认是高电平,在1443已经断电的情况下,还是能通过432的tx脚进来一个3.3V,导致整体功耗增加,这是绝对不允许的。
2.spi采用三线通信-sck,mosi,somi。这里的三线制用法是比较小众的,还有一种三线制比较常见,即sck,cs,sda。
3.总线的初始状态是三线都是低电平。这里有个坑,在432接收数据的时候,因为432是低功耗常加电的,然后周期性的给1443上电断电,1443雷达测距返回数据。432上电后sck处于低电平,当给1443上电时,sck会先被拉高,Bios启动完成后sck又被拉低,这样就形成了一个时钟,如果432在1443上电前就已经准备好接收spi数据了,那么由于多出的这个时钟,432在接下来接收的数据将整体错位,向右移1bit。
4.432(从机)发送,1443(主机)接收数据,总线的时钟是由主机产生的。432应该在1443启动完成后先准备好要发送的数据,当1443开始接收数据(产生时钟)时,根据时钟状态,将数据填入miso线。这里应该注意时钟极性和相位的匹配,开始时432在时钟的下降沿给miso总线赋值,1443在sck的上升沿采数,这样的话在采第一个时钟的时候就多采了一个0,导致后面的数据偏移。所以432改为在上升沿传数,1443在下降沿采数,这样就不会出错了。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值