标题: 问一个很蠢得问题,求大神解释一下 工程里面的2个单片机芯片如何交流? [打印本页]

作者: 请叫我张三哥    时间: 2020-11-11 16:51
标题: 问一个很蠢得问题,求大神解释一下 工程里面的2个单片机芯片如何交流?
如果我一个工程里面需要有2个或者多个芯片,我需要对2个芯片都进行编程然后烧录?
如果需要的话,这些芯片是需要怎么样子进行交流,然后实现最终得功能!

作者: 心有浮生    时间: 2020-11-11 18:59
通信协议,可以自己定,也可以用iic或者spi啥的
作者: changhz    时间: 2020-11-11 22:25
这个要看应用需要了,简单的用IO就行了,也可以用数据传输的几个协议
Uart
I2S
I2c
SPI
距离无的话也可以用485

作者: CGS1273972181    时间: 2020-11-12 10:54
两个单片机之间的通信方式有非常多种,最常见比如串口,IIC,SPI
作者: 适得府君书    时间: 2020-11-12 13:33
比较多的使用串口进行芯片与芯片之间进行通信。
作者: liangker    时间: 2020-11-12 13:49
两个什么芯片
作者: 黄youhui    时间: 2020-11-12 13:50
心有浮生 发表于 2020-11-11 18:59
通信协议,可以自己定,也可以用iic或者spi啥的

如果是数据传输的话,建议别自己写,用SPI 串口比较好。自己写适用于少量的数据输送

作者: lightday    时间: 2020-11-12 14:06
通常都是制定协议通讯实现,这种每个芯片都要烧录程序。
当然也有支持级联的芯片,多个芯片可以级联到一块,芯片间数据可以直接读取,程序也可以只烧录一次即可。
作者: lovexulu    时间: 2020-11-12 15:34
这样子问恐怕并不能得到你想要的答案,芯片间的交流就像人与人交流用人类语言(英语,中文等等),芯片间用的是机器语言,简单的交流,你可以为它们定义语言比如一组8位0/1数字有256的数,每个数字代表一种意思。一组8位0/1数字记作1字节数据,一般机器交流256种表达意思够用了,那么它们之间采用I/O口直接连接就可以交流,当然也可以使用通用交流通道,I2C,SPI,UART等等,至于这些通道传输交流数据,由你来定。
例如:00000001:表示我已准备好!又例如:10000000:代表启动自毁程序。。。等等。。。
作者: 请叫我张三哥    时间: 2020-11-12 15:34
lightday 发表于 2020-11-12 14:06
通常都是制定协议通讯实现,这种每个芯片都要烧录程序。
当然也有支持级联的芯片,多个芯片可以级联到一块 ...

好的谢谢!那我懂了!
作者: 请叫我张三哥    时间: 2020-11-12 15:35
谢谢各位大神的解答,我就不一一回复了!
作者: SUN_    时间: 2020-11-12 18:23
我们甚至做个用一个单片机烧另一块单片机,同时可以通信,也试过单片机与FPGA的通信
作者: 小悬    时间: 2020-11-20 18:17
我认为应该是用串口。
作者: 请叫我张三哥    时间: 2020-11-24 11:55
lovexulu 发表于 2020-11-12 15:34
这样子问恐怕并不能得到你想要的答案,芯片间的交流就像人与人交流用人类语言(英语,中文等等),芯片间用 ...

谢谢大佬,我大概懂你们的意思了。就是说多芯片之间如果要进行数据交换通信的话,就需要一种协议(这个协议可以是自己制定的,也可以使用通用的协议比如I2C,SPI等等)。




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1