精华内容
下载资源
问答
  • 总线接口与外设

    2018-11-01 15:18:43
    2. 物理接口的读写函数都是在总线驱动中(主机控制器)中实现,其读写函数功能仅仅是传输数据所用 3. 外设驱动程序读写函数一般有两个功能:  a:封装或者解析数据  b:调用控制器读写函数完成数据...

    个人小结:

     

    1. 物理接口:用来传输数据的 ----> 比如USB总线接口,sdio总线接口,I2C总线接口的等等

    2. 物理接口的读写函数都是在总线驱动中(主机控制器)中实现的,其读写函数的功能仅仅是传输数据所用

    3. 外设驱动程序的读写函数一般有两个功能:

            a:封装或者解析数据

            b:调用控制器的读写函数完成数据的传输

    4. 外设驱动程序的读写函数的调用方式一般也是两个:

            a:由外设驱动程序主动调用,比如I2C的外设

            b:由主机控制器的驱动回调,比如USB的外设、mmc的外设

     5. linux设备的分类,从设备的功能(表现形式)可分为下面三类

            字符设备、块设备、网络设备

    6. linux设备的分类,从数据交互的物理接口可分为许多类

         USB物理接口-------USB架构

         内存物理接口-------platform架构

         SDIO物理接口-----mmc架构

         I2C物理接口------I2C架构等等

    7. 外设驱动就是驱动架构与功能设备的组合

          USB物理接口 + 字符设备功能    比如 USB摄像头

          USB物理接口 + 块设备功能       比如 U盘

          USB物理接口 + 网络设备功能   比如 USB-WIFI

    8. 外设驱动的读写函数

         a. 借用总线的读写函数实现数据从接口的传输

         b. 根据设备的功能对数据进行封装与解析

         c. 将处理过的数据传递给用户层(上层)

    展开全文
  •  日前宣布推出这四款新型Vishay Siliconix PolarPAK器件面向电信及数据通信系统中同步整流、负载点转换器及OR-ing应用,市场上仅次于它们具有双面冷却功能器件相比,...,导通电阻栅极电荷乘积性能高12%...
  • 一般软件开发,接口是函数、类等外界对接门面。像互联网开发、企业应用、PC 软件开发,说到接口时指是这个含义。而嵌入式系统开发,常常会伴随着硬件设备使用。描述硬件时接口(英文表...

    命名:

    外设,peripheral。

    总线,bus。

    接口,interface。

     

    本文对这几个容易混淆的概念进行辨析,以便于更好地理解嵌入式系统。

     

    外设在个人电脑等领域是指主机以外的一些设备,如显示器、键盘、鼠标、打印机等。

     

    总线的概念一般都使用了其字面意思,比较好理解,先不细说。

     

    一般的软件开发,接口说的是函数、类等与外界对接的门面。像互联网开发、企业应用、PC 软件开发,说到接口时指的是这个含义。而嵌入式系统的开发,常常会伴随着硬件设备的使用。描述硬件时接口(英文表达还是 interface)有着不同的含义。

     

    下面将这三个嵌入式系统中的概念放在一起来讲。

    image.png

    要想明确地区分与辨别三个概念,可以参照上图。在 SoC 芯片与硬件板卡的抽象模型中,外设 <-> 总线 <-> 接口是线性连接的关系。总线连接了另外的两个东西。

     

    下面举例子来讲。

    image.png

    上图是 TI(德州仪器)的 OMAP-L138 芯片的功能框图,红色箭头所在的整个黑色加粗方框,左上角就是 Peripherals,这些都是外设,是相对于上方三个黑框核心部件之外的功能模块。外设名称里的“外”可理解为外围,是芯片上相对于核心部件的外围。

    image.png

    上图是广州创龙开发设计的基于 OMAP-L138 芯片的硬件板卡,红框中三个“接口”分别为 RS232、RS232、RS485。板卡上走线都为 UART,连接到芯片上的 UART 外设。当板卡这个接口连接了上位机等其他设备时,我们说 OMAP-L138 通过 UART “总线”进行相连,使用 UART “总线”进行通信。

    展开全文
  • 思考: 1、I/O接口的作用。 2、CPU与外设交换信息。 3、I/O端口编址。 4、CPU与外设之间数据传送方法。 一、I/O接口概述 ...2)状态信息:是外设通过接口送往CPU信息,作为外设与CPU之间
    思考:
    1、I/O接口的作用。 
    2、CPU与外设交换的信息。 
    3、I/O端口的编址。 
    4、CPU与外设之间数据传送的方法。
    

    一、I/O接口概述

    1、I/O接口的作用
    接口是介于CPU和外设之间的一种缓冲电路
    在CPU和外设之间起到速度匹配、信号转换等作用

    2、CPU与外设交换的信息
    主机与I/O设备之间的信息可分为数据信息、状态信息和控制信息。
    1)数据信息:它是CPU与外设之间传送的主要信息,可分为数字量、模拟量和开关量。(双向)
    2)状态信息:是外设通过接口送往CPU的信息,作为外设与CPU之间交换数据的联络信号,反映了当前外设所处的工作状态。(外设-》I/O)
    3)控制信息:是CPU通过接口传送给外设的信息,用来设计外设的工作方式、控制外设的工作等。(I/O-》外设)
    3、I/O接口的基本结构
    I/O端口是接口中存放不同信息的寄存器
    若干个端口加上相应的控制电路构成接口
    4、I/O端口的编址
    1)统一编址:对I/O端口和存储单元统一编排地址号,由I/O端口地址和存储单元地址共同构成一个统一的地址空间。
    特点:
    1、简化了指令系统的设计
    2、I/O端口和存储单元可用同样的寻址方式,给编程者提供了很大的方便
    缺点:减少了内存的地址可用范围

    2)独立编址:建立了两个地址空间,一个为内存地址空间,一个为I/O地址空间。内存地址空间和I/O地址空间是相对独立的。
    特点:
    优点:
    1、存储器地址空间不受I/O端口地址空间的影响
    2、专门的输入/输出指令与访问存储器指令有明显区别,便于理解和检查
    缺点:
    1、专用I/O指令增加了指令系统复杂性,且I/O指令类型少,程序设计灵活性较差
    2、要求CPU提供专门的控制信号以区分对存储器和I/O端口的操作,增加了控制逻辑的复杂性

    二、CPU与外设之间数据传送的方式

    1、程序传送方式
    该方式完全通过执行程序中的I/0指令来控制CPU与外设之间的数据交换,分为无条件传送和查询传送(有条件)
    1)无条件
    CPU对外设进行输入/输出操作时无需考虑外设的状态
    特点:
    优点:程序设计和接口电路都很简单
    缺点:在输入输出数据时不考虑外设的状态默认外设总是准备好多
    适用于:与简单外设进行少量的并不频繁的数据传送
    2)查询传送方式
    传送数据前,先测试外设的状态,待外设准备就绪,在执行I/O指令进行数据传送,否则循环测试等待
    特点:
    优点:能保证主机与外设之间同步工作,且硬件线路比较简单,程序也容易实现。
    缺点:浪费CPU时间,实时性差
    适用于:数据输入/输出不太频繁且外设较少,对实时性要求不高的情况。
    2、中断传送方式
    中断传送方式是当外设需要与CPU进行信息交换时,由外设向CPU发出请求信号,使CPU暂停正在执行的程序,转去执行数据的输入/输出操作(即中断处理),数据传送结束后,CPU再继续执行被暂停的程序
    特点:
    优点:CPU与外设可以并行工作,不必查询等待,
    工作效率高;系统实时性比查询方式要好得多。
    缺点:接口电路相对复杂,每进行一次数据传送都要转去执行中断处理程序,都要进行断点和现场的保护和恢复,浪费了很多CPU的时间。
    适用于:少量的数据传送
    3、直接存储器存取方式:(DAM)
    DAM方式适用于在外设和存储器之间进行大批量的高速数据交换,数据的传送不依赖CPU执行I/0指令,而是直接由专门的接口芯片DMA控制器来控制。
    传送过程中,CPU暂停指令的执行并让出总线控制权,由DMA控制器接管总线的控制权。传送过程全部由硬件实现,所有传送速率非常高。

    小结:

    在这里插入图片描述

    展开全文
  • SPI 串行外设接口

    2020-07-10 16:46:32
    ** SPI简介: ** 串行外设接口(Serial Peripheral ...主机负责初始化帧,这个数据传输帧可以用于读写两种操作,片选线路可以从多个从机选择一个来响应主机的请求。 有时SPI接口被称作四线式接口,这是为了与其

    SPI简介:

    串行外设接口(Serial Peripheral Interface Bus)SPI是一种用于芯片通信的同步串行通信接口规范,主要应用于单片机系统中。类似I²C。
    由摩托罗拉公司于20世纪80年代中期开发,后发展成了行业规范。它的典型应用有SD卡与液晶显示器

    SPI设备之间使用全双工模式通信,是一个主机和一个或多个从机的主从模式。
    主机负责初始化帧,这个数据传输帧可以用于读与写两种操作,片选线路可以从多个从机选择一个来响应主机的请求。

    有时SPI接口被称作四线式接口,这是为了与其他不同线制的数据传输接口加以区分。
    SPI准确来讲应为“同步串行接口”,但是它又与同步串行接口协议(SSI)是完全不同的两种协议。
    虽然SSI也是一个四线式同步通信协议,但是它使用差分信号,而且仅提供一个单工通信信道。
    于此相对地,SPI是一个单主机多从机的通信接口。

    SPI总线规定了4个保留逻辑信号接口:

    • SCLK(Serial Clock):串列时脉,由主机发出
    • MOSI(Master Output, Slave Input):主机输出从机输入信号(数据由主机发出)
    • MISO(Master Input, Slave Output):主机输入从机输出信号(数据由从机发出)
    • SS(Slave Select)/CS(Chip Select):片选信号,由主机发出,一般是低电位有效

    在这里插入图片描述
    尽管上面的引脚名称是最常用的,但在过去,有时会使用其他引脚命名方式,因此旧的集成电路产品的SPI端口引脚名称可能有所不同。

    操作

    SPI总线的通信操作可以在单个主设备与一或多个从设备之间进行。

    在只有单一从设备的情况下,如果从设备允许,SS引脚可以固定为逻辑低电平。然而有一些从设备需要片选信号的下降沿来触发动作。Maxim MAX1242 ADC就是一个例子,它在高→低转换时才会开始进行模数转换。对于多个从设备,每个从设备都需要一个独立的SS信号。

    大多数从属设备​​具有三态逻辑的特性,所以当器件未被选中时,它们的MISO信号变为高阻抗(逻辑断开)。没有三态输出的器件不能与其他器件共享SPI总线段,但是可以使用外接的三态逻辑缓存来解决这个问题。

    数据传输

    为了开始通信,总线上的主设备需要使用从设备支持的频率来配置时钟,这个频率最高为几兆赫兹左右。然后主设备将某根连接到从设备SS的线上的信号置为0来选中这个从设备。如果等待时间是必要的话(例如进行模数转换),主设备必须等待满这段时间之后,才可以发出时钟周期信号。

    在每个SPI时钟周期内,都会发生全双工数据传输。主设备在MOSI线上发送一个位,从设备读取它,同时从机在MISO线上发送一位数据,主机读取它。即使只有单向数据传输的目的,主从机之间的通信工作方式仍然是双工的。

    传输通常会使用给定字长的两个移位寄存器,一个在主设备中,一个在从设备中,它们之间的连接方式形成了一个虚拟的环形拓朴结构。数据通常先从最高位移出。在时钟信号边沿,主机和从机均移出一位,然后在传输线上输出给对方。在下一个时钟沿,每个接收器都从传输线接受对方发出的数据位,并且从移位寄存器的最低位推入。每完成这样一个移出——推入的周期后,主机和从机就交换寄存器中的一位数据。当所有数据位都经过了这样的移出——推入过程后,主机和从机就完成了寄存器上的数据交换。如果需要交换的数据比寄存器的位数还要长的话,则需要重新加载移位寄存器并重复该过程。传输可能会持续任意数量的时钟周期。完成后,主设备会停止发送时钟信号,并通常会取消选择从设备。

    传输寄存器通常包含8位。但是其他字长也很常见,例如触摸屏控制器或音频编解码器通常采用16位字长(如德州仪器的TSC2101),许多数模转换或者模数转换的设备则会采用12位字长。

    所有在总线上的没有被片选线激活的从设备必须忽略输入时钟和MOSI信号,并且不得从MISO发送数据。
    在这里插入图片描述

    独立的从设备配置

    在独立的从设备配置中,每个从设备都有独立的芯片选择线。 强烈建议在每个独立器件上使用电源和片选线之间使用上拉电阻,以减少器件之间的串扰。 这是SPI通常被使用的方式。 由于从机的MISO引脚连接在一起,因此它们需要为三态引脚(高,低或高阻抗)。

    中断

    SPI从设备有时会使用另一条信号线将中断信号发送到主设备的CPU。 例子包括来自触摸屏传感器的笔下中断,来自温度传感器的热限制警报,实时时钟芯片发出的警报, SDIO以及来自手机中声音编解码器的耳机插孔插入。 SPI标准中并不包括中断。 中断的使用既不被禁止也不被标准规定。

    SPI代码示例

    /*
     * 通过SPI协议在主设备和从设备之间交换一个字节的数据
     *
     * Polarity and phase are assumed to be both 0, i.e.:
     *   - 输入数据在SCLK的上升沿捕获。
     *   - 输出数据在SCLK的下降沿传播。
     *
     * 返回接收到的一字节的数据
     */
    uint8_t SPI_transfer_byte(uint8_t byte_out)
    {
        uint8_t byte_in = 0;
        uint8_t bit;
    
        for (bit = 0x80; bit; bit >>= 1) {
            /* Shift-out a bit to the MOSI line */
            write_MOSI((byte_out & bit) ? HIGH : LOW);
    
            /* Delay for at least the peer's setup time */
            delay(SPI_SCLK_LOW_TIME);
    
            /* Pull the clock line high */
            write_SCLK(HIGH);
    
            /* Shift-in a bit from the MISO line */
            if (read_MISO() == HIGH)
                byte_in |= bit;
    
            /* Delay for at least the peer's hold time */
            delay(SPI_SCLK_HIGH_TIME);
    
            /* Pull the clock line low */
            write_SCLK(LOW);
        }
    
        return byte_in;
    }
    

    优点和缺点

    优点

    • SPI协议默认是全双工通信。
    • 推挽式驱动器 (与开路漏极相反)可提供良好的信号完整性和高速度
    • 比I²C或SMBus更高的吞吐量 。 不限于任何最大时钟速度,可实现高速运行
    • 完整的传输位协议灵活性
    • 不限于8位字
    • 消息大小,内容和目的的任意选择
    • 非常简单的硬件接口
    • 由于电路较少(包括上拉电阻),因此通常比I²C或SMBus的功耗要低,
    • 没有仲裁或相关的失败模式
    • 从设备直接使用主时钟,不需要精密振荡器
    • 从站不需要唯一的地址 - 不像I²C或GPIB或SCSI
    • 不需要收发器
    • IC封装只使用四个引脚,而电路板布局或连接器则少于并行接口
    • 每个器件至多有一个独特的总线信号(芯片选择);其他信号均可以共享
    • 信号是单向的,允许简单的电偶分离
    • 简单的软件实现

    缺点

    • 即使是三线式SPI,也需要比I²C更多的IC封装引脚
    • 没有带内寻址; 共享总线上需要带外片选信号
    • 从机没有硬件流量控制 (但主机可以延迟下一个时钟边沿以降低传输速率)
    • 没有硬件从设备确认(主机可能无法传输并且不知道这一点)
    • 通常只支持一个主设备(取决于设备的硬件实现)
    • 没有定义错误检查协议
    • 没有正式的标准,验证一致性是不可能的
    • 与RS-232 , RS-485或CAN总线相比,它只能处理短距离内的数据传输。 (距离可以通过使用收发器
    • 如RS-422进行扩展)
    • 有许多现有的变体,使得很难找到支持这些变体的主机适配器等开发工具
    • SPI不支持热交换 (动态添加节点)。
    • 中断必须通过带外信号来实现,或者通过使用类似于USB 1.1和2.0的定期轮询来伪造
    • 一些变体,如双路SPI , 四路SPI和三线SPI是半双工的。
    展开全文
  • 串行外设接口SPI(serial peripheral interface)可进行主机和多片从外围器件信息传递,即主机对从机控制及从机向主机提供各种信息等,从而实现系统之间各种控制和操作。  关键词:ADμC812 串行通信 ...
  • 串行外设接口SPI模块

    2019-12-03 16:40:36
    串行外设接口SPI是原摩托罗拉公司推出一种同步串行通讯接口,用于微处理器和外围扩展芯片之间串行连接,目前已发展为一种工业标准。 目前各半导体公司推出大量带有SPI接口的芯片,为用户外围扩展提供灵活和...
  • 1 HPI接口功能及特点 ...主机是HPI口的主控者,HPI口作为一个外设与主机连接,使主机的访问操作很方便。主机通过以下单元与HPI口通信:专用地址和数据寄存器、HPI控制寄存器以及外部数据和接口控制信号...
  •  EZ-Host器件是一款多端口嵌入式主机/外设控制器,包含1个高性能16位RISC微控制器、2个可配置USB串行接口引擎(SIE)和1个能够众多标准接口相连可配置I/O功能块。它既可用作主机,也可用作外设,并支持多达4个...
  • 赛普拉斯半导体公司(Cypress Semiconductor Corp.)推出其专为汽车应用而优化CY7C67300 EZ-Host?... EZ-Host器件是一款多端口嵌入式主机/外设控制器,包含1个高性能16位RISC微控制器、2个可配置USB串行接口
  • 在Linux系统下,基于嵌入式处理器扩展USB主机端口工作原理,提出了USB主机接口的软硬件设计方案,该系统可增加在某些称重设备USB主机端口,抛开了PC机,既可作为主机,也可作为外设其他0TG设备直接实现点对...
  •  EZ-Host器件是一款多端口嵌入式主机/外设控制器,包含1个高性能16位RISC微控制器、2个可配置USB串行接口引擎(SIE)和1个能够众多标准接口相连可配置I/O功能块。它既可用作主机,也可用作外设,并支持多达4个...
  • 在面对日益复杂和高性能应用时,大多采用主机(由微控制器或微处理器充当)+DSP方式构成主从式系统,这样既可以利用DSP强大数字信号处理能力进行复杂运算,又可以利用微处理器丰富片内外设接口对整个系统...
  • 分析了USB主机层次结构,采用PowerPC8270处理器设计了一种基于PCI总线USB主机端设备,简化了主处理器USB控制器交互。在VxWorks操作系统下进行了USB...测试表明,能够稳定地支持对USB接口存储外设的读写访问。
  • Cypress 半导体公司推出其专为汽车应用而优化CY7C67300 EZ-Host... EZ-Host器件是一款多端口嵌入式主机/外设控制器,包含1个高性能16位RISC微控制器、2个可配置USB串行接口引擎(SIE)和1个能够众多标准接口相连
  •  随着计算机技术不断发展,为满足外设间以及外设与主机高速数据传输,Intel公司于1991年提出了PCI总线概念。PCI总线是一种能为主CPU及外设提供高性能数据通讯总线,其局部总线在33MHz总线时钟、32位数据...
  • 串行外设接口(SPI)

    2010-12-10 15:36:00
    串行外设接口实质上是一个将串行传输数据位发送到其它SPI 移位寄存器。数据传输时,一 个SPI 系统作为“主机”控制数据流,其它SPI 作为“ 从机'' ,主机控制数据移入移出。不 同CPU 可轮流...
  • 一、USART串行接口 串行接口分为异步串行接口和同步串行...USART的电气特性标准包括RS-232C、RS422、RS423和RS485等,其中RS-232C是最常见的串行通信接口(台式机的显示器与主机的连接线好像就是RS232吧) RS232有...
  • 一、为什么要用接口 接口按功能分为两类: ...外部设备一定要通过接口主机总线相连原因: 1.时序上原因 2.外部设备功能多种多样原因 3.外部设备信息既有数字式,又有模拟式原因 4.多个外设共享总...
  • SPI(同步外设接口)是由motorola开发全双工同步串行总线,其接口由MISO(串行数据输入),MOSI(串行数据输出),SCK(串行移位时钟) SS(从使能信号)4种信号构成。SS决定了惟一的与主设备通信从设备,主...
  • TMS320VC5402(VC5402)增强外设由软件等待状态发生器、锁相环时钟发生器、6通道直接存储器访问(DMA)控制器、增强型8位并行主机接口(HPI)等组成。两个可编程多通道缓冲串口(McBSP)能够全双工、快速地其他同步串口...
  •  USB接口以其数据传输快、连接简单、易于扩展、支持热插拔等特点已成为外设与PC通信主要方式之一。随着嵌入式系统发展,嵌入式微处理器需增加通用USB接口,以便实现与PC等USB主机系统通信。针对这样需求...
  • TMS320VC5402(VC5402)增强外设由软件等待状态发生器、锁相环时钟发生器、6通道直接存储器访问(DMA)控制器、增强型8位并行主机接口(HPI)等组成。两个可编程多通道缓冲串口(McBSP)能够全双工、快速地其他同步串口...
  • 主机需要访问外设的时候就涉及到寻找I/O接口寄存器方式,也就是寻找I/O端口方式。 外设编址有两种方法:外设单独编址与外设统一编址。 外设单独编址: 编址到寄存器,为每个寄存器(I/O端口)分配单独...
  • 摘要:本文基于DSP5402芯片HPI接口技术研究实例,重点介绍了在脑电数据采集系统中通过CCS5000集成开发环境实现DSP芯片HPI自举加载并与主机通信调试;并论述了系统硬件设计和各模块调试方法。  1 引 言  ...
  • USB是英文Universal Serial Bus缩写,中文含义是“通用串行总线”。它是一种应用在计算机领域新型接口技术。...而在外设端,使用USB接口的设备也与日俱增,例如数码相机、扫描仪、游戏杆、磁带
  • 插槽),外设接口卡,外部设备(硬盘,显示器,键盘,鼠标)以及电源等部件组成。 软件系统 软件系统主要功能如下 a.控制和管理硬件资源,协调各组成部件工作,以便使计算机更高效运行。 b.为用户尽可能...
  • 随着计算机技术不断发展,为满足外设间以及外设与主机高速数据传输,Intel公司于1991年提出了PCI总线概念。PCI总线是一种能为主CPU及外设提供高性能数据通讯总线,其局部总线在33MHz总线时钟、32位数据通路...
  • 几种标准外部接口输入/输出接口与主机内部所有模块连接是通过计算机系统总线完成接口...随着计算机在多媒体技术领域广泛应用,外设与主机高速并且大数据流传送需求,推动了接口技术发展,原来由...
  • I/O 接口与端口

    2020-05-26 10:31:17
    1 I/O 接口 1.1 什么是 I/O 接口 I/O 接口是 CPU 与外设...单台主机多个I/O 设备:如果不通过接口,那么CPU就会频繁与外设打交道,大大降低CPU效率 强依赖:会使外设硬件结构依赖于 CPU,对外设的发展不利 2 I/O 端口

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 288
精华内容 115
关键字:

外设与主机的接口