我是这么理解的,比如I2C的两根线上有6个设备,这两根线,我们习惯上叫总线。又比如SPI。这4根线上有5个设备。也可以把这4根线叫总线。翻翻比较老的单片机书籍,电路都是51和外接存储芯片的,写的数据总线和地址总线。绕得头大。其实也就是一个叫法。 为什么有这么多的协议,I2C,SPI,CAN,UART等等。是不同的协议有不同的优缺点。用着适合就好。比如I2C,就两根线,多简单,可以直接连接1302和24C02,也可以挂接OLED ,也可以连接TEA5767或者RDA5807。两个IO口就接了4个设备。多节省啊。这些也都是要求速度不是很快的。当然是挑简单的协议用了,这种情况适合在1个板内通讯。如果是两台机器之间的数据很多的,大部分用的是串口。只要设备都按照串口的通讯协议,设定好相同的速率,主机不动,从机随便换,都可以正常通讯。 所以说,还是根据实际情况,选择适合的就好。不用纠结名字是总线,还是接口的。 |
一般来说就是这样的: 高铁铁路是总线,动车站是接口(是有地址的),跑错车站(地址不对)是上不了车的(握手失败),车厢是协议(信号帧),乘客的车票决定了要进几号车厢,坐那个座位,而乘客就是数据(数据在信号帧中有固定位置) 不是很形象,但差不多就是这个样子。。。 |
通信中的总线是物理层面的,属于硬件层面;通信协议是非物理的,属于软件层面。 而接口是物理层面的,是两个功能模块对接的地方。 |
你说的这些东西,感觉知道,但又不知道怎么讲,只可意会!唉!! |
不同层面,不同角度理解功能和电路 |
总线 往往是连接不止2个(设备/系统/软件)的通讯连线 接口 往往是2个(系统/软件)之间的“通信”、数据交换 |