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

    2021-06-17 07:49:43
    中文名外设接口外文名Peripheral Interface英文简写PI定义计算机连接外设的接口用途计算机与外围设备交换信息领域计算机学科外设接口概念编辑语音外设接口(Interface)是计算机的CPU、存储器与外围设备,或者两种外围...

    外设指除了主机箱、显示屏、键盘以外的设备。接口是指MD产品输入输出的地方。那么外设接口就是连接外围设备的接口。

    中文名

    外设接口

    外文名

    Peripheral Interface

    英文简写

    PI定    义

    计算机连接外设的接口

    用    途

    计算机与外围设备交换信息

    领    域

    计算机学科

    外设接口概念

    编辑

    语音

    外设接口(Interface)是计算机的CPU、存储器与外围设备,或者两种外围设备之间,或者两种机器之间通过系统总线进行连接的逻辑电路(逻辑部件),它是CPU与外界进行信息交换的中转站。

    外设接口的基本功能:

    一是为信息传输操作选择外围设备;

    二是在选定的外围设备和主机之间交换信息,保证外围设备用计算机系统特性所要求的形式发送或接收信息。

    接口由接口电路、连接电缆和接口软件组成。[1]

    外设接口功能

    编辑

    语音

    外设接口在微型计算机和外围设备之间起着桥梁的作用,主要有以下功能:

    1.寻址功能:选择多个I/O接口中的其中一个端口 ;

    2.数据的寄存和缓冲功能;

    3.数据转换功能;

    4.联络功能;

    5.中断管理或DMA管理功能;

    6.命令控制。[1]

    外设接口传送信息

    编辑

    语音

    计算机CPU与外围设备之间传送的信息有三种:

    1.数据信息:是CPU和外围设备传送的基本信息,它可分为数字量、模拟量和开关量三种。

    2.状态信息:反映外围设备的工作状态,由外围设备通过接口传送给微型计算机。

    3.控制信息:由CPU传送给外设,用来设置外围设备的各种方式,产生相应的输入输出控制信号。

    I/O接口有相应的端口存放数据信息、状态信息和控制信息 。[1]

    外设接口接口及指令

    编辑

    语音

    CPU与外设之间的信息传送是通过I/O接口的端口来实现的,对I/O接口的访问方式取决于这些端口的编址方式,通常端口有两种编址方式:存储器影像的I/O编址方式和独立的I/O编址方式。

    1.存储器影像的I/O编址方式:用这种编址方式访问端口和访问存储器单元相同,它用访问存储器的指令访问I/O端口,用访问存储器的控制信号存储器读和存储器写作为I/O端口的读写控制信号。

    2.独立的I/O编址方式:CPU有专门的指令访问I/O端口,与之对应,有专门的I/O读和I/O写作为I/O读写控制信号,I/O的地址空间和存储器的地址空间可以重叠。[1]

    外设接口外设接口类型

    编辑

    语音

    外设接口的类型如下:

    分类标准接口名称

    传送方式并口串口

    功能选择可编程接口不可编程接口

    通用性通用接口专用接口

    操作同步性同步接口异步接口

    控制方式程序式接口DMA式接口

    下面会介绍几种接口。

    外设接口串行接口

    数据以串行(逐位进行传送)的方式传送的接口叫串行接口。串行接口是广泛应用于微型计算机系统的一种通用接口。串行接口用于连接慢速的外围设备(CRT显示器、调制解调器、打印机、扫描仪、键盘、鼠标等)到计算机的总线上,其设备的一端按位串行传送,计算机一端并行传送。

    串行接口部件内部有4个主要寄存器:控制寄存器、状态寄存器、数据输入寄存器和数据输出寄存器。

    控制寄存器:用来容纳CPU送给此接口的各种控制信息,从而决定了接口的工作方式。

    状态寄存器:用来指示传输过程中当前的传输状态或者某一种错误。

    数据输入寄存器:总是和串行输入并行输出移位寄存器配对使用的。在输入过程中,数据一位一位的从外围设备进入接口的移位寄存器,当接收完1个字节以后,数据就从移位寄存器送到数据输出寄存器,再等待CPU来取走。

    数据输出寄存器:总是和并行输入串行输出移位寄存器配对使用的。

    串行数据的传送方式分成3种基本的传送方式 :

    1.单工传送方式:数据在通信链路上只能朝一个固定的方向进行传送操作;

    2.半双工传送方式:在半双工通信链路中,使用同一根通信线分时地进行数据的发送和接收;

    3.全双工传送方式:数据可以在两个方向上同时进行传送操作。[2]

    外设接口并行接口

    并行接口的引线包括数据信号线,控制信号线以及状态信号线。

    控制信号线:

    选通(STB):低电平有效,用于主机对打印机的数据选通。

    自动走纸(AUTO LF):低电平有效,打印完后自动走纸换行。

    初始化(INIT):低电平有效,使打印机的控制器初始化信号。

    选择输入(SLCT IN):低电平有效,使打印机处于联机状态。

    状态信号线:

    应答信号 (ACK):低电平有效,表示打印机准备好,可以接收数据。

    忙信号 (BUSY):高电平有效,表示打印机处于忙状态。

    无纸 (PE):高电平有效,表示打印机缺纸。

    联机 (SLCT):高电平有效,表示打印机为联机状态。

    出错 (ERROR):低电平有效,表示打印机出错,包括无纸、脱机、错误状态。

    并行接口有如下一些操作:

    1.经过并行接口把数据送入CPU的操作过程

    ①外围设备将数据发送给接口,且使状态线的“输入数据准备就绪”信号变成高电平。

    ②在并行接口把数据送到数据缓冲寄存器的同时,作为对外围设备的响应信息,将“输入数据回答”信号线变成高电平。

    ③当外围设备接收到这个信号后,便将“输入数据准备就绪”信号和数据撤消掉。

    ④当数据到达并行接口之后,将接口状态寄存器中“输入准备就绪”状态位置位,以供CPU查询,或向CPU发出一个中断请求。

    ⑤当CPU从并行接口读取到数据后,并行接口会自动将状态寄存器中的“输出准备就绪”状态位清零,并使数据总线处于高阻抗状态。[2]

    外设接口IDE接口

    IDE(Integrated Device Electronics,电子集成驱动器)是专门为硬盘子系统连接而设计的接口,也适用于软盘驱动器和光驱的连接 。IDE也叫ATA(AT Attachment)接口。

    IDE接口通过40芯扁平电缆将主机和磁盘子系统或光盘子系统相连,采用16位并行传输,其中,除了数据线外,还有一组DMA请求和应答信号、1个中断请求信号、I/O读信号、I/O写信号,以及复位信号和地信号等。同时,IDE另用1个4芯电缆将主机的电源送往外设子系统。

    1个IDE接口可以连接2个硬盘 。

    IDE接口优点:价格低廉、兼容性强、性价比高。

    IDE接口缺点:数据传输速度慢、线缆长度过短、连接设备少。[1]

    外设接口SCSI接口

    SCSI(Small Computer System Interface)意为小型计算机系统接口,原是小型计算机的标准外设接口,用于连接磁盘机、磁带机等高速外围设备。已广泛应用于微型计算机系统以及许多工作站,是外围设备接口中比较成功的一种接口。主要用于高档服务器系统连接硬盘、光盘驱动器、磁带机等。和IDE接口相比,SCSI接口速度快,可连接的设备多,但造价高。

    在系统中应用SCSI必须要有专门的SCSI控制器,也就是一块SCSI控制卡,才能支持SCSI设备。[1]

    外设接口USB接口

    通用串行总线USB(Universal Serial Bus)接口是近几年推出的一种全新的外围设备接口。它是一种高速的通信接口,它的性能比系统所采用的标准串行接口和并行接口都要好。

    USB支持热插拔,即插即用的优点,所以USB接口已经成为MP3的最主要的接口方式。USB有两个规范,即USB1.1和USB2.0。

    USB1.1是较为普遍的USB规范,其高速方式的传输速率为12Mb/s 。

    USB2.0规范是由USB1.1规范演变而来的。它的传输速率达到了480Mb/s,即60MB/s,可以满足大多数外设的速率要求。

    USB是一种全新的,高速、灵活、通用、方便、可靠的接口。主要特点有:

    1.物理接口是一个通过4线连接的接口。

    2.可以连接外设、复合设备和集线器。它采用的是分层的、星形的拓扑结构。最多可以连接5级集线器,可连接的外围设备能多达127台。

    3.传输速率高。USB1.1的最高位速率为12Mb/s ,USB2.0的最高传输速率为480Mb/s,USB3.0的理论速度甚至高达5Gb/s。

    4.可靠性高。由于USB采用平衡传输方式,抗干扰性好;同时USB带硬件纠错能力,可完成对软件透明的检错和重发。[1]

    参考资料

    1.

    袁新燕 著.计算机外设与接口技术:高等教育出版社,2009

    2.

    李朝青 著.单片机原理及串行外设接口技术: 北京航空航天大学出版社,2008

    展开全文
  • 计算机外设包括哪些

    2021-06-23 07:40:06
    外部设备简称“外设”,是指连在计算机主机以外的硬件设备。对数据和信息起着传输、转送和存储的作用,是计算机系统中的重要组成部分。计算机外设是什么?下面是小编给大家整理的一些相关信息,希望对大家有帮助!随着...

    外部设备简称“外设”,是指连在计算机主机以外的硬件设备。对数据和信息起着传输、转送和存储的作用,是计算机系统中的重要组成部分。计算机外设是什么?下面是小编给大家整理的一些相关信息,希望对大家有帮助!

    随着我国计算机应用的迅速普及以及网络化、信息化应用的日益广泛,使市场对计算机外部设备的需求不断增长,从而拉动了我国计算机外部设备产业的形成和快速发展。如今,有些产品已形成了规模化生产并占有了一定的市场份额。预计未来几年,我国计算机外部设备产业将在研发自主核心技术、培育自有品牌、提高产品性价比、扩大生产规模、增加行业应用解决方案等方面不断进步,并有望在某些产品领域与国际品牌展开竞争。

    由于外部设备种类繁多,有的设备兼有多种功能,到目前为止,很难对外部设备作出准确的分类。按照功能的不同,大致可以分为输入设备、显示设备、打印设备、外部存储器和网络设备五大类。

    输入设备

    输入设备***Input Device ***是人或外部与计算机进行交互的一种装置,用于把原始数据和处理这些数据的程序输入到计算机中。现在的计算机能够接收各种各样的数据,既可以是数值型的数据,也可以是各种非数值型的数据,如图形、图像、声音等都可以通过不同类型的输入设备输入到计算机中,进行存储、处理和输出。

    显示设备

    在计算机输出设备中显示设备相当于我们的眼睛,我们要了解操作是否正确,结果是什么,通常都通过显示设备来观察。目前计算机显示设备主要有CRT显示器、LCD显示、等离子显示器和投影机。而用于微型计算机中的主要是CRT显示器和LCD显示器。

    打印设备

    打印机***printer***是计算机的输出设备之一,将计算机的运算结果或中间结果以人所能识别的数字、字母、符号和图形等,依照规定的格式印在纸上的设备。打印机的种类很多,按打印元件对纸是否有击打动作,分击打式打印机与非击打式打印机;按打印字符结构,分全形字打印机和点阵字符打印机;按一行字在纸上形成的方式,分串式打印机与行式打印机;按所采用的技术,分柱形、球形、喷墨式、热敏式、激光式、静电式、磁式、发光二极管式等打印机。衡量打印机好坏的指标有三项:打印分辨率,打印速度和噪声。

    外部存储器

    外部存储器是用来存储计算机中不直接与运算器发生联系的那些指令和数据等信息的设备。它最初主要用来扩充计算机内存的容量,但随着计算机体系结构的变化,后来成为联机定时、分时系统的随机存储体系中不可缺少的部分,软件和数据等信息大都存放在高速外存中。

    外存能长期保存信息,并且不依赖于电来保存信息。但是由机械部件带动,其速度与内存相比就显得慢很多。外存储器不直接与运算器和控制器交换信息,而是在处理机控制下,通过外部控制部件把所需的数据和程序随时送到内存储器,并把运算过程中的结果存储起来。这样就解决了速度和容量、造价之间的矛盾。

    网络设备

    为了高速、准确地进行信息传送,达到资源共享,提高计算机的利用率,往往把许多计算机系统通过专门的设备和通信线路连成计算机网络。随着计算机技术的飞速发展,计算机网络已经渗透到社会的各个领域,与我们的生活密切相关。网络控制着社会经济的发展,也使人们的工作和生活方式发生了巨大的变化。计算机与计算机、工作站与服务器进行连接时,除了使用连接介质外,还需要网络传输介质互联设备、网络物理层互联设备、数据链路层互联设备、网络层互联设备和应用层互联设备等五类中介设备。

    展开全文
  • 打开quratus把所需要的文件添加进去,ARM公司有写好的gpio外设模块,拿来直接用。有很多外设我们只需要添加到工程内部,然后写一些接口,分配地址,然后就可以写软件了。添加完成后要把cortex_m3这个文件设置为顶层...

    使用一个外设之前,你要弄明白这个外设是干什么的,它是怎样工作的,它的输入输出接口都是啥,你还要知道怎样给外设分配地址。
    GPIO的具体硬件结构在这里不多说了。(如果你要自己写代码,那硬件结构必须弄得明明白白。)我们用到的GPIO模块是ARM公司提供的,拿来用就行,GPIO的硬件结构懂个大概就行。
    写外设的时候,往往要和寄存器打交道,寄存器分为片内寄存器和外部接口寄存器,内部寄存器就是R0-R15,R0-R15也叫通用寄存器,CM3内部还有有特殊功能寄存器,这个大家应该都清楚。下面括号内容可以不看。
    (寄存器就是存储单元,给有特定功能的内存单元取一个别名,这个别名就是我们经常说的寄存器,比如PC指针寄存器,这个给已经分配好地址的有特定功能的内存单元取别名的过程就叫寄存器映射。访问寄存器要使用结构体指针。
    那GPIO有哪些寄存器呢,这些寄存器是干什么的??
    寄存器用于 GPIO 的控制,使用 4 个寄存器即可操作一个 GPIO,可以很方便的实现 GPIO 的各种应用。这4个寄存器分别是
    1.控制方向的寄存器
    2.控制输出电平状态的2个寄存器
    3.反映引脚电平状态的寄存器
    通过地址操控这些寄存器,就可以使用GPIO。硬件代码里要给GPIO这个从设备分配地址,KEIL软件代码里要写好结构体,通过结构体控制GPIO。打个比方,硬件代码就好比水箱。写软件代码好比往水箱里灌水。
    例程以2个16位GPIO为例,需要几个端口就定义几个。
    在顶层文件中定义GPIO地址(定义地址的目的是让CPU访问它,后面还要对地址解码,解码时把定义好的地址传送到decode模块中,你也可以仅在decode中定义地址,但推荐在顶层定义,以参数化的形式传递到decode模块),定义端口,定义gpio的中断。顶层是和总体架构文件,有大量的例化。注意,系统文件我们要自己修改。

    在顶层定义gpio的地址

      parameter BASEADDR_GPIO0  = 32'h4001_0000, // GPIO0 peripheral base address
      parameter BASEADDR_GPIO1  = 32'h4001_1000, // GPIO1 peripheral base address
    

    在顶层例化gpio_0

    cmsdk_ahb_gpio #(
       .ALTERNATE_FUNC_MASK(16'hFFFF),
       .ALTERNATE_FUNC_DEFAULT(16'h0000),
       .BE(0)
      )
    u_ahb_gpio_0 (
        // AHB Inputs
       .HCLK(clk),                   
       .HRESETn(cpuresetn),        
       .FCLK(clk), 
       .HSEL(gpio0_hsel),       
       .HREADY(1'b1),
       .HTRANS(HTRANSS),
       .HSIZE(HSIZES),
       .HWRITE(HWRITES), 
       .HADDR(HADDRS[11:0]), 
       .HWDATA(HWDATAS),
    
       .ECOREVNUM(4'b0),
    
       .PORTIN(p0_in), 
    
       .HREADYOUT    (gpio0_hreadyout),
       .HRESP        (gpio0_hresp),
       .HRDATA       (gpio0_hrdata),
    
       .PORTOUT(p0_out),
       .PORTEN(p0_outen),
       .PORTFUNC(p0_altfunc),
    
       .GPIOINT(gpio0_intr[15:0]),
       .COMBINT(gpio0_combintr));
    
    

    还要把以上定义的系统参数传递到地址解码文件(decode.v)中,地址解码就相当于多路选择器,根据地址多选1,选中你需要的外设模块进行访问。在系统文件最重要的就是把GPIO挂到系统总线上,解码和挂总线如下,其中挂总线部分省略了大量无关代码:

    decode被例化到顶层的样子,它的作用是输出一堆外设的选择信号

      // AHB address decode
      cmsdk_mcu_addr_decode #(
         .BASEADDR_GPIO0       (BASEADDR_GPIO0),
         .BASEADDR_GPIO1       (BASEADDR_GPIO1),
         .BOOT_LOADER_PRESENT  (BOOT_LOADER_PRESENT)
        )
        u_addr_decode (
        // System Address
        .code_haddr   (code_haddr),
        .code_hsel    (code_hsel),
        .sys_haddr    (sys_haddr),
        .sys_hsel     (sys_hsel),
    
        .remap_ctrl   (remap_ctrl),
    	
    	//把选择信号输出
        .apbsys_hsel  (apbsys_hsel),
        .gpio0_hsel   (gpio0_hsel),	    
        .gpio1_hsel   (gpio1_hsel),
    
      );
    

    decode文件中关于gpio的译码逻辑。decode文件生成选择信号,输出给系统顶层。

      assign gpio0_hsel   = (sys_haddr[31:12]==
                             BASEADDR_GPIO0[31:12]) & sys_hsel;   // 0x40010000
      assign gpio1_hsel   = (sys_haddr[31:12]==
                             BASEADDR_GPIO1[31:12]) & sys_hsel;   // 0x40011000
    
    //把GPIO挂到总线上
        .HSEL5        (gpio0_hsel),        // Input Port 5
        .HREADYOUT5   (gpio0_hreadyout),
        .HRESP5       (gpio0_hresp),
        .HRDATA5      (gpio0_hrdata),
        .HSEL6        (gpio1_hsel),        // Input Port 6
        .HREADYOUT6   (gpio1_hreadyout),
        .HRESP6       (gpio1_hresp),
        .HRDATA6      (gpio1_hrdata),
    

    cmsdk_ahb_gpio.v这个文件是不需要你写的,添加进来即可,这个文件里还包括2个和gpio相关的文件,这2个文件是用来实现gpio底层逻辑的,都是ARM提供,添加进来即可。

    再来讲一下decode.v文件,这个也是需要我们自己修改的。每添加一个外设,就要相应修改decode文件中的代码,下面是对外设解码的相关逻辑。

      // ----------------------------------------------------------
      // Peripheral Selection decode logic
      // ----------------------------------------------------------
    
      assign apbsys_hsel  = (sys_haddr[31:16]==16'h4000) &
                            sys_hsel;                           // 0x40000000
      assign gpio0_hsel   = (sys_haddr[31:12]==
                             BASEADDR_GPIO0[31:12]) & sys_hsel; // 0x40010000
      assign gpio1_hsel   = (sys_haddr[31:12]==
                             BASEADDR_GPIO1[31:12]) & sys_hsel; // 0x40011000
      assign sysctrl_hsel = (sys_haddr[31:12]==20'h4001F) &
                            sys_hsel;             
    
    在顶层module中,把IO设置为inout数据类型,在顶层模块定义一个参数parameter,用来设置GPIO模块的基地址。把参数都例化到system.v这个文件
    
      inout  wire  [15:0]  P0,
      inout  wire  [15:0]  P1,
    
      localparam BASEADDR_GPIO0       = 32'h4001_0000;           //外设基地址
      localparam BASEADDR_GPIO1       = 32'h4001_1000;
    

    顶层定义几个连线变量,用于例化到system.v中

      wire    [15:0]  p1_in;         // I/O port #1 input
      wire    [15:0]  p1_out;        // I/O port #1 output
      wire    [15:0]  p1_outen;      // I/O port #1 output enable (tristate buffer control)
      wire    [15:0]  p1_altfunc;    // I/O port #1 alternate function
    
    

    例化到system.v

        // IO Ports
        .p0_in            (p0_in),
        .p0_out           (p0_out),
        .p0_outen         (p0_outen),
        .p0_altfunc       (p0_altfunc),
    
        .p1_in            (p1_in),
        .p1_out           (p1_out),
        .p1_outen         (p1_outen),
        .p1_altfunc       (p1_altfunc),
    
    

    除了端口要例化,GPIO外设基地址也要例化。

          .BASEADDR_GPIO0 (BASEADDR_GPIO0),  // GPIO0 Base Address
          .BASEADDR_GPIO1 (BASEADDR_GPIO1),  // GPIO1 Base Address
    

    外设基地址既不是输入变量,也不是输出变量,例化时要把它写道"#()"的括号里,学过verilog的人应该都知道。

    至此,gpio已经刮到了总线上。接下来就是写用keil软件的过程,我们需要在启动文件添加一些中断,还要写一些结构体,用于设置GPIO的各种参数,给GPIO结构体中变量赋值的过程就是写寄存器的过程,我们透过结构体操控了寄存器,进而控制了GPIO。

    扩展外设步骤:

    1. 扩展Decoder
    2. 在Interconnect中增加Slave Port
    3. 在Interconnect中将新增的Slave Port与扩展的Decoder HSEL信号以及Slave MUX连接
    4. 顶层连接外设、外设接口、总线
    5. C语言程序中编写外设接口结构体
    展开全文
  • 2002.12计算机组成原理§1主机与外设的连接第十章 现代计算机系统中外部设备的种类繁多,各类外部设备不仅结构组成和工作原理不同,而且与主机的连接方式也是复杂多变的。因此,计算机的输入/输出子系统成为整个...

    2002.12计算机组成原理§1主机与外设的连接

    第十章 现代计算机系统中外部设备的种类繁多,各类外部设备不仅结构组成和工作原理不同,而且与主机的连接方式也是复杂多变的。因此,计算机的输入/输出子系统成为整个计算机系统中最具有多样性和复杂性的部分,本章将比较详细地介绍几种典型的输入/输出子系统的工作原理,以及总线技术。 §1 主机与外设的连接 1.1 主机和外设的连接方式 (1) 辐射型连接(星型) 以主机为中心向各设备辐射的星形连接,这种连接方式具有控制简单的优点,但结构复杂、连线多,缺乏灵活性。 (2) 总线型连接 各外设经集电极开路门或三态门挂接在总线上,故称为总线型连接。这种连接方式具有结构简单,易于扩展等优点,而且各外设之间也有可能通过同一组总线直接通信。其缺点是所有的外设都通过同一组总线分时地工作,由于信息吞吐量有限,将影响交换速度。 §1 主机与外设的连接 (3) 结合型连接 前述两种方式的结合型。主机通过“通道”来管理外设的输入/输出操作,主机与通道间采用辐射型连接,而通道和外设间则采用总线型连接。 1.2 输入/输出接口 无论何种外设,以何种方式与主机相联,仔细分析它们之间的全部动作,可以看出两者之间是在进行信息交换。输入/输出接口(I/O 接口)是主机和外设之间的交接界面,通过接口可以实现主机和外设之间的信息交换。 §1 主机与外设的连接 主机和外设之间需要交换的信息有: (1) 数据信息 这类信息可以是通过输入设备送到计算机的输入数据,也可以是经过计算机运算处理和加工后,送到输出设备的结果数据。传送可以是并行的,也可以是串行的。 (2) 控制信息 这是CPU对外设的控制信息或管理命令,如外设的启动和停止控制、 输入或输出操作的指定、工作方式的选择、中断功能的允许和禁止等。 §1 主机与外设的连接 (3) 状态信息 这类信息用来标志外设的工作状态,CPU 在必要时可通过对它的查询来决定下一步的操作。比如,输入设备数据准备好标志,输出设备忙闲标志等。 (4) 联络信息 这是主机和外设间工作的时间配合信息,它与主机和外设间的信息交换方式密切相关。通过联络信息可以决定不同工作速度的外设和主机之间交换信息的最佳时刻,以保证整个计算机系统能统一协调地工作。 §1 主机与外设的连接 (5) 外设识别信息 这是I/O寻址的信息,使CPU能从众多的外设中寻找出与自己进行信息交换的唯一外部设备。 1.3 接口的功能和基本组成 1. 接口的功能 (1) 实现主机和外设的通信联络控制 接口中的同步控制电路用来解决主机与外设的时间配合问题。 §1 主机与外设的连接 (2) 进行地址译码和设备选择 当CPU送来选择外设的地址码后,接口必须对地址进行译码以产生设备选择信息,使主机能和指定外设交换信息。 (3) 实现数据缓冲 在传送过程中,先将数据送入数据缓冲寄存器中,然后再送到输出设备或主机中去。 (4) 数据格式的变换 在输入或输出操作过程中,为了满足主机或外设的各自要求,接口电路中必须具有完成各类数据相互转换的功能。 §1 主机与外设的连接 (5) 传递控制命令和状态信息 当CPU要启动某一外设时,通过接口中的控制命令寄存器向外设发出启动命令;当外设准备就绪时,则有状态信息送回接口中的状态寄存器,为CPU 提供反馈信息,告诉CPU,I/O设备已经具备和CPU交换数据的条件。当外设向CPU提出中断请求和DMA请求时,CPU也有相应的响应信号反馈给外设。 §1 主机与外设的连接 2. 接口的基本组成 接口中要分别传送数据信息、控制信息和状态信息。大多数计算机都把I/O设备的状态信息视为输入数据,而把控制信息看成输出数据,并在接口中分设各自相应的寄存器,赋以不同的端口地址,各种信息分时地使用数据总线传送到各自的寄存器中。 接口与端口是两个不同的概念。端口是指接口电路中可以进行读/写的寄存器,若干个端口加上相应的控制逻辑电路才组成接口。 §1 主机与外设的连接 通常,一个接口中包含有数据端口、控制端口和状态端口。存放数据信息的寄存器称为数据端口,存放状态信息的寄存器称为状态端口,存放控制命令的端口称为命令端口。 CPU通过输入指令可以从有关端口中读出信息,通过输出指令可以把信息写入有关端口。对状态端口只进行输入操作,将设备状态标志送到CPU 中去;对命令端口只进行输出操作,CPU将向外设发送各种控制命令。因此,在有的接口电路中状态信息和控制信息共用一个寄存器,称之为设备的控制状态

    展开全文
  • CPU的工作过程

    千次阅读 2021-03-10 09:09:50
    CPU的工作过程 CPU的基本工作是执行存储的指令序列,即程序。程序的执行过程实际上是不断地取出指令、分析指令、执行指令的过程。 CPU从存放程序的主存储器里取出一条指令,译码并执行这条指令,保存执行结果,紧...
  • 9-1 主机与外设的连接主机与外设的连接 输入输出接口 主机和外设的连接方式有辐射型连接、总线型连接等。 输入输出接口(I/O接口)是主机和外设之间的交接界面,通过接口可以实现主机和外设之间的信息交换。 输入输出...
  • 外部设备简称“外设”,是指连在计算机主机以外的硬件设备。对数据和信息起着传输、转送和存储的作用,是计算机系统中的重要组成部分。随着我国计算机应用的迅速普及以及网络化、信息化应用的日益广泛,使市场对...
  • 第七章 计算机和外设的数据传输 ;接口电路中通常包括3种信息,即:...每种状态用1位表示,每个外设可以有几个状态位,它们可由CPU读取,以测试或检查外设的状态,决定程序的流程。3.控制信息控制信息是CPU通过接口传...
  • 微型计算机与外设.ppt

    2021-06-27 12:14:56
    微型计算机与外设第七章 微型计算机和外设的数据传输 7.1 接口的基本概念 7.2 CPU与输入/输出设备之间的信号 7.3 接口部件的I/O端口 7.4 CPU和外设之间的数据传送方式 7.1 接口的基本概念1 . 接口的概念 外设必须...
  • (2)“记录”外设工作状态,并“通知”主机,为主机管理外设提供必要信息。接口中用状态寄存器记录外设的工作状态。外设的工作状态一般可分为“空闲”、“忙”和“结束”三种。 (3)能够接收主机发来的各种控制...
  • 目录基本知识框架课堂笔记准备工作开发环境KeilSTM32CubeIDE串口下载FlyMCUSTM32硬件架构内核Cortex-M3外设DMAFlashsRamAHBAPB1APB2SDIORCC寄存器的使用存储器映射Block0~Block1外设地址映射外设总线基地址映射外设...
  • 只有这样才能提升运维人员的工作效率,适应日益复杂的工作环境,减少 背景操作系统设计的7个主题:1. 进程描述和控制2. 内存管理3. 调度4. I/O和文件管理5. 并发和分布式系统6. 嵌入式系统7. 安全操作系统利用一个或...
  • 计算机外设是什么

    2021-07-26 05:42:37
    计算机外设是什么导语:外部设备简称“外设”,是指连在计算机主机以外的硬件设备。对数据和信息起着传输、转送和存储的作用,是计算机系统中的重要组成部分。以下是小编收集的有关电脑入门的知识,希望对您有所帮助...
  • 计算机硬件与外设.doc

    2021-07-18 03:44:02
    计算机硬件与外设.doc目 录《计算机组装与维护》课程标准1《智能卡技术》课程标准5《SQL SERVER数据库技术》课程标准9《Visual Basic程序设计》课程标准12《单片机原理与应用》课程标准16《计算机应用基础》课程标准...
  • 计算机外设原理是什么?外部设备简称“外设”,是指连在计算机主机以外的硬件设备。对数据和信息起着传输、转送和存储的作用,是计算机系统中的重要组成部分。随着我国计算机应用的迅速普及以及网络化、信息化应用的...
  • 具体实施方式为使本发明的目的、技术...本实施例的处理器连接多个不同速率的外设,通过实时监测外设工作状态来控制处理器对外设的访问:当外设正在进行一项读/写操作时,禁止处理器发出下一操作命令;当外设完成了...
  • 单片机外设篇——SPI协议

    千次阅读 2021-01-31 14:15:40
    题外话:工作过程中,一直在移植别人写好的SPI协议,然后和外设的芯片(例如:Flash芯片、NFC芯片等)进行通信,但是都没有往底层深入的看,下午看了照着代码看了三个多小时,写这篇博客作为总结。 一、SPI协议是...
  • 使能功能外设时钟(例如串口1); 2.使能AFIO时钟。重映射必须使能AFIO时钟: RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); 3.开启重映射。 GPIO_PinRemapConfig(GPIO_Remap_USART1, ENABLE); 根据第一个...
  • 目录HAL库外设设计思想HAL库和Cube MX相结合一、对外设的封装——句柄结构体二、外设初始化初始化结构体初始化的逻辑三、外设使用逻辑通用接口函数初始化函数I/O操作函数控制函数状态参数扩展接口函数总结 ...
  • 操作系统之外设与文件系统 ...trace_c_p_k2=40bf5f80317341d3af0f9fad...操作系统让外设工作起来,使用类似out这样的指令让外设工作起来,等外设工作完了之后写中断处理程序。 CPU向控制器中的寄存器读写数据 控制器完成
  • 同样关系到教学的效果和机器的完好率,该文就平时的工作常出现的问题及解决方案呈现给读者。关键词:计算机外设;键盘;打印机1 笔记本键盘失灵问题的解决笔记本键盘失灵怎么办?经常有购买笔记本客户会有这样的困扰,...
  • 控制寄存器:可写,用来控制芯片的行为、工作方式等;。 状态寄存器:可读,用来反映芯片当前的统计、异常等状态; 数据寄存器:数据寄存器,可读,读取它们可以获得芯片产生的数据; 每一份芯片数据手册中都应该有完整...
  • DSP端的PCIe外设使用

    2021-11-26 20:47:59
    引言   我用的DSP和TI的TMS320C6678类似,但是是国防科大的6678。它的PCIe外设和TI的有很大不同,但也实现了基本的功能。
  • 为奇数时,PF=0 AF:在运算过程中,第四位向第五位有进位或借位时,AF=1;反之,AF=0 ZF:当运算结果全零时,ZF=1;反之,ZF=0 SF:当运算结果为正数,即结果的最高位为0时,SF=0;反之,即结果的最高位为1时,SF=1 ...
  • 当开始接触到传感器的... 其实socket这个知识点可以去深入的了解一下,我这里就不说了,哈哈哈哈~~~ 这样就串口和网口与外设信息交互的流程大致就到这里啦,如果有什么错误或不足的地方请各位大佬指出来哦,嘻嘻!!!
  • Stm32外设篇 [一]IO

    2021-05-21 12:05:34
      开一个专题,记录自己学习STm32的过程。许多资料都是来源于之前的笔记和摘抄,有些文档和知识点具体的出处不记得了。如果有您的心血并未写明出处,请联系我。   邮箱:kyq18852982072@163.com   微信:...
  • 概况: 启动init进程 运行init.rc 启动zygote服务 Zygote fork的第一个进程——SystemServer SystemServer启动系统服务 1. linux启动第一个应用程序init kernel\init\... 下一节我们来分析Zygote的启动流程工作流程
  • 学习内容:外设篇-LCD

    2021-05-15 16:42:14
    学习内容:外设篇-LCD DCLK/HS/VS/DE信号介绍 学习时间: 2021.5.15 下午15:30 学习产出: 一:引脚定义 数据信号: 指RGB数据信号, 如R0-R7、G0-G7、B0-B7 时钟信号: 像素时钟信号(DCLK), 是传输数据和对数据...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 47,286
精华内容 18,914
关键字:

外设的工作过程