常用嵌入式接口和嵌入式外部设备162页

上传人:bin****86 文档编号:57166203 上传时间:2018-10-19 格式:PPT 页数:162 大小:4.46MB
返回 下载 相关 举报
常用嵌入式接口和嵌入式外部设备162页_第1页
第1页 / 共162页
常用嵌入式接口和嵌入式外部设备162页_第2页
第2页 / 共162页
常用嵌入式接口和嵌入式外部设备162页_第3页
第3页 / 共162页
常用嵌入式接口和嵌入式外部设备162页_第4页
第4页 / 共162页
常用嵌入式接口和嵌入式外部设备162页_第5页
第5页 / 共162页
点击查看更多>>
资源描述

《常用嵌入式接口和嵌入式外部设备162页》由会员分享,可在线阅读,更多相关《常用嵌入式接口和嵌入式外部设备162页(162页珍藏版)》请在金锄头文库上搜索。

1、嵌入式系统原理与开发,第17讲南京大学计算机系 俞建新主讲,2008年春季,第8章 嵌入式存储器和接口技术,本章主要介绍以下内容: 嵌入式系统常用存储器 嵌入式系统常用总线 嵌入式系统常用接口 嵌入式系统常用外部设备,2008年12月15日,2,南京大学计算机系,8.3 嵌入式系统常用接口,嵌入式系统常用的接口有串口、以太网口、USB口和JTAG口。此外,还有通用IO口(GPIO)、火线(IEEE1394)、同步串行IO口(例如:S3C44B0X处理器的SIO)、 PCMCIA等。 在第5讲我们已经详细讲解了JTAG接口,以下我们主要介绍串口(UART)、 GPIO口和USB口。 由于篇幅的限

2、制,我们没有把以太网接口和以太网接口控制器RTL8019AS的讲解做在本课件中。,2008年12月15日,3,南京大学计算机系,8.3.1 UART接口,UART负责管理异步串行数据通信,常常用于主机与嵌入式开发板的之间的最初调试信息通信,在嵌入式系统中是重要的I/O接口之一。 多数嵌入式处理器内部集成了UART接口。例如:S3C44B0X内部具有2个(S3C2410有3个)独立的UART通道,每个UART通道都可以工作在中断模式或DMA模式,并且每个UART均具有两个16字节的FIFO(先入先出寄存器)分别供接受和发送使用,所支持的最高波特率达到118.2Kbps(S3C2410为230.4

3、Kbps)。,2008年12月15日,4,南京大学计算机系,UART的基本功能,UART提供的主要功能是:传输波特率设定;将接受到的串行数据变换为主机内部的并行数据;把机内并行数据转换为输出串行数据;设定数据传输的帧格式;对输入输出的串行数据流中进行奇偶校验处理;进行数据收发执行缓冲处理等等。,2008年12月15日,5,南京大学计算机系,S3C44B0X处理器的UART操作,主要有4种 UART操作 数据发送 数据接收 自动流控制 RS-232接口,2008年12月15日,6,南京大学计算机系,S3C44B0X的UART编程步骤,通常基于S3C44B0X嵌入式开发板的串行口使用的是S3C44

4、B0X内部UART接口。通过电平转换电路芯片(如Max3233),把3.3V的逻辑电平转换为RS-232-C的逻辑电平,向外进行数据收发。这种串口往往使用了RS-232-C的3根线进行通信,其接口为D型的9针阳性插头。,2008年12月15日,7,南京大学计算机系,S3C44B0X的UART编程步骤(续1),D型的9针阳性插头各个管脚的定义及3线通信连接方法参看下图:,2008年12月15日,8,南京大学计算机系,S3C44B0X的UART编程步骤(续2),涉及UART数据发送接收的引脚主要是两组RxD,TxD引脚。参看下图,可以看出RxD0、TxD0、RxD1、TxD1这四个引脚是复用引脚。

5、因此,在编写串口数据收发程序之前,首先需要对GPC12、GPC13、GPE1、GPE2口的工作模式进行设置。,2008年12月15日,9,南京大学计算机系,S3C44B0X的UART编程步骤(续3),S3C44B0X的UART数据收发引脚示意图:,2008年12月15日,10,南京大学计算机系,S3C44B0X的UART编程步骤(续4),与这两组串口引脚设置有关的寄存器PCONC和PCONE的部分位定义如下表所示。,2008年12月15日,11,南京大学计算机系,S3C44B0X的UART编程步骤(续5),(1) PC口和PE口设置 PC口通过以下C语句设置: rPCONC = 0x0F000

6、000 | rPCONC; /* 使PC13引脚为RxD1,PC12引脚为TxD1*/ rPUPC = 0x3000; /* 设置PC13和PC12无内部上拉电阻*/ PE口通过以下C语句设置: rPCONE = (rPCONE /* 设置PE2和PE1无内部上拉电阻*/,2008年12月15日,12,南京大学计算机系,UART初始化代码,void Uart_Init(int Uartnum, int mclk, int baud) int i;if(mclk=0) mclk=MCLK;if(Uartnum=0) / UART0,即UART通道号为0rUFCON0=0x0; / 不使用FIFO

7、rUMCON0=0x0; / 不使用自动流控制(AFC)rULCON0=0x3; / 8个数据位,1个停止位,奇偶校验位/ 不采用红外线传输模式rUCON0=0x245; / 当Tx缓冲为空时,以电平信号发送中断请求/ 当Rx缓冲有数据时,以边沿信号发送中断请求/ 禁止超时中断,允许产生处于接收出错状态的中断请求/ 禁止回送模式,禁止中止信号,发送数据操作按中断方式/ 接收数据操作按中断方式,S3C44B0X的UART编程步骤(续5),2008年12月15日,13,南京大学计算机系,UART初始化代码(续),rUBRDIV0=( (int)(mclk/16./baud + 0.5) -1 );

8、 / 根据波特率计算UBRDIV0值else / UART1rUFCON1=0x0; / UART1的初始化与UART0相同rUMCON1=0x0;rULCON1=0x3;rUCON1=0x245;rUBRDIV1=( (int)(mclk/16./baud + 0.5) -1 ); for(i=0;i100;i+); ,S3C44B0X的UART编程步骤(续5),2008年12月15日,14,南京大学计算机系,UART字符接收程序,#define RdUTXH0() (*(volatile unsigned char*)0x01D00024) #define RdUTXH1() (*(vol

9、atile unsigned char*)0x01D04024) char Uart_GetByte(char* Revdata, int Uartnum, int timeout) int i=0;if(Uartnum=0) / UART0while(!(rUTRSTAT0 ,S3C44B0X的UART编程步骤(续5),2008年12月15日,15,南京大学计算机系,UART字符发送程序,#define WrUTXH0(ch) (*(volatile unsigned char*)0x01D00020)=(unsigned char)(ch) #define WrUTXH1(ch) (*(v

10、olatile unsigned char*)0x01D04020)=(unsigned char)(ch) void Uart_SendByte(int Uartnum, U8 data) if(Uartnum=0) / UART0while(!(rUTRSTAT0 ,S3C44B0X的UART编程步骤(续5),2008年12月15日,16,南京大学计算机系,8.3.2 通用输入输出接口(GPIO),在嵌入式系统中,数据输入输出主要通过通用输入输出口(GPIO,General Purpose I/O port)进行。之所以称为通用输入输出口是因为它们的用法非常灵活,可以通过编程设定其功能。一

11、个处理器内的GPIO分成若干个组,每一组称为一个IO接口。通常,一组GPIO接口有10多个引脚。,2008年12月15日,17,南京大学计算机系,三星公司S3C44B0X的GPIO端口引脚配置一览表,2008年12月15日,18,南京大学计算机系,GPIO端口的用法,开发过程中,需要用到三组特殊功能寄存器来定义上一页表里7个GPIO端口的具体功能。 第一组是PCONAPCONG 端口配置寄存器 第二组是PDATAPDATG 端口数据寄存器 第三组是PUPCPUPG 端口上拉电阻设置寄存器,2008年12月15日,19,南京大学计算机系,GPIO口的使用举例,以端口F为例,它是9位输入输出端口。

12、 使用前需要对PCONF寄存器写入控制字,以决定这9位中的每1位执行的是输入操作还是输出操作。 操作时,PDATF寄存器的PF8:0引脚按照输入或者输出的定义接受或者发送数据。 PUPF寄存器的每1位值决定该位使能情况下是否接上拉电阻。取值为0时上拉电阻有效,取值为1时上拉电阻无效。,2008年12月15日,20,南京大学计算机系,GPIO口控制寄存器地址映射,下面是S3C44B0处理器的SFR寄存器地址定义的.H文件的指令片段,它们给出了GPF端口的控制寄存器地址映射。 /* S3C44B0X通用I/O口F的控制寄存器定义 */ #define rPCONF (*(volatile unsi

13、gned *)0x01D20040) #define rPDATF (*(volatile unsigned *)0x01D20044) #define rPUPF (*(volatile unsigned *)0x01D20048),2008年12月15日,21,南京大学计算机系,8.3.3 USB,USB(通用串行总线:Universal Serial Bus)是由Compaq、HP、Intel、Lucent(朗讯)、Microsoft、NEC和Philips七家公司联合推出的标准接口总线。已成为目前最广泛使用的外设接口。 USB驱动程序的开发已经成为嵌入式开发的一个重要组成部分。 本节介

14、绍以下内容:USB接口标准,USB主要特点,USB接口实现方法和选购考虑要素,USB接口芯片SL811HS,USB主机协议栈架构模型,USB设备和USB应用软件开发,2008年12月15日,22,南京大学计算机系,USB 1.0接口标准,USB标准(规范)有多种版本,最早的版本是1994年11月推出的USB 0.7版 。1996年1月推出了标准版本USB l.0,目标是为中低速的外围设备提供双向、低成本的总线。USB l.0支持1.5Mbps(低速)、12Mbps(全速)两种传输速率。,2008年12月15日,23,南京大学计算机系,USB 2.0接口标准,随着微机系统及其外设性能和功能的增强

15、,需处理的数据量越来越大,2000年4月又推出了新的USB规范USB 2.0。在新版本中,增加了一种480Mbps的数据传输率(高速),以满足日益复杂的高级外设与PC机之间的高性能连接需求。 USB 2.0是USB早期版本的自然升级,它在保留原有USB规范的基础上又提供了更高的带宽,并且与现有的外设保持完全兼容。,2008年12月15日,24,南京大学计算机系,USB的主要特点,1、串行外设连接 2、支持即插即用(PNP) 3、连接容易、使用方便 4、独立供电,降低外设成本 5、速度快,适应不同外设要求,2008年12月15日,25,南京大学计算机系,USB主要特点,1、串行外设连接 一个US

16、B系统由三部分来描述:USB主机、USB设备和USB互连。主机,在任何一个USB系统中只有一个主机。主计算机系统内的USB接口被称作主机(主控制器)。设备,USB设备分为Hub(集线器)和Function(功能)两大类。互连,USB互连指的是USB设备与主机的连接和通信方式,它包括总线拓扑结构、内层关系、数据流模型和USB调度表。USB系统最多可连接127个外设,其连接的拓扑结构为树型结构。,2008年12月15日,26,南京大学计算机系,USB主要特点(续1),2、支持即插即用(PNP) USB支持自动配置,支持热插拔。可以在任何时候连接或断开外设,而不管系统或外设是否正在运行;热插拔不会损坏PC或外设,当外设被连接时,操作系统会自动检测并执行对应的应用程序。,2008年12月15日,27,南京大学计算机系,USB主要特点(续2),3、连接容易、使用方便 USB为所有的USB外设提供了单一的、易于操作的标准的接口,这样就简化了USB外设连接插座插头设计,同时也简化了用户在连接外设时的操作。用户在连接外设时的简单性和方便性比以往的外设连接有了质的飞跃。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号