关键词不能为空

当前您在: 主页 > 英语 >

1.通用异步收发器

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-27 21:45
tags:

-

2021年2月27日发(作者:达到效果)


1.


通用异步收发器



1.1


通用异步收发器概述



S5PV210


的通用异步收发器


< p>
UART



提供四对独立的异步串行输入


/


输出



I


/ O


)端口。


所有的端口操作基于中 断或基于


DMA


的操作模式。


UAR T


产生一个


中断或


DMA


请求


,


将数据传输给


CPU


或者从


CPU


传输给

< br>UART



UART


支持高达


3Mbps


比特率。每个


UART


通道包含两个


FIFO


接收和发送数据:在


ch0



256



字节,在


ch1



64


字节和在


ch2



ch3 16


个字节。


UART


包括可编程波特率,红外(


IR


)发射器


/


接收器,一个或两个停止位


插入,


5


位,


6


位,


7


位或


8


位数据宽度和奇偶校验。



每个


UART


包含一个波特率发生器,发送器,接收器和一个控制单元, 如图


1-1


。波特率发生器采用


PC LK



SCLK_UART


。发射器 和接收器包含


FIFO


和数


据移位器。 要传输的数据被写入到


Tx FIFO


,并复制到发送移位器 。然后,数


据由发送数据引脚(


TXDn


)移出。所接收的数据从接收数据引脚(


RxDn


)移


位,并且从移位器复制到


Rx FIFO




1.2


通用异步收发器的主要特点



?


RXD0



TxD0



RXD1



TXD1



RxD2



TxD2



RXD3



TXD3


带有基



DMA< /p>


或基于中断的操作



?


UART


通道


0



1



2



3


具有


IrDA 1.0


?


UART


通道

0


具有


256


字节


FIFO



通道


1


具有


64


字节


FIFO



通道


2


和< /p>


3


具有


16


字节 的


FIFO


?


UART


通道


0


< br>1



2


具有

nRTS0



nCTS0



nRTS1



nCTS1



nCTS2


nRTS2


的自动流控制功能



? 支持握手发送


/


接收。







1-1UART


的框图



1.3 UART


的说明



以下各节描述的


UART


操作,如数据 传输,数据接收,中断产生,



波特率发生器,回环模式,红外模式和自动流控制



1.3.1


数据传输



用于传输的数据帧是可编程的。


它由一个起始位,


五至 八个数据位,


一个可


选的奇偶性位,和一到两个停止位,由线路 控制寄存器(


ULCONn


)指定。发射

< br>器也可以产生一个中止的条件,迫使串行输出为逻辑


0


状 态持续一帧传输时间。


目前传输字完全传输后,


传输中止信号。


中止信号传输后,


传输发送器连续发送


数据到发送


FIFO



Tx


保持寄存器,如遇非


FIFO


的模式)




1.3.2


数据接收



类似数据传输,


用于接收所述数据帧也是可编程的。


它 由一个起始位,


五至


八个数据位,一个可选的奇偶校验位,和一 到两个停止位,由线路控制寄存器



ULCONn


)指定。接收器检测溢出错误,奇偶校验错误,帧错误和中止条件,每


个设置 一个错误标志。



?溢出错误表示在旧的数据被读取之前,新的数据覆盖旧数据。



?奇偶校验错误表示接收器检测到一个意想不到的奇偶条件。



?帧错误表示接收到的数据没有一个有效的停止位。



?中止情况表明,


RxDn


输入是在逻辑


0


状态持有多于一帧的传输时间。



如果在


3


个字的时间(这个时间间隔按照字长位 设置)没有接收到数据时和



FIFO


模式下


Rx FIFO


不为空接收超时情况。



1.3.3


自动流控制(


AFC




S5PV210

< p>


UART0



UART 1


支持自动流控制(


AFC


)通过使用


NRTS



NCTS

< br>信


号。如果


TXD3



RXD3



GPA1CON



GPIO


SFR


)设置为


nRTS2



nC TS2



UART2


支持自动流控制



。在这种 情况下,它可以连接到外部的


UART


。为了使


UART



接到调制解调器,


禁用


UMCONn


寄存器自动流控制位并使用软件控制


NRTS


的信号。




AFC


中,


NRTS


信号依赖于接收器的状态,而


NCTS


信号控制发射器的操


作。



如 果


NCTS


信号被激活(在


AFC



NCTS


信号意味着其他


UART



FIFO


准备< /p>


接收数据)




UART


的发送器传输数据到


FIFO



UART


接收数据之前,如果接收


F IFO


有超过


2


个字节作为备用


,NRTS


信号必须被激活。如果其接收


FI FO


有少于


1


个字节作为备用(在


AFC


中,


NRTS

信号,意味着自己的接收


FIFO


准备接收数


据)该


NRTS


信号必须被


灭活







1-2 UART


自动流控制接口




1.3.4


非自动流控制的例子(控制


NRTS



NCTS


软件)


1.3.4.1


带有


FIFO< /p>



RX


操作


< /p>


1.


选择传输模式(中断或


DMA


模式)




2.


检查


UFSTATn


寄存器中


Rx


FIFO


数值。


如果 该值小于


16



则必须设置

< p>
UMCONn[0]



'1'

(激活


nRTS



。然而,如果该 值等于或大于


16


,则必须将值设置为


'0'


(灭



NRTS





3.

< br>重复步骤


2





1.3.4.2


带有


FIFO



TX


操作



1.


选择传输模式(中断或


DMA


模式)




2.


检查


UMSTATn[0]


的值。如果该值是


'1'


(激活

< p>
NCTS





您必须将数据写入发



FIFO


寄存器。



3.


重复步骤


2





1.3.5



DMA


模式下


TX / RX FIFO


触发深度和


DMA


突发大





DMA


模式下如果


TX / RX


数据达到


UFCONn


寄存器的发送


/


接收


FIFO


触发


深度,则


DMA


传输开始。一个单一的


DMA


传输将发送整个的


UFCONn


寄存器中指


定的


DMA


突发大小的数据,


并且


DMA< /p>


重复传输,


直到传送的数据大小达到的


T x


/


Rx


FIFO


触发深度。因此,


DMA


突发大小应小于或等于的< /p>


Tx


/


Rx


FIFO


触发深度。


一般来说,建议,以确保


TX / RX FIFO


触发深度与


DMA


突发大小匹配。




1.3.6 RS-232C


接口


< /p>


要连接到


UART


的调制解调器接口(而 不是零调制解调器)



NRTS



NCTS



nDSR



NDTR



DCD



NRI


信号是必需的。因为


AFC


不支持


RS-232C


接口,您可


以通过软件控制通用


I/O


端口来控制这些信号。




1.3.7


中断


/ DMA


请求产生



< br>S5PV210


中每个


UART


包括


7


个状态(


TX


/


RX


/


错误)信号,即溢出错误,


奇偶校验错误,帧错误,中断,接收缓冲区中的数据准备好, 发送缓冲区空,和


发送移位寄存器空



这些条



由相应


UART



态寄存器(



UTRSTATn /


UERSTATn


)表示。



溢出错误,


奇偶校验错误,


帧错误和中断条件指明接收错误状态。


如果在控


制寄存器(


UCONn


)中接 收的错误


-


状态


-

< br>中断


-


使能位被设置为


1


,接收错误状


态产生接收


-

< br>错误


-


状态


-

< br>中断。如果接收


-


错误


-


状态


-


中断


-


请求被检测到,您可


以通过读取


UERSTA Tn


的值来判断中断源。




FIFO


模式下


,


如果 接收器传输接收移位器中的数据到接收


FIFO


寄存器,


并且接收到的数据的数量大于或等于接收


FIFO

触发深度的话,


那么


,


若控制寄存


器(


UCONn


)中接收模式被设置为


1


(中断请求或轮询模式)


,则产生接 收中断。



在非


FIFO


模式,


传输接收移位器的数据到接收保持寄存器


,< /p>


在中断请求和轮


询模式下会导致接收中断。



如果从发送


FIFO


寄存器中的发 送器将数据传输到发送移位和发送


FIFO


中剩


余的数据的数量小于或等于到


Tx FIFO


触发深度 ,将产生


Tx


中断(在控制寄存


器中设 置的传输模式应选择为中断请求或轮询模式)



在非

< p>
FIFO


模式下,


从发送


保持寄存器传输数据到发送移位寄存器导致发送中断的中断请求和轮询模式。



尤其注意,如果数据在发送


FIFO


的数量大于 小触发水平


Tx


中断会一直请


求。这 意味着,只要你一启用


Tx


中断


,


就会有一个中断被请求,除非你填


Tx


缓< /p>


冲器。所以建议先补


Tx


缓冲器,然后再 启用


Tx


中断。


S5PV210


的中断控制器是电平触发型的。


如果你对< /p>


UART


控制寄存器编程


,



须设置中断类型为


'


电平


'




如果接 收和发送控制寄存器模式设置为


DMAn


请求模式,

< p>
然后


DMAn


请求发生


来 代替上述情况中的接收或发送中断。














1-1


中 断与


FIFO


的关系




类型



接收中断



FIFO


模式



如果产生


Rx FIFO


< p>


FIFO


模式






< p>





计数值大于或等于收到


器产生




FIFO


触发电平。


< p>
如果产生


FIFO


数据的数


量不到达接收


FIFO


触发


电平,并 且不在


3


个字的


时间接收到任何数据( 接


收时间出)


。此时间间隔


如下话语设 置长度位。



发送中断



如果产生发送


FIFO










当接收缓冲区已满。

< br>


计数小于或等于的发送


器产生每当发送缓冲区


FIFO


(发送


FIFO


触发电


为空。



平级)




错误中断



如果产生帧错误,奇


所有的错误产生。但


偶校验错误,或破信号被


是,如果出现另一个错误


检测到。如果


UART


接收


的同时,只有一个中断。



新数据的接收时


FIFO



(溢出错 误)





-


-


-


-


-


-


-


-



本文更新与2021-02-27 21:45,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/676266.html

1.通用异步收发器的相关文章