【Linux驱动】驱动设计硬件基础----串口、I2C、SPI、以太网接口、PCIE
1.前言
常见的外设接口与总线的工作方式,包括串口、I2C、SPI、USB、以太网接口、PCI和PCI-E、SD和SDIO等。
2.串口
RS-232、RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的。
3.I2C
I2C(内置集成电路)总线是由Philips公司开发的两线式串行总线,组成I2C总线的两个信号为数据线SDA和时钟SCL。为了避免总线信号的混乱,要求各设备连接到总线的输出端必须是开漏输出或集电极开路输出的结构。总线空闲时,上拉电阻使SDA和SCL线都保持高电平。
4.SPI
SPI(Serial Peripheral Interface,串行外设接口)总线系统是一种同步串行外设接口,它可以使CPU与各种外围设备以串行方式进行通信以交换信息。一般主控SoC作为SPI的“主”,而外设作为SPI的“从”。
5.以太网
以太网接口由MAC(以太网媒体接入控制器)和PHY(物理接口收发器)组成。以太网MAC由IEEE 802.3以太网标准定义,实现了数据链路层。千兆位以太网以IEEE 802.3z和802.3ab发布,作为IEEE 802.3标准的补充。
MAC和PHY之间采用MII(媒体独立接口)连接,包括1个数据接口与MAC和PHY之间的1个管理接口。数据接口包括分别用于发送和接收的两条独立信道,每条信道都有自己的数据、时钟和控制信号,MII数据接口总共需要16个信号。MII管理接口包含两个信号,一个是时钟信号,另一个是数据信号。通过管理接口,上层能监视和控制PHY。
6.PCIE
PCI(外围部件互连)是由Intel于1991年推出的一种局部总线,作为一种通用的总线接口标准。系统的各个部分通过PCI总线和PCI-PCI桥连接在一起。CPU和RAM通过PCI桥连接到PCI总线0(即主PCI总线),而具有PCI接口的显卡则可以直接连接到主PCI总线上。PCI-PCI桥是一个特殊的PCI设备,它负责将PCI总线0和PCI总线1(即从PCI主线)连接在一起,通常PCI总线1称为PCI-PCI桥的下游(Downstream),而PCI总线0则称为PCI-PCI桥的上游(Upstream)。
7.CPLD
CPLD(复杂可编程逻辑器件)由完全可编程的与或门阵列以及宏单元构成。CPLD中的基本逻辑单元是宏单元,宏单元由一些“与或”阵列加上触发器构成,其中“与或”阵列完成组合逻辑功能,触发器完成时序逻辑功能。典型的CPLD的单个宏单元结构如下:
宏单元的输出会经I/O控制块送至I/O引脚,I/O控制块控制每一个I/O引脚的工作模式,决定其为输入、输出还是双向引脚,并决定其三态输出的使能端控制。
8.参与讨论
==================================
新的文章内容和分享已更新在:
|工|·-·|重|·-·|号|:协议森林
==================================
【Linux驱动】驱动设计硬件基础----串口、I2C、SPI、以太网接口、PCIE相关推荐
- PX4模块设计之四十一:I2C/SPI Bus Instance基础知识
PX4模块设计之四十一:I2C/SPI Bus Instance基础知识 1. 基础知识 2. 基础类和定义 2.1 ListNode类 2.2 List类 2.3 BusCLIArguments类 ...
- Linux驱动设计——硬件基础
Linux 驱动设计之硬件基础 0.开篇说明 本片内容主要来源于宋宝华老师<Linux设备驱动开发> 1.处理器 目前主流的通用处理器(GPP)多采用SoC(片上系统)的芯片设计方法,集成 ...
- Linux驱动开发(硬件基础知识)——存储器
文章目录 前言 非易失性存储器 ROM FLASH NOR Flash 公共闪存接口(CFI) NAND Flash IDE 掉电丢失数据存储器 静态RAM(SRAM) 动态RAM(DRAM) 特定R ...
- USB/UART/I2C/SPI等接口传输速率
目录 USB总线 UART I2C总线 SPI总线 GPIO(RK3399) FMC 参考 USB总线 USB1.1: ---低速模式(low speed):1.5Mbps ---全速模式(full ...
- 《Linux设备驱动开发详解(第2版)》隆重出版
Linux设备驱动开发详解(第2版)(前一版狂销3万册,畅销书最新升级) [新品] 点击看大图 基本信息 * 作者: 宋宝华 * 出版社:人民邮电出版社 * ISBN:97 ...
- 嵌入式学习笔记(5)驱动设计的硬件基础-接口和总线
(1)串口 RS-232.RS-422与RS-485都是串行数据接口标准,最初都是由电子工业协会(EIA)制订并发布的. RS-232在1962年发布,命名为EIA-232-E.之后发布的RS-422 ...
- Linux设备驱动开发详解【二】_设备驱动相关硬件基础知识
本文简介 本文讲解底层驱动工程师必备的硬件基础,给出了嵌入式系统硬件原理及分析方法的全景视图. 2.1 节讲解微控制器.微处理器.数字信号处理器以及应用于特定领域的处理器各自的特点. ...
- 二、驱动设计的硬件基础
驱动设计的硬件基础 一.处理器 1.通用处理器(GPP) 2.数字信号处理器 二.存储器 三.接口与总线 1.串口 2.I²C 3.SPI 4.USB 5.以太网接口 6.PCI和PCI-E 7.SD ...
- 君君学Linux设备驱动第二天之硬件基础
一 处理器 1 通用处理器(GPP) 不针对具体应用领域进行体系结构和指令的优化,具有通用性,以支持复杂的运算和添加新功能. 2 微控制器(MCU):含有CPU和一些基本外设的芯片 微处 ...
最新文章
- 善于 调用Windows API
- 计算机录入速度标准,怎么提高电脑录入速度?
- 蜗牛星际 --【功耗测量】
- python循环套循环_零基础学python 14 循环套循环:循环的嵌套
- SpringBoot防止重复请求,重复表单提交超级简单的注解实现
- 关于CXF大文件的传输问题
- java相关协议_java相关网络协议是什么
- rabbitmq原理总结,Java反射的简单入门
- SQL Server读懂语句运行的统计信息 SET STATISTICS TIME IO PROFILE ON
- Dash for mac(代码文档浏览器)v6.0.8
- 数字图像处理 DCT变换
- c语言读取广播星历程序,GPS广播星历计算卫星位置和速度.doc
- 手把手教你搭建SpringCloud项目(十)集成OpenFeign服务接口调用
- 10个问题说清楚 什么是元宇宙 - 十问元宇宙:如何将抽象的概念具象化?
- Docker-核心篇(1)-CentOS7安装Docker社区版
- ROS下同步通信topic和异步通信service的异同
- 通信协议——Uart、RS232、RS485、SPI
- 压铸人的火眼金睛 | 智铸超云案例分享
- 1+X中级商城集群搭建(三台主机)
- 【网页设计】期末大作业html+css(体育网站)--杜丹特篮球介绍8页 带报告