打印
[PIC®/AVR®/dsPIC®产品]

系统内部单片机之间通讯什么方式最实用?一个单片机采集,一个显示和处理

[复制链接]
1158|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yuan_circle|  楼主 | 2014-3-6 23:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教大家个技术问题,我觉得我的单片机程序内容比较多,所以想把原来的系统改为两个单片机,然后一个单片机只做数据采集和处理,另一个做显示、按键和与上位机通讯等,请问怎么做这两个单片机间的通讯比较好,用什么通讯方式,IIC /SPI/232/CAN,并且保证通讯不出错,因为传输速度要求较高。?
沙发
yewuyi| | 2014-3-7 12:20 | 只看该作者
如果要求通信的可靠性非常高,推荐用CAN。

但其实用UART+CRC16校验+重发机制,也可以做到非常高的通信可靠度,UART的代码等相对CAN就简单了很多很多。

使用特权

评论回复
板凳
兰天白云| | 2014-3-7 15:59 | 只看该作者
仅主板内部通讯SPI足够

使用特权

评论回复
地板
donghailao| | 2014-3-7 22:36 | 只看该作者
两机协调工作,追求性能的话用双端口RAM芯片  
这种方式最大好处是,交换速度快,程序简单,各人忙各人的程序、时序相互独立避免互相影响。

此前达拉斯公司有一款型号为 DS1609的双端口,很好用 24管脚256个字节  两边对称各有8位地址和数据总线复用。很适合单片机使用,我曾小批量用在通信服务上,效果很好。可惜现在停产了。
现在流行的双端口,动辄60、80、100个管脚, 数据吞吐量固然大,可是价格和管脚资源,不太适合单片机用。

还有种多端口RAM,适合3台或者更多的单片机协调数据 例如  四端串口共享数据芯片 ds2015   

使用特权

评论回复
5
diweo| | 2014-3-8 20:57 | 只看该作者
一块芯片应该够了,在软件上多花点功夫吧。

使用特权

评论回复
6
NE5532| | 2014-3-8 22:20 | 只看该作者
你见过SPI接口的串行FLASH加CRC校验的么?信号不出板子,不需要校验。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝