总线的完整定义:计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束。

总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。

1、按照功能和规范,计算机总线可以被分为数据总线、地址总线、控制总线、扩展总线和局部总线,其中数据总线DB、地址总线AB和控制总线CB统称为系统总线。

数据总线用于传输数据信息,是双向三态形式的总线。常见的数据总线有ISA/EISA(Extended Industry Standard Architecture)总线,VESA(Video Electronics Standard Association)局部总线、PCI(Peripheral Component Interconnect)总线等。

地址总线用于传送数据的地址,是单向(CPU传向外部存储器或I/O接口)三态的。

控制总线用来传送控制信号和时序信号,传送方向由具体控制信号而定,一般是双向的。

2、按照传输数据的方式划分,可以分为串行总线和并行总线。串行总线中,二进制数据通过一根数据线逐位发送到目的器件;并行总线的数据线通常超过2根。常见的串行总线有SPI、I2C、UART、USB及RS232等。常见的并行总线有STD、PC总线和IEEE488总线等。

3、按照时钟信号是否独立,可以分为同步总线和异步总线。同步总线的时钟信号独立于数据,互联的部件或设备通过统一的时钟进行同步,而异步总线的时钟信号是从数据中提取出来的,依靠各部件或设备内部定时操作,所有部件或设备是以(请求和应答)信号握手的方式进行。SPI、I2C是同步串行总线,RS232是异步串行总线。

4、按照距离芯片远近等级,可以分为内部总线、系统总线和外部总线。内部总线是外设与处理器之间的总线,用于芯片的一级互连,比如I2C、SCI、I2S、SPI、UART、JTAG、CAN、SDIO、GPIO等。系统总线是各插件板与主板之间的总线,用于插件板的一级互连,通俗来说就是组装电脑时看到的各种排线,比如显卡、声卡、存储卡等和主板进行连接的ISA、AGP、PCI、SCSI、SATA等。外部总线是微机和外部其他设备之间的总线,用于设备的一级互连,比如串口(RS232、RS422)、并口、USB接口、音频接口等。


下面是一些常用的通信总线介绍

I2C(Inter-Integrated Circuit)总线:半双工同步串行总线,只需要SDA(数据线)和SCL(时钟线)两根线进行信息传送。

数据传输以字节为单位,传输过程中大端传输(先传高位,后传低位)。

I2C器件内部采用开漏输出的方法,且总线接上拉电阻,空闲状态默认高电平。

连接到相同总线的设备数量受到总线的最大负载电容限制。

具体的通信协议和时序问题可参考嵌入式常用技术概览之IIC(I2C)_C_XianRen的博客-CSDN博客

SPI(Serial Peripheral Interface)总线:高速全双工同步串行总线,需要4根线,分别是MOSI(主器件数据输出从器件数据输入)、MISO(主器件数据输入从器件数据输出)、SCLK(时钟信号,主器件产生)、CS(片选,从器件使能信号,由主器件控制)

数据按位传输,一个(SCLK)时钟信号传送一位数据,且在主器件移位脉冲下,传输过程高位在前,低位在后。

SPI根据CPOL(时钟极性,空闲时时钟状态为高电平还是低电平)和CPHA(时钟相位,数据采集是在时钟上升沿还是下降沿)的选择共有四种模式。

具体使用可参考SPI主从通信原理及使用_去学点东西吧的博客-CSDN博客_spi 主从

UART(Universal Asynchronous Receiver Transmitter):全双工异步串行总线。由波特率发生器(时钟分频器)、接收器(接收缓冲区、接收移位器)、发送器(发送缓冲区、发送移位器)组成,具有RXD(接收)、TXD(发送)和GND三条信号线。

数据以数据帧的形式进行传输,主要包括起始位(低电平表示开始),数据位(5到8位,先发送最低有效位)、奇偶校验位(1位,可有可无)、停止位(高电平表示结束,可以是1、1.5、2位)和空闲位(高电平表示空闲)。

CAN(Controller Area Network):半双工异步串行总线,国际上应用最广的现场总线之一。通信由CAN_High和CAN_Low两根5V差分信号线实现。

总线空闲时,所有节点都可以发送消息(多主控制),多个节点同时发送的情况下通过标识符(ID)进行仲裁决定优先级。

CAN总线通信过程没有地址的概念,在总线上增加节点时,其他节点的软硬件及应用层不需要改变。可连接的单元总数理论上没有限制,但实际上会受总线上的时间延迟及电气负载的限制。

具有错误检测、错误通知和错误恢复功能。所有单元都可以检测错误(错误检测功能),检测出错误的单元会立即同时通知其他所有单元(错误通知功能),正在发送消息的单元一旦检测出错误,会强制结束当前的发送。强制结束发送的单元会不断反复地重新发送此消息直到成功发送为止(错误恢复功能)。

具有故障封闭功能。CAN 可以判断出错误的类型是总线上暂时的数据错误(如外部噪声等)还是持续的数据错误(如单元内部故障、驱动器故障、断线等),并将引起持续数据错误故障的单元从总线上隔离出去。

具体的通信过程可以参考CAN总线重点总结_去学点东西吧的博客-CSDN博客

 LIN(Local Interconnect Network)总线:半双工异步串行总线,是一种低成本的辅助总线网络。基于SCI(UART)数据格式,采用单主多从的模式(无需仲裁)。仅需使用一根12V信号总线和一个无固定时间基准的节点同步时钟线(无需晶振或陶瓷振荡器就能实现自同步)。

LIN总线的一帧由报文头(Header)和报文响应(Response)两部分组成。报文头由主机节点的主机任务发出,包括同步间隔场(13个显性位0)、同步场(1个字节,固定0x55)和被保护标识符场(PID场,一个字节)。报文响应由一个主机节点或从机节点的从机任务发出,包括数据场(2/4/8个字节)和校验和场(1个字节)。报文头和响应之间有一个帧内空间间隔(可为0)。

传输过程中除同步间隔场外均满足字节场格式(1位起始位+8位数据位+1位终止位),且低位在前(小端传输)。

详细学习可参考:

说一说LIN总线 - 知乎

LIN Bus – 第22条军规

RS232:全双工异步串行总线,仅需一条发送线、一条接收线和一条地线即可实现通信。传输距离受负载电容影响,并且属于单端信号传送,存在共地噪声和共模干扰问题,因此一般用于短距离通信。

RS485:半双工异步串行总线,采用平衡发送和差分接收,具有抑制共模干扰的能力,通信距离几十米到上千米。

清晰认知总线(包括各类常用总线的总结)相关推荐

  1. 嵌入式系统设计中常用总线和接口

    任何一个微处理器都要与一定数量的部件和外围设备连接,但如果将各部件和每一种外围设备都分别用一组线路与CPU 直接连接,那么连线将会错综复杂,甚至难以实现.为了简化硬件电路设计.简化系统结构,常用一组线 ...

  2. FPGA常用总线IIC 与SPI选择策略

    1.1 FPGA常用总线IIC 与SPI选择策略 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA常用总线IIC 与SPI选择策略: 5)结束语. 1.1.2 本 ...

  3. 微型计算机没什么总线,微型计算机系统总线包括什么?

    2014-01-02 计算机系统总线分为哪几类? 一.什么是冯诺依曼体系结构?它的主要内容是什么? 20世纪30年代中期,德国科学家冯诺依曼提出,抛弃十进制,采用二进制作为数字计算机的数制基础.同时, ...

  4. 一文看懂嵌入式总线技术,ISA总线最流行?

    http://www.21ic.com/app/rf/201702/702829.htm [导读] 总线基础总线(Bus)是计算机各种功能部件之间传送信息的公共通信干线,它是由导线组成的传输线束,按照 ...

  5. 总线的定义, 并行总线和串行总线

    任何一个微处理器都要与一定数量的部件和外围设备连接,但如果将各部件和每一种外围设备都分别用一组线路与CPU直接连接,那么连线将会错综复杂,甚至难以实现.为了简化硬件电路设计.简化系统结构,常用一组线路 ...

  6. 10 计算机组成原理第六章 总线 总线的概念与分类 总线性能指标 总线仲裁 总线操作和定时 总线标准

    文章目录 1 总线的概念与分类 1.1总线的定义 1.2 总线的特点 1.3 总线的特性 1.4 总线的分类 1.4.1 串行总线与并行总线 1.4.2 按总线功能分类 1.5 系统总线的结构 1.6 ...

  7. 总线概述及常见总线(转)

    一. 总线概念 所谓总线(Bus),是指计算机设备和设备之间传输信息的公共数据通道.总线是连接计算机硬件系统内多种设备的通信线路,它的一个重要特征是由总线上的所有设备共享,可以将计算机系统内的多种设备 ...

  8. can总线rollingcounter_汽车CAN总线详解

    概述 CAN(Controller Area Network)总线协议是由 BOSCH 发明的一种基于消息广播模式的串行通信总线,它起初用于实现汽车内ECU之间可靠的通信,后因其简单实用可靠等特点,而 ...

  9. spi总线 上层调用_spi总线的mmc卡驱动调试总结 | 学步园

    这周调试挂载在spi总线sd卡驱动,总结一下 因为这个涉及到2个驱动,spi总线驱动和sd卡驱动,sd卡设备挂载在spi总线上并不像设备挂载在i2c总线上, i2c总线提供设备挂载需要的借口函数att ...

  10. 【Avalon总线】1.Avalon总线总体介绍

    最近在学习Avalon总线相关的知识,所以在学习的过程中写下了这一系列的博文.文章主要是根据ALTERA公司的文档写的.文章中如有错误请指出,谢谢! 1 Avalon总线总体介绍 Avalon总线提供 ...

最新文章

  1. C语言----表达式求值之隐式类型转换
  2. 计算机网络谢希仁第七版课后答案第三章 数据链路层
  3. redhat6.4 添加yum本地源和安装virtualbox增强组件
  4. Servlet线程安全
  5. Git/码云上多人协作,创建分支,上传修改
  6. boost::gil::threshold_adaptive用法的测试程序
  7. 编程之美----子数组的最大乘积
  8. 拦截地址栏参数_selenium操作chrome时的配置参数
  9. [机器学习-sklearn]鸢尾花Iris数据集
  10. 基于TI Davinci架构的双核嵌入式应用处理器OMAPL138开发入门(TI达芬奇双核开发资料 [
  11. BZOJ 1040 [ZJOI2008]骑士
  12. “git push”后返回“Error 403”解决方法
  13. 淘宝数据分析必须知道的15个核心问题
  14. 虚拟机中Linux扩容硬盘空间
  15. Win10安装CUDA报错NVIDIA安装程序失败
  16. 魅族ROOT在线申请地址
  17. Rabbit安装及简单的使用
  18. java横线_java 字体 加横线
  19. android pc模拟器哪个好用,电脑手游安卓模拟器哪个好用流畅 好用的安卓模拟器...
  20. 深入剖析NVMe Over Fabrics

热门文章

  1. Google Bot 简介
  2. 软件工程大作业(1)
  3. 织梦上传到服务器不显示图像,织梦dede源码前台会员发布文章带图片不显示怎么办?...
  4. DEDECMS织梦中华美食网早期版本菜谱网整站源码
  5. 3d touch android,苹果3DTouch好用?安卓这个功能不比它差!
  6. 数据结构实验之大规模数据交并集
  7. 《场景革命》读书笔记
  8. Invalid bound statement (not found): com.xingyu.demo.mapper.UserMapper.update错误
  9. vb计算机二级考试题库,国家计算机二级考试题库 VB上机试题第12套
  10. Win7 Python3.5安装Scrapy