ARM接口设计技术-课件.ppt

上传人(卖家):晟晟文业 文档编号:4091775 上传时间:2022-11-10 格式:PPT 页数:121 大小:657.20KB
下载 相关 举报
ARM接口设计技术-课件.ppt_第1页
第1页 / 共121页
ARM接口设计技术-课件.ppt_第2页
第2页 / 共121页
ARM接口设计技术-课件.ppt_第3页
第3页 / 共121页
ARM接口设计技术-课件.ppt_第4页
第4页 / 共121页
ARM接口设计技术-课件.ppt_第5页
第5页 / 共121页
点击查看更多>>
资源描述

1、第第5 5章章 ARM接口设计技术接口设计技术本章主要内容:n键盘接口nLED显示器接口nLCD显示器接口n触摸屏接口n通讯接口n中断接口nA/D和D/A转换器接口nARM的JTAG接口 1 芯片芯片S3C44B0Xn本章主要基于芯片S3C44B0X,介绍其多个接口。S3C44B0X是基于ARM7TDMI的体系结构,是ARM公司最早为业界普遍认可并且赢得最广泛应用的处理核。芯片S3C44B0X具有71个通用多功能输入输出引脚,这些I/O口的应用是S3C44BOX处理器的基础应用,分别包含在如下7组端口中:n1个10位输出端口端口A;n1个11位输出端口(端口B);n1个16位输入输出端口(端口

2、C);n2个8位输入输出端口(端口D和G);n2个9位输入输出端口(端口E和F)。2 芯片芯片S3C44B0Xn每组端口都是多功能口,需要用软件对端口配置寄存器PCONn来设置满足不同系统和设计的需要,在运行程序之前必须先对每一个用到的引脚功能进行设置。如果某些引脚的复用功能没有使用,可以将该引脚设置成I/O口。n在一般的应用中,PA作为地址线使用;PB作为bank选择线和SDRAM的接口信号线使用;PC可以作为数据线、IIS接口或LCD数据线等使用;在系统具备LCD的情况下,PD主要作为LCD的信号线使用;PE可以作串口信号线和定时器输出使用;PF和PG则是多功能I/O口。名门棋牌官网名门棋

3、牌官网 1PK11PK1棋牌公社官网棋牌公社官网 编辑整理编辑整理3 键盘概述键盘概述 n计算机的键实际上就是开关,制造这种键的方法是多种多样的,以下是几种常用的按键:n机械式按键 n电容式按键 n薄膜式按键 n霍耳效应按键 4 用用ARM芯片实现键盘接口芯片实现键盘接口 n本应用实例中,要与4X4的矩阵键盘接口,采用节省口线的“行扫描法”方法来检测键盘,这样只需要8根口线,在此选取PF口作为检测键盘用端口,并设定PF0 PF3为输出扫描码的端口,PF4-PF7为键值读入口。5 用用ARM芯片实现键盘接口芯片实现键盘接口n矩阵键盘按键的识别方法,此方法分两步进行:n 识别键盘哪一行的键被按下:

4、让所有行线均为低电平,检查各列线电平是否为低,如果有列线为低,则说明该列有键被按下,否则说明无键被按下。n如果某列有键被按下,识别键盘哪一行的键被按下:逐行置低电平,并置其余各行为高电平,检查各列线电平的变化,如果列电平变为低电平,则可确定此行此列交叉点处按键被按下。6 行扫描法获取键值的程序行扫描法获取键值的程序设计设计n1.寄存器设置 接口中利用了PF口的相关寄存器,PF口的寄存器有3个:PCONF,PDATF和PUPF。n(1)设置PCONF寄存器需要设定PF0-3为输出口,PF4-7为输入口,因此,在端口工作之前设置:rPCONF 000 000 000 00 01 01 01 01

5、B0 x55;n(2)设置PDATF寄存器PF0-3作为输出口输出扫描码时,可采用语句:rPDATF=Oxf0;PF0-3全写入0PF4-7作为输入口读入键值时,采用语句:Keyval=(rPDATF&0 xf0)4;n(3)设置PUPF寄存器设置内部上拉电阻的语句为:rPUPF=0 x00;/使能PF0-7的内部上拉电阻7 行扫描法获取键值的程序行扫描法获取键值的程序设计设计n2.编写键盘扫描程序n3.代码见课本P1538 LED显示器接口概述显示器接口概述 nLED(Light Emitting Diode)常称为七段发光二极管,在专用的微型计算机系统中,特别是在嵌入式控制系统中,应用非常

6、普遍。它价格低廉、体积小、功耗低,而可靠性又很好,因此,从单板微型机、袖珍计算机到许多微型机控制系统及数字化仪器都用LED作为输出显示。9 LED显示器接口概述显示器接口概述n在多个LED显示电路中,通常把阴(阳)极控制端接至一输出端口,我们称它为位控端口;而把数据显示段接至一个输出端口,我们称这个端口为段控端口。段控端口处应输出十六进制数的7段代码。n为了将一个4位二进制数(可能为一个十六进制数,也可能是一个BCD码)在一个LED上显示出来,就需要将4位二进制数译为LED的7位显示代码。要完成译码功能,可以采用两种方法:n 一种方法是采用专用芯片,可以实现对BCD码的译码,但不能对大于9的二

7、进制数译码。n另一种常用的办法是软件译码法。在软件设计时,将0到F共16个数字(也可以为0到9)对应的显示代码组成一个表。10 用用ARM芯片实现芯片实现LED显示接口显示接口 n1接口电路+5V位驱动第0位第1位第2位第3位第4位阳极abcdefgDPPF0图5-4 LED显示扫描和驱动电路ULN2803A段驱动PF7PG0.PG7第5位第6位第7位11用用ARM芯片实现芯片实现LED显示接口显示接口n2.初始化程序如下。n (1)设置PCONF、PCONG寄存器,由于需要设定端口F、G为输出口,因此,在端口工作之前设置:rPCONF 001 001 001 01 01 01 01 01 B

8、0 x12555;rPCONG 01 01 01 01 01 01 01 01 B0 x5555;n(2)设置PUPF、PUPG寄存器,设置内部上拉电阻的语句为:rPUPF=0 x00;/使能PF0-7的内部上拉电阻 rPUPG=0 x00;/使能PG0-7的内部上拉电阻12用用ARM芯片实现芯片实现LED显示接口显示接口n3.7段数码LED编程 n4.代码见课本P15813 LCD显示器接口概述显示器接口概述n液晶显示是一种被动的显示,它不能发光,只能使用周围环境的光。n基本原理是通过给不同的液晶单元供电,控制其光线的通过与否,从而达到显示的目的。nLCD有三种显示方式:反射型,透射型和透反

9、射型。n市面上出售的LCD有两种类型:n一种是带有驱动电路的LCD显示模块,这种LCD可以方便地与各种低档单片机进行接口;n另一种是LCD显示屏,没有驱动电路,需要与驱动电路配合使用 14 LCD控制器控制器 nLCD 控制器用来把定位在系统存储器中的视频缓冲区的LCD图象数据传输到LCD驱动器,并产生必须的LCD控制信号。REGBANK具有18个可编程寄存器,用于配置LCD控制器LCDCDMA为专用DMAVIDPRCS 从LCDCDMA 接收数据,将相应格式的数据通TIMEGEN包含可编程的逻辑 TIMEGEN部分产生VFRAME,VLINE,VCLK,VM等信号。15 LCD应用实例应用实

10、例n1.LCD接口电路 16 LCD应用实例应用实例n2.I/O口LCD功能设置 通常采用S3C44BOX的PC口和PD口作为LCD驱动接口,因此需要设置PC口工作在第3功能状态和PD口工作在第2功能状态,设置对应I/O口控制寄存器的语句:rPCONC=00 00 00 00 00 00 00 00 11 11 11 11 00 00 00 00B=OxO00Off00;rPUPC=0 x 00;/上拉使能 rPCOND=Oxaaaa;rPUPD=0 x 00;17 LCD应用实例应用实例n3.LCD初始化程序n代码见课本P16918 触摸屏的工作原理触摸屏的工作原理 n触摸屏按其工作原理的不

11、同可分为电阻式触摸屏、表面声波触摸屏、红外式触摸屏和电容式触摸屏几种。n最常见的是电阻式触摸屏,其屏体部分是一块与显示器表面非常配合的多层复合薄膜。触摸屏工作时,上下导体层相当于电阻网络。当某一层电极加上电压时,会在该网络上形成电压梯度。如有外力使得上下两层在某一点接触,则在另一层未加电压的电极上可测得接触点处的电压,从而知道接触点处的坐标。19 触摸屏的驱动芯片触摸屏的驱动芯片ADS7843nS3C44BOX通过端口G模拟串行的SIO接口与触摸屏专门的控制芯片ADS7843进行数据传输,来完成对触摸屏触摸位置坐标的读取。ADS7843要完成两件事:n(1)是完成电极电压的切换;n(2)是采集

12、接触点处的电压值,并进行A/D转换。20 触摸屏的驱动芯片触摸屏的驱动芯片ADS7843n1.ADS7843引脚配置及功能引脚号名称描述1,10+Vcc供电电源输入2.7-5V2,3X+,Y+触摸屏X+、Y+输入,接内部ADC输入通道4,5X-,Y-触摸屏X-、Y-输入6GND接地7,8IN3,IN4附属ADC输入通道9VREFADC参考电压11PENIRQ接触中断输出,必须外接10-100 K电阻12,1416DOUT,DIN,DCLK控制字输入、A/D转换结果输出端;在时钟下降沿时输出,上升沿时输入13BUSY忙指示输出15CS片选21 触摸屏的驱动芯片触摸屏的驱动芯片ADS7843n2.

13、ADS7843的控制字第7位(MSB)第6位第5位第4位第3位第2位第1位第0位(LSB)SA2A1A0MODESER/DFRPD1PD022 触摸屏的接口触摸屏的接口设计设计n1.触摸屏的驱动芯片ADS7843典型接口 触摸屏的控制采用专用芯片,专门处理是否有笔或手指按下触摸屏,并在按下时分别给两组电极通电,然后将其对应位置的模拟电压信号经过A/D转换送回处理器。S3C44B0选取PG口与ADS7843接口,共使用PG2-PG7的6条口线,也可以选择其他的I/O口,但注意不要与I/O口上已经设定的功能相冲突其中,X+、Y+、X-、Y-引脚直接与触摸屏的相应管脚相连。23 触摸屏的接口触摸屏的

14、接口设计设计n2 编程实现 利用连接好的电路设置PCONG寄存器如下:rPCONG=Ox015f;其中,PENIRQ最好加上内部上拉,设置为:rPUPGOx80。n(1)读取触摸点坐标程序:编程采用固定参考电压模式,因此SER/DFR=1。首先检测PENIRQ是否为低电平,如果为低电平,则认为有接触;否则认为触摸屏没有接触。利用软件模拟DIN,DOUT和DCLK上的3线串行传输时序,将读取的x或Y坐标数值的控制字串行送入ADS7843,然后再串行读出坐标值。最后将X和Y轴坐标值送串口显示即可。n(2)送控制字并读取结果子程序。24 串行通信概述串行通信概述 n串行数据传送模式:n单工n半双工n

15、全双工 n串行通信方式:n同步通信n异步通信25 RS-232C串行接口串行接口 n1.RS-232C接口规格26 RS-232C串行接口串行接口n2.RS-232C 接口信号。实际应用 中,并不是 每只管脚 信号都用到27 S3C44BOX内部集成的内部集成的UART nS3C44B0X UART单元提供了两个异步串口(SIO),每个SIO可以操作在中断模式或DMA模式,支持波特率最大为115.2kbps,每个SIO通道包含都有一个16字节的接收与发送FIFO缓冲区。n每个UART模块包含以下几个部件:波特率发生器,发送器,接收器和控制单元。28 UART操作操作n数据发送n数据接收 n动流

16、控制(AFC)n非自动流控制(通过软件控制nRTS和nCTS)n调制解调器接口29 中断中断DMA请求产生器请求产生器 nS3C44BOX的每个UART都有7个状态信号:接收FIFO/缓冲区数据准备好、发送FIFO缓冲区空、发送移位寄存器空、溢出错误、奇偶校验错误、帧错误和中止,所有这些状态都由对应的UART状态寄存器(UTRSTATn/UERSTATn)中的相应位来表现。n当接收器要将接收移位寄存器的数据送到接收FIFO,它会激活接收FIFO满状态信号,如果控制寄存器中的接收模式选为中断模式,就会引发接收中断。n当发送器从发送FIFO中取出数据送到发送移位寄存器,那么FIFO空状态信号将会被

17、激活。如果控制寄存器中的发送模式选为中断模式,就会引发发送中断。30 与与FIFO有关的中断有关的中断 类型FIFO类型非FIFO模式Rx中断每当接收数据达到接收FIFO触发的水平,就产生接收中断;如果FIFO非空且连续3个字时间没有接收到任何数据,就产生超时中断;每当接收数据满,接收移位寄存器将产生一个中断;Tx中断每当发送数据达到发送FIFO触发的水平,就产生发送中断;每当发送数据空,发送保持寄存器将产生一个中断;错 误 中断帧错误、奇偶校验错误和被检测到并按字节接收的中止信号,都将产生错误中断;当达到接收FIFO的顶部,就会产生溢出错误中断;所有错误都会立即产生一个错误中断。但两个错误同

18、时发生,只有一个中断会产生;31 波特率发生器波特率发生器 n波特率发生器以MCLK作为时钟源 n每个UART的波特率发生器为传输提供了串行移位时钟。波特率时钟由通过时钟源的16分频及一个由UART波特率除数寄存器(UBRDIVn)指定的16位除数决定。UBRDIVn(取整)(MCLK(波特率16)-1 32 回送模式与回送模式与红外通信模式红外通信模式n回送模式:S3C44BOX的UART提供的一个测试模式。在这种模式下,发送出的数据会立即被接收。这一特性用于校验运行处理器内部发送和接收通道的功能,这种模式可以通过设置UART控制寄存器(UCONn)中的回送位来实现。n红外通信模式:S3C4

19、4BOX的UART模块支持红外线(IR)发送和接收。可以通过设置UART控制寄存器(UCONn)中的红外模式位来选择这一模式。33 UART的寄存器的寄存器n1.UART线控制寄存器 ULCONn位描述初始值保留7 0红外线模式6该位确定是否使用红外通信模式0:正常模式 1:红外收发模式0奇偶校验模式5:3 该位确定奇偶如何产生和校验0 xx:无校验位 100:奇校验 101:偶校验 110:校验位强制/检测置1 111:校验位强制/检测置0000停止位的数量2该位确定停止位的个数,0:1位停止位 1:2位停止位0数据位长度1:0该位确定数据位的个数00:5位 01:6位 10:7位 11:8

20、位0034 UART的寄存器的寄存器n2.UART控制寄存器UCONn位描述初始值发送中断类型9发送中断请求类型0:脉冲(在发送缓冲区变空时立即引发中断)1:电平(在发送缓冲区为空时引发中断)0接收中断类型8接收中断请求类型0:脉冲(接收缓冲区接收到数据时立即引发中断)1:电平(接收缓冲区正在接收数据时引发中断)0接收超时中断使能7在UART的FIFO使能的情况下,使能禁止接收超时中断 0:禁止 1:使能0接收错误状态中断使能6使能UART在接收操作中发生错误时的错误中断响应0:不产生错误状态中断 1:产生错误状态中断0回送模式5该位使UART自动进入回送模式0:正常操作 1:回送模式0发送中

21、止信号4 该位将引发UART在一帧时间内发送中止信号,该信号发送 完后,该位自动被清除0:正常操作 1:发送中止信号 0发送模式3:2这2位决定当前哪个功能项能够向UART发送保持寄存器写入发送数据00:禁止 01:中断请求或轮流检测模式10:BDMAO请求(仅对UARTO)11:BDMAI请求(仅对UART1)00接收模式1:0这2位决定当前哪个功能项能够从UART接收保持寄存器中读出接收数据 00:禁止01:中断请求或轮流检测模式 IO:BDMAO请求(仅对UARTO)11:BDMAl请求(仅对UART1)0035 UART的寄存器的寄存器n3.FIFO控制寄存器 UFCONn位描述初始值

22、发送FIFO的触发电平7:6这两位确定发送FIFO的触发条件 00:空 01:4字节 10:8字节 11:12字节00接收FIFO的触发电平5:4这两位确定接收FIFO的触发条件 00:4字节01:8字节 10:12字节 11:16字节00保留3 0发送FIFO复位2该位在FIFO复位后自动清除 0:正常 1:发送FIFO复位0接收FIFO复位1该位在FIFO复位后自动清除 0:正常 1:接收FIFO复位0FIFO使能00:禁止 FIFO 1:FIFO 使能036 UART的寄存器的寄存器n4.Modem控制寄存器UMCONn位描述初始值保留7:5这3位必须为 0000自动流控制4AFC是否允

23、许0:禁止 1:使能0保留3:1这3位必须为 0000请求发送0如果AFC允许,该位忽略;如果AFC禁止,必须由软件来控制nRTS。0:高电平(不激活 nRTS)1:低电平(激活 nRTS)037 UART的寄存器的寄存器n5.发送/接收状态寄存器 UTRSTATn位描述初始状态发送移位寄存器为空2当发送移位寄存器中不包含有效数据或移位寄存器为空,该位自动被置位。0:非空1:发送保持和移位寄存器为空1发送缓冲器为空1当发送缓冲区寄存器中不包含有效数据,这一位将自动被置位 0:缓冲区寄存器非空 1:空如果使用了FIFO,则用户不用检测这个位,而应当检测UFSTAT中发送FIFO计数器位和FIFO

24、满位1接收缓冲器数据准备好0当接收缓冲器寄存器中包含了有效数据,这一位将自动被置位0:完全为空 1:缓冲区寄存器中包含有效数据如果使用了FIFO则用户不用检测这个位,而应当检测UFSTAT中接收FIFO计数器位038 UART的寄存器的寄存器n6.UART错误状态寄存器 UERSTATn位描述初始值间隔中断3如果接收到某个中止信号,该位将自动置10:未接收到中止信号 1:接收到中止信号0数据帧错误2如果在接收操作中发生了帧错误,该位将自动置1 0:接收中没有发生帧错误 1:帧错误0奇偶错误1如果在接收操作中发生了奇偶校验错误,该位将自动置1 1:奇偶校验错误 0:接收中没有发生奇偶校验错误0O

25、verrun错误0如果在接收操作中发生了溢出错误,该位将自动置1 0:接收中没有发生溢出错误 1:溢出错误039 UART的寄存器的寄存器n7.UART的FIFO状态寄存器UFSTATn位描述初始值保留15:10 000000发送FIFO满9当发送 FIFO满时该位为10:0字节发送 FIFO 的数据个数 15字节 1:满 0接收FIFO满8当FIFO将要满时,该位为10:0字节接收 FIFO 数据个数 15字节 1:满0发送FIFO计数器7:4发送FIFO里的数据数量0000接收FIFO计数器3:0接收 FIFO里的数据数量000040 UART的寄存器的寄存器n8.Modem状态寄存器:M

26、odem状态寄存器0(UMSTAT0)、寄存器1(UMSTAT1)的地址分别为0 x01D0001C、0 x01D0401C,可读,初始值为0 x06。n9.UART发送/接收保持(缓冲区)寄存器:发送/接收保持寄存器0(UTXH0)、寄存器1(UTXH1)的地址在小模式下分别为0 x01D00020、0 x01D04020,在大模式下分别为0 x01D00023、0 x01D04023,可写,初始值可编程。n10.UART波特率除数寄存器 UART波特率除数寄存器0(UBRDIV0)、寄存器1(UBRDIV1)的地址分别为0 x01D00028、0 x01D04028,可读写,初始值可编程。

27、41 S3C44BOX的的UART 的应用的应用n1.电路接口和I/O口设置 S3C44BOX的串行应用接口电路中的PC12,PC13,PE1,PE2是多功能I/O口,因此,在编写串口数据收发程序之前,首先需要对PC口和PE口的工作模式进行设置。Rpconc=Ox0f000000|rPCONC;rPUPC=0 x3000;/设置内部上拉 rPCONE=(rPCONE&Oxfc3)|Oxeb;rPUPE=0 x6;42 S3C44BOX的的UART 的应用的应用n2.UART初始化 对UART口的可配置参数进行初始化,使其能够按照所要求的通讯方式进行通讯。对UART口进行初始化的设置程序见课本P

28、186。n3.字符发送程序Uart_SendByte()见课本P187。n4.字符接收程序Uart_GetByte()见课本P187。43 USB接口概述接口概述 nUSB(通用串行总线)接口正在被用于多种嵌入式系统设备的数据通信中,如移动硬盘、数码相机、PDA、高速数据采集设备等。它是由Compaq、HP、Intel、Lucent、Microsoft、NEC和Philips七家公司联合推出的新一代标准接口总线。是一种连接外围设备的机外总线。其主要性能特点如下:n提供机箱外的热即插即用功能;n每个USB系统中有个主机,采用“级联”方式USB总线可连接多个外部设备;n适用于带宽范围在几千位秒(K

29、b/s)一几百兆位l秒(Mb/s)的设备;n低成本的电缆和连接器;n具有错误检测和处理机制;n较低的协议开销带来了高的总线性能;n支持主机与设备之间的多数据流和多消息流传输。44 USB系统组成系统组成n一个USB系统由三部分来描述:nUSB主机:在任一USB系统中只有一个主机,到主计算机系统的USB接口被称作主控制器。nUSB设备:分为Hub(集线器)和Function(功能)两大类。Hub提供到USB的附加连接点,功能为主机系统提供附加的性能。nUSB互连:USB互连指的是USB设备与主机的连接和通信方式,它包括总线拓扑结构、内层关系、数据流模型和USB调度表。USB总线用来连接各USB设

30、备和USB主机。45 USB的物理接口的物理接口nUSB总线的电缆有4根导线:一对标准尺寸的双绞信号线和一对标准尺寸的电源线。nUSB总线支持的数据传输率有三种:高速信令位传输率为480Mbs;全速信令位传输率为12Mbs;低速信令位传输率为1.5Mb/s。nUSB2.0支持在主控制器与Hub之间用高速传输全速和低速数据,而Hub与设备之间以全速或低速传输数据,这种支持能力可以将全速设备和低速设备对高速设备可用带宽的影响减到最小。46 USB的电源的电源 nUSB的电源规范包括两个方面:n电源分配用来处理USB设备如何使用主机通过USB总线提供的电源。n电源管理用来处理USB系统软件和设备如何

31、适应主机上的电源管理系统。47 USB的总线协议的总线协议 nUSB是一种查询(Polling)总线,由主控制器启动所有的数据传输。USB上所挂连的外设通过由主机调度的(Host-Scheduled)、基于令牌的(Token-Based)协议来共享USB带宽。n大部分总线事务涉及3个包的传输:n令牌包(Token Packet)n数据包(Data Packet)n握手包(Handshake Packet)主控制器和Hub之间的某些总线事务涉及4个包的传输,这些类型的事务用来管理主机与全/低速设备之间的数据传输。主机与设备端点之间的USB数据传输模型被称作管道,管道有两种类型:流和消息。48 U

32、SB接口工作原理接口工作原理 nUSB设备最大的特点就是即插即用,之所以能够这样,是因为USB协议规定在主机启动或USB设备插入系统时都要对设备进行配置。就是按照USB协议,在USB主机与USB设备之间进行的一系列“问答”过程。从而主机知道了设备的情况以及该如何与设备通讯,并为设备设置一个唯一的地址。n在配置阶段主机也了解了设备端点的使用情况,便可以通过这些端点来进行特定传输方式的通讯。对于标准USB设备,操作系统带有它的驱动,而不需要编写专门的主机驱动程序。但这样就必须为它选择一种标准命令集;但对于非标准设备,则可以自定义一套请求指令集,并需要编写专门的主机驱动程序来实现对USB设备的操作。

33、49 USB设备应用设备应用n对USB设备的开发需要考虑的因素:n选择USB接口控制器芯片。n编写USB设备要执行的USB通信代码(也称为固件程序)。nUSB设备需要执行的其他功能,例如处理接收数据和即将发送数据所需要的硬件和程序代码。n一台支持USB接口的主机。n主机上装有与USB设备通信的驱动软件。n如果USB设备不是操作系统支持的标准设备,则主机上必须具有专用的应用软件来访问USB设备。50 USB设备应用设备应用nUSB设备开发的一般步骤:n根据所要开发的设备的功能需要,确定设备在USB总线上的位置、传输数据的速度以及传输数据的量等,从而确定选择哪一类的USB控制器芯片,并进一步具体决

34、定采用芯片的厂家和型号,然后根据该器件和其他所需芯片进行电路设计。n编写固件程序,其作用是让主机能够识别该设备,并响应主机的各种请求。n根据所用设备是否为标准USB设备,来决定是另外编写驱动,还是使用操作系统自带的驱动程序来访问USB设备。n把编写好的固件程序载入 USB设备,并将USB设备插入主机总线打开应用程序可以对该设备进行指定的操作。n按需要调试和重复以上步骤。51 以太网接口以太网接口概述概述n以太网以其高度灵活、相对简单、易于实现的特点,成为当今最重要的一种局域网建网技术。通常所说的以太网主要是指以下3种不同的局域网技术:n以太网/IEEE 802.3 采用同轴电缆作为网络介质,传

35、输速率达到10 Mbps。n100 Mbps以太网 又称为快速以太网,采用双纹线作为网络介质,传输速率达到100 Mbps。n1000 Mbps以太网 又称为千兆以太网,采用光缆或双纹线作为网络介质,传输速率达到1000 Mbps(1 Gbps)。52 以太网工作原理以太网工作原理 n以太网最早是由Xeros公司开发的一种基带局域网技术;n使用同轴电缆作为网络介质;n以太网采用广播机制;n采用载波多路访问和碰撞检测(CSMA/CD)机制;n数据传输速率达到10 Mbps;n以太网IEEE 8023通常使用专门的网络接口卡或通过系统主电路板上的电路实现。53 以太网的以太网的传输编码传输编码 n

36、曼彻斯特编码n差分曼彻斯特编码 54 以太网帧格式以太网帧格式 字段同步位分隔位目的地址源地址类型长度数据段填充位FCS长度568484816461 500X32在以太网帧中,同步位、分隔位、填充位和校验位这几个字段都是由以太网控制器自动产生的;人们所关心的只是目的地址、源地址、类型和数据这4个字段的内容;所有数据位的传输由低位开始(传输的位流使用曼彻斯特编码);以太网的冲突退避算法是由硬件自动执行的;55 以太网控制器以太网控制器RTL8019 nRTL8019是高度集成的以太网控制器,为即插即用式NE2000兼容网络适配器提供了简易的解决方案。RTL8019共有32个输入输出地址,对应地址

37、偏移量为00hlFh。RTL8019的内部寄存器是分页的,每个寄存器都是8位。56 RTL8019的复位的复位nRTL8019的复位引脚RSTDRV是高电平有效的复位信号,高电平时间长度需大于800 ns,通常在RSTDRV从高电平回到低电平之后的100ms时,再对RTL8019进行读写操作,以确保完全复位。当处理器复位时,以太网控制器也复位。n热复位:为了保证能够完全复位,可以使用热复位方法。18h一1Fh的8个地址,为复位端口,对该端口的偶数地址读或写入任何数,都会引起以太网控制器的复位,这种方式称为热复位。n中断状态寄存器中的第7位RST跟复位有关,它的地址为07h,位于第0页,可直接读

38、写。在以太网控制器执行了正确复位之后该位为1。一般在复位之后检查该标志位,以确认是否复位成功。57 RTL8019寄存器寄存器 n1.命令寄存器CR:地址偏移量是00h,长度为一个字节。位符号描述7,6PS1,PS0选择寄存器页 00:0页 01:1页 10:2页 11:3页(为RTL8019AS配置)53RD20表示要执行的功能 000:不允许001:远程读取以太网控制器内存010:远程写入以太网控制器内存011:发送包 1XX:中止/完成远程DMA2TXP要发送数据包时,要将该位置1,该位可能在发送完成后或者发送中止时内部清0,对该位写0操作无效1STA写STP组合使用0STP该位是停止命

39、令。该位被置1,就停止接收或发送任何数据包,上电时该位为1。STA 与STP组合使用,10:启动命令 01:停止命令58 RTL8019寄存器寄存器(1)n2.与发送接收相关的寄存器:nPSTART:接收缓冲区的起始页地址(位于01h,在第0页可写,在第2页可读)。nPSTOP:接收缓冲区的结束页地址(该页不用于接收,位于02h,在第0页可写,在第2页可读)。nBNRY:边界寄存器(作为读指针使用,位于03h,在第0页可读写)。这个寄存器用来避免对环形接收缓冲区中数据的错误覆盖,通常用作指针,指向接收缓冲区中已经被读取的最后一个页。nCURR:当前页寄存器(作为写指针使用,位于07h,在第1页

40、可读写)。这个寄存器的内容指向接收缓冲区中第一个可用于接收新数据的页面。nDCR:数据配置寄存器。将它设置为使用FIFO缓存,普通模式,8位数据传输模式。字节顺序为高位字节在前,低位字节在后。59 RTL8019寄存器寄存器(2)nTPSR:为发送页的起始页地址。初始化为指向第一个发送缓冲区的页。nRCR:接收配置寄存器,设置为使用接收缓冲区,仅接收与自己地址相匹配的数据包(以及广播地址数据包)和多点播送地址包;小于64字节的包和校验错的数据包将被丢弃。nTCR:发送配置寄存器,启用CRC(循环冗余校验)自动生成和校验功能,工作在正常模式。nRSAR0,1:对存储器进行操作的起始地址寄存器,R

41、SAR0存放低8位,RSARl存放高8位。nRBCR0,1:对存储器操作的字节计数寄存器,RBCR0存放低8位,RBCRl存放高8位。nTBCR0,1:发送字节计数器,这两个寄存器设置了要发送数据包中的字节个数。TBCR0存放低8位,TBCRl存放高8位。60 RTL8019寄存器寄存器n3.其他寄存器:nIMR:中断屏蔽寄存器,设置成0 x00时,屏蔽所有的中断,设置成0 xFF将允许中断。nMAR0一MAR8:多点播送地址,可以全写0 xFF。nPAGE2的寄存器是只读的,不用设置。PAGE3的寄存器不是NE2000兼容的,所以也不用设置。61 RAM空间结构空间结构 n以太网控制器含有1

42、6KB的RAM,地址为0 x40000 x7FFF,每256个字节称为一页,共有64页。n使用0 x400 x45作为以太网控制器的发送缓冲区,共6页。使用0 x460 x5F作为以太网控制器的接收缓冲区,共32页。nCURR和BNRY寄存器是以太网数据收发中用到的两个最主要的寄存器,CURR和BNRY主要用来控制缓冲区的存取过程,保证能顺次写入和读出。nCURR是以太网控制器写接收缓冲区的指针。nBNRY指向接收缓冲区中已经被读取的最后一个页。62 网卡的物理地址网卡的物理地址 n在完成对寄存器的初始化后,还要对以太网控制器的物理地址(即48位的以太网控制器地址)进行设置。nRAM地址中的0

43、 x00000 x000B的12字节是网卡的物理地址。网卡的物理地址本应该是6个字节的,这12字节是单双地址重复存储的。0 x000B后面的地址存储的是生产厂商的代码和产品标识代码,也是单双地址重复存储的。63 以太网模块的接口设计以太网模块的接口设计n配置RTL8019:为了系统的精简,配置RTL8019为非即插即用模式。有着固定的中断,有着固定的端口地址。n以太网模块与处理器的接口电路:64 以太网模块的接口设计以太网模块的接口设计n1.寄存器地址映射:采用nGCS5作为以太网模块的地址使能位,将以太网卡映射在了系统的Bank5上,地址从0 xa000000开始,由此,要在程序中定义RTL

44、8019的寄存器地址。n2.书写RTL8019中的页面切换函数,热复位函数(硬件复位之后的一次热复位)和初始化函数(设置接收缓冲区的位置和以太网物理地址,初始化寄存器,设置中断的模式)。n通过RTL8019传输数据:数据的发送校验,总线数据包的碰撞检测与避免都由芯片自己完成的,我们只需要配置发送数据的物理层地址的源地址、目的地址、数据包类型以及发送的数据就可以进行数据发送了。65 IIC接口概述接口概述nIIC是一种双向两线制的串行总线,由于它支持任何一种IC制造工艺,且能够提升硬件的效率和简化电路的设计,因此众多厂商都提供了IIC兼容芯片。nS3C44BOX内部也具有IIC总线接口模块,支持

45、一个多主IIC-BUS串形接口,主S3C44B0X能发送或接收串形数据到从设备,并遵守标准的IIC协议。nIIC总线操作模式为:主发送模式、主接收模式、从发送模式、从接收模式。66 IIC总线通用传输格式总线通用传输格式 n1.起始条件和停止条件:n起始条件发生在SCL信号为高时,SDA产生一个由高变低的电平变化处。n停止条件发生在SCL信号为高时,SDA产生一个由低变高的电平变化处。n2.数据传输格式:每个字节长度都是8位,每次传输中字节的数量没有限制。在起始条件后面的第一个字节是地址域,之后,每个传输的字节后面都有一个应答(ACK)位。传输中串行数据的MSB(字节的高位)首先发送。n应答信

46、号:ACK脉冲信号在SCL线上第9个时钟处发出。67 S3C44B0X的的IIC总线总线 nS3C44B0X处理器多主模式的IIC总线串行接口。S3C44B0X采用专门的串行数据线(SDA)和串行时钟线(SCL)与总线上的其他外设传输信息。nIIC总线操作n读写操作n配置IIC总线nIIC总线接口专用寄存器68 CAN总线概述总线概述nCAN全称为Controller Area Network,即控制器局域网,是国际上应用最广泛的现场总线之一。nCAN的主要特点包括:n低成本;n极高的总线利用率;n很远的数据传输距离(长达10公里);n高速的数据传输速率(高达1Mbit/s);n可根据报文的I

47、D决定接收或屏蔽该报文;n可靠的错误处理和检错机制;n发送的信息遭到破坏后可自动重发;n节点在错误严重的情况下具有自动退出总线的功能;n报文不包含源地址或目标地址,仅用标志符来指示功能信息优先级;69 CAN总线与同步串行接口总线与同步串行接口SIOnS3C44B0X 的SIO能与各种类型的串行外设接口,这个SIO模块能以一定的频率(由寄存器设定)发送或接收8位串行数据。时钟源可以选择内部时钟或外部时钟。nSIO模块功能:n8位数据缓冲(SIODAT);n12位的预定标器(SBRDR);n8位间隔计数器(ITVCNT);n时钟源选择逻辑;n串行数据I/O脚(SIORXD和 SIOTXD);n外

48、部时钟输入输出脚(SIOCK);nDMA运行模式。70 SIO正常操作模式正常操作模式n操作模式:发送与接收同时进行,一个发送数据脚,一个接收数据脚,当一个字节写入SIODAT数据寄存器,如果SIO运行位设置和发送模式允许,则SIO开始发送数据。n对SIO模块编程的步骤:n配置I/O脚(SIOTXD,SIOCLK,SIORXD);n设置SIOCON为适当的配置;n设置串行I/O中断允许位;n如果想发送数据,写数据到SIODAT;n设置SIOCON3为1,开始数据移位操作;n当数据移位操作完成时,SIO中断被请求和SIODAT接收到数据;n返回第4步。71 SIO DMA 操作操作 n在自动运行

49、模式(非握手模式)下,SIO等待直到发送的数据被外部目标设备读走,在每次8位数据发送后,SIO插入一个可编程的间隔周期。n1.DMA发送数据步骤:n清DCNTZ为0,使SIO能请求DMA服务。除了SIOCON1:0必须为00外,适当的配置SIO;n适当的配置DMA;nSIO被配置为DMA发送模式;nSIO自动请求DMA服务;nSIO发送数据;n返回步骤4直到DMA计数为0;n设置DCNTZ为1,停止SIO请求进一步的DMA服务。72 SIO DMA 操作操作n2.DMA接收数据步骤:n清DCNTZ为0,使SIO能请求DMA服务.除了SIOCON1:0必须为00外,适当的配置SIO;n适当的配置

50、DMA;nSIO被配置为DMA只接模式;n设置SIOCON3(SIO 开始位)来开始接收操作;nSIO在接收到8位数据后请求DMA服务;n返回步骤5直到DMA计数为0;n设置DCNTZ为1,停止SIO请求进一步的DMA服务。73 SIO接口寄存器接口寄存器n1)SIO控制寄存器(SIOCON):其地址为0 x01D14000,可读写,初始值为0 x00。n2)SIO 数据寄存器(SIODAT):是一个8位的SIO 数据寄存器,它用于存放要发送数据或已接收的数据,地址为0 x01D14004,可读写,初始值为 0 x00。n3)SIO 波特率预定标器寄存器(SBRDR):用来确定SIO的波特率。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(ARM接口设计技术-课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|