车载T-BOX中MCU和SoC通信方案(SPI通信方式)
Posted 不脱发的程序猿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了车载T-BOX中MCU和SoC通信方案(SPI通信方式)相关的知识,希望对你有一定的参考价值。
在车载T-BOX中,MCU和SoC之间必然存在数据通信,本篇博文将分享一种基于SPI方式的通信方案。
对汽车电子、CAN通信、UDS诊断技术感兴趣的小伙伴请关注公众号:美男子玩编程,公众号优先推送最新技术博文,创作不易,请各位朋友多多点赞、收藏、关注支持~
拓展学习:一文搞懂SPI通信协议。
SoC作为主机,MCU作为从机,配置模式如下所示:
- 通信模式:模式0;
- 通信速率:4.8Mbps;
- 数据存储:小端模式;
- 数据长度:每包256Byte。
MCU和SoC物理连接如图所示:
名词解析:
- MISO:主设备输入从设备输出;
- MOSI:主设备输出从设备输入;
- SCLK:时钟信号,主设备产生;
- CS:片选,主设备控制,低电平有效;
- S_RQ:从设备请求数据信号,通知主设备开始通信;
- M_RQ:主设备发送数据信号,通知从设备需要发送数据。
主设备和从设备通信有两种情况:主设备主动通信和从设备主动通信。
主设备主动通信机制如图所示:
通信机制解析:
- 当主设备有数据需要主动发送给从设备时,主设备需要发送M_RQ请求(拉高M_RQ引脚,高电平维持至少1ms);
- 从设备接收到主设备M_RQ信号(触发上升沿中断)后,准备SPI通信的配置和数据,准备完成后,发送S_RQ信号(拉高S_RQ引脚,高电平维持至少1ms);
- 主设备接收到从设备S_RQ信号(触发上升沿中断)后,开始SPI通信。
名词解析:
- △t1:从设备通信请求最大等待时长500ms(从设备发送S_RQ信号至主设备SPI通信结束释放CS产生的时长),如果超时,从设备会再次发起S_RQ请求信号;
- △t2:主设备的通信请求最大等待时长500ms(主设备发送M_RQ信号至从主设备接收到从设备发送S_RQ信号的时长),如果超时,主设备会再次发起M_RQ请求信号。
从设备主动通信机制如图所示:
通信机制解析:
- 当从设备有数据需要主动发送给主设备时,从设备准备SPI通信的配置和数据完成后,发送S_RQ信号(拉高S_RQ引脚,高电平维持至少1ms)请求主设备开启SPI通信;
- 主设备接收到从设备S_RQ信号(触发上升沿中断)后,开启SPI通信。
名词解析:
- △t1:从设备通信请求最大等待时长500ms(从设备发送S_RQ信号至主设备SPI通信结束释放CS产生的时长),如果超时,从设备会再次发起S_RQ请求信号。
以上是关于车载T-BOX中MCU和SoC通信方案(SPI通信方式)的主要内容,如果未能解决你的问题,请参考以下文章