up-tech-2410s 实验系统教案 1 串口通讯实验

Post on 13-Jan-2016

214 Views

Category:

Documents

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

Up-tech-2410s 实验系统教案 1 串口通讯实验. 电信学院 嵌入式技术与应用专业. 提纲. 1 实验目的. 2 实验内容. 3 预备知识. 4 实验设备. 5 基础知识. 6 实验思考. 实验目的. 掌握 ARM 的串行口工作原理 学习编程实现 ARM 的 UART 通讯 掌握 S3C2410 寄存器配置方法. 实验内容. 实现查询方式串口的收发功能。接收来自串口(通过超级终端)的字符并将接收到的字符发送到超级终端. 预备知识. 了解 ADS 集成开发环境的基本功能 学习串口通讯的基本知识 - PowerPoint PPT Presentation

TRANSCRIPT

1

Up-tech-2410s实验系统教案1 串口通讯实验

电信学院 嵌入式技术与应用专业

嵌入式技术与应用专业教学资源库

提纲

5 基础知识

1 实验目的

2 实验内容

3 预备知识

4 实验设备

6 实验思考

嵌入式技术与应用专业教学资源库

实验目的

掌握 ARM 的串行口工作原理

学习编程实现 ARM 的 UART 通讯

掌握 S3C2410 寄存器配置方法

嵌入式技术与应用专业教学资源库

实验内容

实现查询方式串口的收发功能。接收来自串口(通过超级终端)的字符并将接收到的字符发送到超级终端

嵌入式技术与应用专业教学资源库

预备知识

了解 ADS 集成开发环境的基本功能

学习串口通讯的基本知识

熟悉 S3C2410 串口有关的寄存器

嵌入式技术与应用专业教学资源库

实验设备

Up-tech-2410sUp-tech-2410s 教学实验箱

ARM920T 的 JTAG 仿真器

ARM ADS1.2 集成开发环境

串口连接线

嵌入式技术与应用专业教学资源库

基础知识串行接口电路

串行通信接口电路组成 可编程的串行接口芯片

波特率发生器

EIA 与 TTL 电平转换器

地址译码电路 通信协议:

异步协议

同步协议

嵌入式技术与应用专业教学资源库

异步串行通讯

异步串行方式是将传输数据的每个字符一位接一位 ( 例如先低位、后高位 ) 地传送。

数据的各不同位可以分时使用同一传输通道,因此串行 I/O 可以减少信号连线,最少用一对线即可进行。

接收方对于同一根线上一连串的数字信号,首先要分割成位,再按位组成字符。为了恢复发送的信息,双方必须协调工作。

在微型计算机中大量使用异步串行 I/O 方式,双方使用各自的时钟信号,而且允许时钟频率有一定误差,因此实现较容易。但是由于每个字符都要独立确定起始和结束 ( 即每个字符都要重新同步 ) ,字符和字符间还可能有长度不定的空闲时间,因此效率较低。

嵌入式技术与应用专业教学资源库

异步串行通信中的字符传送格式

嵌入式技术与应用专业教学资源库

异步串行通信中的字符传送格式

每个字符的数据位长可以约定为 5 位、 6 位、 7 位或 8位,一般采用 ASCII 编码。后面是奇偶校验位,根据约定,用奇偶校验位将所传字符中为“ 1” 的位数凑成奇数个或偶数个。也可以约定不要奇偶校验,这样就取消奇偶校验位。

开始前,线路处于空闲状态,送出连续“ 1” 。传送开始时首先发一个“ 0” 作为起始位,然后出现在通信线上的是字符的二进制编码数据。

嵌入式技术与应用专业教学资源库

异步串行通信中的字符传送格式

最后是表示停止位的“ 1” 信号,这个停止位可以约定持续 1 位、 1.5 位或 2 位的时间宽度。

至此一个字符传送完毕,线路又进入空闲,持续为“ 1” 。经过一段随机的时间后,下一个字符开始传送才又发出起始位。

每一个数据位的宽度等于传送波特率的倒数。微机异步串行通信中,常用的波特率为 110 , 150 , 300 , 600 ,1200 , 2400 , 4800 , 9600 等。

嵌入式技术与应用专业教学资源库

EIA RS-232C

美国电子工业协会推荐的一种标准 (Electronic industries Association Recoil-mendedStandard)

在 25针接插件 (DB- 25) 上定义了串行通信的有关信号

在实际异步串行通信中,并不要求用全部的 RS-232C 信号,许多PC/XT兼容机仅用 15针接插件 (DB-15) 来引出其异步串行 I/O 信号,而 PC 中更是大量采用 9 针接插件 (DB-9) 来担当此任。

嵌入式技术与应用专业教学资源库

DB-25 DB-9引脚定义

嵌入式技术与应用专业教学资源库

DB-25 DB-9引脚说明

嵌入式技术与应用专业教学资源库

RS-232C 接口通信的两种基本连接方式

嵌入式技术与应用专业教学资源库

信号电平规定

EIA 电平:双极性信号逻辑电平 , 它是一套负逻辑定义

-3V到 -25V 之间的电平表示逻辑“ 1”

+3V到 +25V 之间的电平表示逻辑“ 0”

TTL 电平:计算机内部 (S3C2410) 使用 TTL 电平

电平转换电路:常用专门的 RS-232 接口芯片,如 SP3232 、SP3220等,在 TTL 电平和 EIA 电平之间实现相互转换。

嵌入式技术与应用专业教学资源库

S3C2410 异步串行口控制器

S3C2410 自带三个异步串行口控制器

每个控制器有 16 字节的 FIFO (先入先出寄存器)

最大波特率 115.2K

每个 UART 有 7种状态:溢出错误,校验错误,帧错误,暂停态,接收缓冲区准备好,发送缓冲区空,发送移位缓冲器空,这些状态可以由相应的 UTRSTATn或 UERSTATn寄存器表示,并且与发送接收缓冲区相对应的有错误缓冲区

嵌入式技术与应用专业教学资源库

S3C2410 异步串行口控制器 S3C2410 自带三个异步串行口控制器

波特率的大小可以通过设置波特率寄存器( UBRDIVn)控制,计算公式如下:

使用 PCLK时的计算公式如下:

UBRDIVn = (int)[PCLK/( 波特率×16)]–1

使用 UCLK时的计算公式如下:

UBRDIVn = (int)[UCLK/( 波特率×16)]–1

例如:使用 PCLK,在 40 MHz的情况下,当波特率取 115 200 bps 时, UBRDIVn = (int)[40000000/(115200×16)]–1 = 20

嵌入式技术与应用专业教学资源库

与 UART 有关的寄存器 线路控制寄存器 ULCONn 控制寄存器 UCONn FIFO控制寄存器 UFCONn

控制寄存器 UMCONn 状态寄存器 UTRSTAT 错误状态寄存器 UERSTAT FIFO 状态寄存器 UFSTAT 发送寄存器 UTXH和接收寄存器 URXH 波特率因子寄存器 UBRDIV

嵌入式技术与应用专业教学资源库

线路控制寄存器 ULCONn

嵌入式技术与应用专业教学资源库

控制寄存器 UCONn

嵌入式技术与应用专业教学资源库

FIFO控制寄存器 UFCONn

嵌入式技术与应用专业教学资源库

MODEM控制寄存器 UMCONn

嵌入式技术与应用专业教学资源库

状态寄存器 UTRSTAT

嵌入式技术与应用专业教学资源库

错误状态寄存器 UERSTAT

嵌入式技术与应用专业教学资源库

FIFO 状态寄存器 UFSTAT

嵌入式技术与应用专业教学资源库

发送寄存器 UTXH 和接收寄存器 URXH

嵌入式技术与应用专业教学资源库

波特率因子寄存器 UBRDIV

嵌入式技术与应用专业教学资源库

实验说明

串口初始化 /* 配置系统时钟 */

s3c2410_cpu_init();//CPU 时钟设置

嵌入式技术与应用专业教学资源库

实验说明

发送数据void Uart_SendByten(int Uartnum, U8 data) //往串口发送数据

WrUTXH0(data); //往串口数据寄存器写数据

接收数据 char Uart_Getchn(char* Revdata, int Uartnum, int timeout)// 接收数据

RdURXH0(); //读取串口数据寄存器数据

嵌入式技术与应用专业教学资源库

实验思考

232 串行通讯的数据格式是什么?

串行通讯最少需要几根线,分别如何连接?

ARM 的串行口有几个,相应的寄存器是什么?

用中断方式实现串口驱动。

top related