-
串口通信实验
一、实验目的
●通过
实验了解
S3C44B0X
处理器串行口
(UART)
的结构、串行通信的原理。
p>
●掌握
ARM
处理器串行通信的编程方法。
二、实验设备
●硬件:
Embest
S3CEV40
实验平台,
Embest ARM
标准
/
增强型仿真器套件,
PC
机。
●软件:
Embest IDE
2003
集成开发环境,
Windows 98
/
2000
/
NT
/
XP
操作系统。
三、实验内容
学习
S3C44B0X
UART
p>
相关寄存器的功能,熟悉
S3C44B0X
系统硬件的
UART
相关接
口,编写<
/p>
S3C44B0X
处理器的串口通信程序。
S3CEV40
监视串行口,并将接收到的字符回送。
p>
四、实验原理
1
.
S3C44B0X
串行通信
(LJART)
单元
S3C4B0X UART
单元提供
2
个独立的异步串行通信口,
皆可工作于中断和
< br>DMA
模式。
最高波特率达
11
5
.
2 Kb/s
。每个
UART
单元包含一个
16
字节
FIFO
,用于数据接收和发送。
S3C44B0X
UART
包括可编
程波特率、红外发送/接收、
1
个或
2
个停止位、
5
位/
6
位/
7
位/
8
位数据宽度和奇偶校验。
波特
率由一个专用的
UART
波特率分频寄存器
(UBRDIVn)
控制,计算公式如下:
p>
UBRDIVn=(round
_
off)
[MCLK
/
(
波特率×
16)]
一
1
其中:
p>
MCLK
是系统时钟。
UBRDIVn
p>
的值必须在
1
~
(
216
—
1)
之间。
< br>
例如:若系统时钟为
40
MHz
,波特率为
115 200
b
/
s
,则有
UBRDIVn=(int)[40 000
000
/
(115 200
×
16)+0
.
5]
一<
/p>
1
=(int)[21
.
7+0
.
5]
一
1
=22
一
1=21
< br>下面简略介绍
UART
操作。关于数据发送、数据接收、
中断产生、波特率产生、回环
模式、红外模式和自动流控制的详细介绍,请参考数据手册
及其他相关资料。
发送数据帧是可编程的。
< br>1
个数据帧包含
1
个起始位、<
/p>
5
~
8
个数据位
、
1
个可选的奇偶
校验位和
1
~
2
个停止位。停止位
通过行控制寄存器
ULCONn
配置。
与发送帧类似,接收帧也是可编程的。接收帧由
1
个起始位、
5
~
8
个数据位、
1
个可
选的
奇偶校验位和
l
~
2
< br>个行控制寄存器
ULCONn
中的停止位组成。
接收器还可以检测过速
错误、奇偶校验错误、帧错误和传输中断。每一个
错误均可以设置一个错误标志。
●过速错误指已接收到的数据在读取之前被新接收的数据覆盖。
●奇偶校验错误指接收器检测到的校验和与设置的不相符。
●帧错误指没有接收到有效的停止位。
●传输中断指接收数据
RxDn
保持逻辑
0
超过
1
帧的传输时间。
在
FIFO
模式下,
如果
RxFIFO
非空,而在
3
个字的传输时间内没有接收到数据,那么
产生超时。
< br>
与
UART
有关的寄存器主要
有以下几个:
(1)UART
行控制
寄存器
ULCONn
。
该寄存器的位<
/p>
6
决定是否使用红外模式,
位
5
~位
3