串口-Uart
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 1 页 共 ...
S3C44B0X中文数据
2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 1 页 共 1 页
S3C44B0X中文数据手册
S3C44B0X中文数据手册 ...............................................................................................................1
10 UART...................................................................................................................................2
特性:...............................................................................................................2
10.1 UART操作 ............................................................................................................2
10.1.1数据发送..................................................................................................2
10.1.2数据接收..................................................................................................2
10.1.3自动流控制(AFC) ..............................................................................3
10.1.4非自动流控制(通过软件控制 nRTS和 nCTS).................................3
10.1.5 调制解调器接口 .....................................................................................4
10.2中断/DMA请求产生器 ........................................................................................4
10.3 UART错误状态 FIFO ..........................................................................................4
10.4波特率发生器........................................................................................................5
10.5回送模式................................................................................................................5
10.6红外通信模式........................................................................................................5
10.7 UART寄存器 ........................................................................................................7
10.7.1 UART线控制寄存器 ..............................................................................7
10.7.2 UART控制寄存器 ..................................................................................8
10.7.3 FIFO控制寄存器 ....................................................................................8
10.7.4 UART的Modem控制寄存器 ................................................................9
10.7.5 UART发送/接收状态寄存器 .................................................................9
10.7.6 UART错误状态寄存器 ..........................................................................9
10.7.7 UART的 FIFO状态寄存器..................................................................10
10.7.8 UART的Modem状态寄存器 ..............................................................10
10.7.9 UART发送/接收保持(缓冲区)寄存器 ...........................................10
10.7.10 UART波特率除数寄存器 ..................................................................10
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 2 页 共 2 页
10 UART
S3C44B0X的 UART(通用异步收发器)单元提供两个独立的异步串行 I/O端口,每个
都可以在中断和 DMA 两种模式下工作。它们支持的最高波特率为 115.2Kbps。每个 UART
通道包含 2个 16位 FIFO分别提供给接收和发送。
S3C44B0X 的 UART 可以进行以下
的设置:可编程的波特率,红外收/发模式,1
或 2个停止位,5位、6位、7位或 8位数据宽度和奇偶位校验。
每个UART包含一个波特率产生器,发送器,接收器和控制单元。波特率发生器以MCLK
作为时钟源。发送器和接收器包含 16字节的 FIFOs和移位寄存器。要被发送的数据,首先
被写入 FIFO然后拷贝到发送移位寄存器。然后它从数据输出端口(TxDn)依次被移位输出。
被接收的数据也同样从数据接收端口(RxDn)移位输入到移位寄存器,然后拷贝到 FIFO
中。
特性:
-RxD0,TxD0,RxD1,TxD1可以以中断模式或 DMA模式工作;
-UART通道 0符合 IrDA 1.0要求,且具有 16字节的 FIFO;
-UART通道 1符合 IrDA 1.0要求,且具有 16字节的 FIFO;
-支持收发时握手模式。
10.1 UART操作
以下将介绍 UART 的操作,包括数据发送,数据接收,中断发生,波特率发生,回送
模式,自动流控制等内容。
10.1.1数据发送
数据发送帧格式是可编程的。它包含一个开始位,5到 8个数据位,一个可选的奇偶位
和 1 到 2 个停止位,这些都可以通过线控制寄存器(UCONn)来设置。发送器也能够产生
发送中止条件。中止条件迫使串口输出保持在逻辑 0状态,这种状态保持超过一个传输帧的
时间长度。通常在一帧传输数据完整地传输完之后,再通过这个全 0状态将中止信号发送给
对方。中止信号发送之后,传送数据将持续地放入到输出 FIFO中(在不使用 FIFO模式下,
将被放到输出保持寄存器)。
10.1.2数据接收
与发送一样,接收的数据帧格式同样是可编程的。它包括了一个起始位,5到 8个数据
位,一个可选的奇偶校验位和 1 到 2 个停止位,这些都可以通过线控制寄存器(UCONn)
来设置。接收器还可以检测到溢出错误,奇偶校验错误,帧错误和中止状况,每种情况下都
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 3 页 共 3 页
会将一个错误标志置位。
z 溢出错误表示新的数据已经覆盖了旧的数据,因为旧的数据没有及时被读入;
z 奇偶校验错误表示接收器检测到了意料之外的奇偶校验结果;
z 帧错误表示接收到的数据没有有效的停止位;
z 中止状况表示 RxDn的输入被保持为 0状态超过了一个帧传输的时间。
z 在 FIFO模式下接收 FIFO不为空,但接收器已经在 3个字时间内那没有接收到任何数
据,就认为发生了接收超时状况。
10.1.3自动流控制(AFC)
S3C44B0X 的 UART 通过 nRTS 和 nCTS 信号支持自动流控制,在这种情况下必须是
UART与 UART连接。如果用户将 UART连接到调制解调器,就应该在 UMCONn寄存器中
禁止自动流控制位,并通过软件控制 nRTS。在 AFC中,nRTS由接收器的接收情况来控制,
nCTS则控制了发送器的工作。UART发送器在 nCTS信号被置 1的时候发送 FIFO中的数据
(在 AFC中,nCTS意味着对方 UART的 FIFO已经准备好接收数据)。在 UART接收数据
时,如果它的接收 FIFO 中还有多于 2个字节的空余空间就必须将 nRTS置 1,从而告诉对
方“接收准备好”;当接收 FIFO的剩余空间少于 1字节时,必须将 nRTS清 0,说明“不能
再接收”。AFC接口如下图所示:
图 8-1 UART AFC接口
10.1.4非自动流控制(通过软件控制 nRTS和 nCTS)
○ 接收操作
1. 选择接收模式(中断和 BDMA模式)
2. 检查 UFSTATn 寄存器中接收 FIFO 计数器的值。如果值小于 15,用户必须设置
UMCONn[0]的值为‘1’(即激活 nRTS),并且如果它等于或大于 15,用户必须设置该
位值为‘0’(即失活 nRTS)。
3. 重复第 2步。
○ 发送操作
1. 选择发送模式(中断或 BDMA模式)
2. 检查 UMSTATn[0]的值,如果为‘1’(nCTS被激活),用户就可以写数据到输出缓冲区
或输出 FIFO寄存器。
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 4 页 共 4 页
10.1.5 调制解调器接口
如果用户要连接到调制解调器接口,就需要 nRTS,nCTS,nDSR,nDTR,DCD和 nRI
信号。在这种情况下,用户可以通过通用其它 I/O 口来由软件控制这些信号,因为 AFC 是
不支持 RS-232C接口的。
10.2中断/DMA请求产生器
S3C44B0X的每个 UART都有 7个状态信号:溢出错误,奇偶校验错误,帧错误,中止,
接收 FIFO/缓冲区数据准备好,发送 FIFO/缓冲区空,发送移位寄存器空,所有这些状态都
由对应的 UART状态寄存器(UTRSTATn/UERSTATn)中的相应位来表现。
溢出错误,奇偶校验错误,帧错误和中止状况都被认为是接收错误状态,如果 UCONn
中的“接收错误状态中断使能位”被置位,它们中的每一个都能够引发接收错误中断请求。
当“接收错误状态中断请求”被检测到,引发请求的信号可以通过读取 UERSTATn来识别。
当接收器要将接收移位寄存器的数据送到接收 FIFO,它会激活接收 FIFO 满状态信号,如
果控制寄存器中的接收模式选为中断模式,就会引发接收中断。
当发送器从发送 FIFO 中取出数据到发送移位寄存器,那么 FIFO 空状态信号将会被激
活。如果控制寄存器中的发送模式选为中断模式,就会引发发送中断。
如果接收/发送模式被选为 DMA模式,“接收 FIFO满”和“发送 FIFO空”状态信号同
样可以产生 DMA请求信号。
与 FIFO有关的中断如下表所示:
表 8-1 与 FIFO有关的中断
10.3 UART错误状态 FIFO
除了接收 FIFO寄存器之外,UART还具有一个状态 FIFO。状态 FIFO中表示了在 FIFO
寄存器中,哪一个数据被毫无错误地接收。
假设 UART的 FIFO连续接收到 A, B, C, D, E字符,并且在接收 B字符时发生了帧错误
(即该字符没有停止位),在接收 D字符时发生了奇偶校验错。
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 5 页 共 5 页
虽然 UART错误发生了,错误中断不会产生,因为含有错误的字符还没有被 CPU读取。
当字符被读出时错误中断才会发生。如下图所示:
图 8-2 UART接收 5个字节其中包含 2个错误的情况
10.4波特率发生器
每个 UART 的波特率发生器为传输提供了串行移位时钟。波特率产生器的时钟源可以
通过 S3C44B0X的内部系统时钟来选择。波特率时钟通过时钟源 16分频和一个由 UART波
特率除数寄存器(UBRDIVn)指定的 16位除数决定。UBRDIVn的值可以按照下式确定:
UBRDIVn =(取整)(MCLK/(bps×16))-1
除数的范围为 1到(2 16-1)。例如,如果波特率为 115200 bps且系统主频(MCLK)
为 64MHz,则 UBRDIVn为:
UBRDIVn = (int)(64000000/(115200×16))-1
=35-1 =34
10.5回送模式
S3C44B0X的 UART提供一个测试模式,即回送模式。在这种模式下,发送的数据会立
即被接收。这一特性运行处理器校验内部发送和接收通道的功能。这种模式可以通过设置
UART控制寄存器(UCONn)中的回送位来设定。
10.6红外通信模式
S3C44B0X的 UART模块支持红外线(IR)发送和接收。可以通过设置 UART控制寄存器
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 6 页 共 6 页
(ULCONn)中的红外模式位来选择这一模式。
在 IR发送模式下,发送阶段通过正常串行发送占空比 3/16的脉冲波调制(当传送的数
据位为 0);在 IR接收模式下,接收必须检测 3/16脉冲波来识别 0值。如下图:
通常情况下传输帧的时序
红外线接收模式下时序图
图 8-3 红外线传输模式时序
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 7 页 共 7 页
10.7 UART寄存器
寄存器名称中的 n 表示 0~1,例如 ULCONn 对应串口 0 为 ULCON0, 对应串口 1 为
ULCON1。
10.7.1 UART线控制寄存器
前面我们多次提到了线控制控制寄存器,它主要用来规定传输帧的格式。下面就来看看
线控制寄存器的位定义:
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 8 页 共 8 页
10.7.2 UART控制寄存器
10.7.3 FIFO控制寄存器
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 9 页 共 9 页
10.7.4 UART的 Modem控制寄存器
10.7.5 UART发送/接收状态寄存器
10.7.6 UART错误状态寄存器
S3C44B0X中文数据手册 2004年 8月 27日
杭州立宇泰电子有限公司 http://www.hzlitai.com.cn
电话:0571-88331446 Email:office@hzlitai.com.cn
第 10 页 共 10 页
10.7.7 UART的 FIFO状态寄存器
10.7.8 UART的 Modem状态寄存器
10.7.9 UART发送/接收保持(缓冲区)寄存器
UART接收保持(缓冲区)寄存器和 FIFO寄存器:URXH0, URXH1
注意:如果发生了溢出错误,必须读一次 URXHn 。如果不读,即使 USTATn 中的溢出错
误位被清除了,下一个接收的数据仍然会发生一个溢出错误。
10.7.10 UART波特率除数寄存器
本文档为【串口-Uart】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。