UART-串行异步通信解析课件_第1页
UART-串行异步通信解析课件_第2页
UART-串行异步通信解析课件_第3页
UART-串行异步通信解析课件_第4页
UART-串行异步通信解析课件_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 UART串行异步通信本节内容: 1、数据通信原理。 2、串行异步收发器(UART)。 3、UART驱动程序设计。 数据通信方式 数据通信的基本方式可分为并行通信和串行通信两种: 并行通信:利用多条数据线将数据的各位同时传送。 其特点是传输速度快,适用于短距离通信。 串行通信:利用一条数据线将数据一位位地顺序传送,特点 是通信线路简单,成本低,适用于远距离通信。数据传送方式: 单工方式:数据始终是从A设备发送B设备半双工方式:既能从A设备传送到B设备,也能从B设备传送到 A设备,但在任何时刻都不能在两个方向上同时 传送,即每次只能有一个设备发送,另一个设备 接收。全双工方式:允许通信双方同时进

2、行发送和接收,这时,A设 备在发送的同时也可以接收,B设备也一样。 ABABAB数据通信协议 通信协议:是指通信的双方约定的一些规则。一般情况下通信硬件线路越简单,需要的软件协议越复杂,协议占用数据量越多。 异步通信数据格式:空闲位、起始位、奇偶检验位、停止位。异步串行通信协议: 1位起始位-8位数据位1位校验位1位停止位起始位:先发一个逻辑“0”信号,表示传输字符的开始数据位:紧接在起始位之后,从最低位开始传送,发送速率靠 时钟定位奇偶校验位:数据位加上这一位后,使得“1”的位数为偶数( 偶检验)或者奇数(奇校验),以此校验数据传输的 正确性。停止位:它是一个字符数据的结束标志空闲位:处于逻

3、辑“1”状态,表述当前线路上没有数据传输。波特率 波特率是衡量数据传送速率的指标,单位为位/秒(bit/s)或比特。 记录每秒钟传送的二进制位数。 RS-232c串口规范 RS-232标准(协议)的全称是EIA-RS-232C标准,其中EIA(Electronic industry association)代表美国电子工业协会,RS(recommeded standard)代表推荐标准,232是标识号,c代表RS232的最新一次修改(1969) 常用物理标准还有EIA-RS-232-C EIA-RS-422-A EIA-RS-423A EIA-RS-485 RS-232C接线方式 RS-232

4、C串口的接线方式有全串口连线、3线连接等方式 3线连接方式: RXD,TXD和GNDRS-232C的通讯距离和速度 RS-232C能够可靠进行数据传输的最大通讯距离为15米 传输速度一般都可以达到115200bps甚至更高,标准串口能够提供的传输速度主要有以下波特率: 1200bps 2400bps 4800bps 9600bps 19200bps 38400bps 57600bps 115200bpsUART原理 通用异步收发器简称UART,用来传输串行数据 发送时:CPU将并行数据写入UART,UART按照一定的格 式在一根线上串行发出数据。 接收时:UART检测另一根线上的信号,收集串行

5、数据放 在缓冲区中,CPU即可读取UART获得这些数据。UART连线图: (1) UART之间以全双工方式传输数据,TXD用于发送,RXD用于接 收,GND用于给双方提供参考电压。 (2)TXD、RXD数据线以“位”最小单位传输数据。 (3)帧:由具有完整意义的、不可分隔的若干位组成,它包含开始位、 数据位、校验位和停止位。 (4)发送数据前,UART之间要约定好波特率、数据传输格式 6410UARTPCUARTUART原理: UART使用标准TTL/CMOS逻辑电平(0-5v,0-3.3v)来表示数据,高电平位1,低电平位0:为了增强数据的抗干扰能力。提高传输长度,通常将TTL/CMOS转位

6、RS-232逻辑电平(3-12v表示0,-3 - -12V表示1)。 数据传输流程: (1) 平时数据线处于“空闲”状态(1状态) (2)当要发送数据时,UART改变TXD数据线的状态(变为0状态) 并维持1位的时间,这样接收方检测到开始位后,一位位的检测 数据线的状态得到所传输的数据。 (3)UART一帧中可以有5、6、7、或8位数据,发送方一位位地改 变数据线的状态将它们发送出去,首先发送最低位。 (4)如果用校验功能,UART在发送完数据位后,还要发送1个校验位。 最后,发送停止位,数据线恢复到“空闲”状态(1状态) S3c6410是UART: 功能:支持可编程的波特率、红外发送/接受,

7、可插入一个或两个停止位,支持5-8位数组宽度和奇偶校验。 UART单元组成: (1)、一个波特率发生器 (2)、一个发送器 (3)、一个接收器 (4)、一个控制单元 S3C6410X.pdf S3C6410的UART (1)S3C6410通用异步接收和发送器(UART)提供了 四个独立的异步串行I/O端口。 (2)每个异步串行I/O端口通过中断或者直接存储器存取 (DMA)模式来操作。换句话说,UART是通过产生一 个中断或者DMA请求,在CPU和UART之间传输数据的。 (3)UART使用系统时钟的时间可以支持的比特率最高为 115200b/s.每个UART的通道包含了两个64字节收发FIF

8、O存 储器。 (4)S3C6410的UART包括可编程波特率,红外线的传送/接收,一 个或两个停止位插入,5位,6位,7位或8位数据的宽度和奇偶校 验。控制UART相关寄存器: 共9个,分为两组:6个控制寄存器 和 3个指示传送状态寄存器。 控制寄存器: 线路控制寄存器(ULCONn) 控制寄存器(UCONn) FIFO控制寄存器(UFCONn) MODEM控制寄存器(UMCONn) 发送寄存器(UTXHn)和接收寄存器(URXHn) 波特率因子寄存器(UBRDIVn) 指示传送状态寄存器: 状态寄存器(UTRSTATn) 错误状态寄存器(USERSTATn) FIFO状态寄存器(UFSTAT

9、n)UART驱动程序设计 串口初始化发送数据功能接收数据功能UART初始化 设置UART通道管脚设置波特率设置数据传输格式选择通道工作模式初始化UART通道管脚 ok6410开发板串口是配置UART0端口 例如:GPA口控制 配置GPACON寄存器,禁止上下拉电阻。 GPACON&=0X0ff GPACON|=0X22; GPAUD=0 x00;设置波特率 S3C6410 UART的时钟源有两种选择:PCLK,EXT_UCLK,通过UCONn11:10进行设置 UBRDIVn=(int)(UART CLOCK/(buad rate *16)-1 例如:时钟源选择 时钟源采用PCLK UCON0

10、=(UCON0&=(0X310))|(0X210); 波特率设置 #define PCLK 66000000 baud=115200 UBRDIV0=(U32)(PCLK/baud/16)-1);设置传输格式 通过ULCON可以设置传输格式:数据位、校验位、停止位、流控等。 #define WORLD_LEN (0X30) #define STOP_BIT (0X02) #define PARITY_MODE (0X03) #define IRD_MODE (0 x06) ULCON0=(ULCON0&(0Xff)| WORLD_LEN| STOP_BIT| PARITY_MODE| IRD_

11、MODE 设置通过工作方式: 通过UCONn3:0设置UART中断方式 通过UFCONn设置是否使用FIFO、FIFO触发阀值(即发送FIFO中有多少个数据时产生中断、接收FIFO中有多少个数据时产生中断) a、不使用FIFO时,可以认为FIFO的深度为1,使用FIFO时, FIFO的深度为64. b、 使用FIFO时,通过UFSTATn检测FIFO是否已满、其中有多 少个数据。 中断为脉冲方式,不产生接收错误状态中断,发射接收均为正常模式 UCON0=(UCON0|0X05); FIFO禁止 UFCON0=UFCON0|0X0; 流控禁止 UMCON0=UMCON0|0X0;发送数据: 将要发送的数据写入UTXHn,UART会将它保持到发送 缓冲区中,并自动发出去。接收数据: 当UART收到数据,保存到接收缓冲区中,CPU读取 URXHn寄存器,即可获得数据。 发送、接收时机 可以通过发送、接收中断来控制发送、接收时机。 如果采用轮询模式,UTRSTATn寄存器用来表明数据是否已经发送完毕、是否已经接收到数据。UART基本接口设计 void uart_init(void) 引脚配置 波特率设置 工作模式 发送一个字节: void uart_send_byte(un

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论