最近在做一个项目,分为主从控制板子,两块板子都采用STM32F429,一块板子属于控制板,给电机发送控制信号、与上位机通信等,另外一块处理激光雷达数据以及其他传感器数据,协控板将雷达等传感器数据传给主控板,主控板决策,实现避障等操作,现在现在通信方式可想到的有五种 1、串口 2、I2C 3、SPI 4、CAN总线 5、FSMC 现在自己查询资料,IIC/SPI基本排除,因为他是用作模块内部比较多,剩下的有的用串口,有的CAN,请大神比较这两个哪个合适? 另外。查询到一篇论文中这样写:目前,主从式控制系统的通信方式主要有三种:(1)串行通信方式;(2)共享内存方式;(3)并行通信方式[65]。考虑到共享内存种方式实现较为复杂,串行通信方式速度有限,本文采用并行通信方式,通过STM32自带的FSMC总线,将FPGA当成外扩存储器进行读写,实现两者的通信。我在考虑有必要使用这种通信模式吗? 根据以上问题,希望大神解答 |
盘古UE-STM32F407工控板原理图
STM32F407 定时器触发DMA 求助大神
【MCU实战经验】基于STM32F407的音频播放器设计
【STM32F429心得\疑问】+STM32F4之FSMC和FMC
STM32F429读取IO口传输的数据速率
STM32F407ZGT6 手摸芯片背部重启
STM32F4 SPI 动作时,软件片选信号被拉高,IO口程序逻辑失控
STM32F401RE NUCLEO求助,串口一直不能进中断
读取STM32F407内部温度传感器值错误
STM32F429多路内部ADC独立采集的办法
2.次之:USB。既:USB串行通信接口。
注意!:USB也是串行通信接口。
现在单片机上并行的接口已经不多了,有也是诸如SDRAM的数据、地址总线;LCD的总线等。
如果不看电机控制,雷达响应 我选6、Ethernet
如果带上汽车环境,没有二话只选CAN
CAN总线误码率很高吗?它是信号差分的形式产生通信信号的吧,并且它的通信包含起始位,,数据校验位,结束位等,并且还有筛选器啥的,不是应该较稳定吗/ 请讲解一下,谢谢
您说的雷达响应是什么意思?我的硬件连接是这样的,协控板连接雷达,并将雷达的信号进行处理,将处理的结果给主控板,设计的是主控板和协控板的通信问题,即两块F429,,,另外,我们只是研究类似于机器人类型,没有涉及到汽车环境,所以,请您在给点建议,谢谢
那您的意思是两块板子之间通过USB串行通信比较合适吗?
另外,对于串口和CAN总线,这两种选择一个,您有什么建议吗
2个F429分别做host和device,或者通过otg来自动匹配主机,F429自身都可以满足这种需求了,也就是不会增加额外成本,而且速度也可以达到USB全速,所以我认为比较合适(比以太网成本低、技术投入少)。
你可以选择串口,技术实现低,但速度也低。