- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第十一章 异步串口通信
概述
S3C2410的UART提供3个独立的异步串行通信端口,每个端口可以基于中断或者DMA进行操作。换句话说,UART控制器可以在CPU和UART之间产生一个中断或者DMA请求来传输数据。UART在系统时钟下运行可支持高达230.4K的波特率,如果使用外部设备提供的UEXTCLK,UART的速度还可以更高。每个UART通道各含有两个16位的接收和发送FIFO。
S3C2410的UART包括可编程的波特率,红外接收/发送,一个或两个停止位插入,5-8位数据宽度和奇偶校验。
每个UART包括一个波特率发生器、一个发送器、一个接收器和一个控制单元,如图11-1所示。波特率发生器的输入可以是PCLK或者UEXTCLK。发送器和接收器包含16位的FIFO和移位寄存器,数据被送入FIFO,然后被复制到发送移位寄存器准备发送,然后数据按位从发送数据引脚TxDn输出。同时,接收数据从接收数据引脚RxDn按位移入接收移位寄存器,并复制到FIFO。
特性
RxD0,TxD0,RxD1,TxD1,RxD2,和TxD2基于中断或者DMA操作
UARTCh0,1,和2具有IrDA1.016字节FIFO
UARTCh0和1具有nRTS0,nCTS0,nRTS1,和nCTS1
支持发生/接收握手
图11-1 UART方框图
串口操作
下述部分描述了UART的一些操作,包括数据发送、数据接收、中断产生、波特率发生、loop-back模式、红外模式和自动流控制。
数据发送
发送数据的帧结构是可编程的,它由1个起始位、5-8个数据位、1个可选的奇偶位和1-2个停止位组成,这些可以在线控制寄存器ULCONn中设定。接收器可以产生一个断点条件——使串行输出保持1帧发送时间的逻辑0状态。当前发送字被完全发送出去后,这个断点信号随后发送。断点信号发送之后,继续发送数据到TxFIFO(如果没有FIFO则发送到Tx保持寄存器)。
数据接收
与数据发送一样,接收数据的帧格式也是可编程的。它由1个起始位、5-8个数据位、1个可选的奇偶位和1-2个停止位组成,这些可以在线控制寄存器ULCONn中设定。接收器可以探测到溢出错误和帧错误。
溢出错误:在旧数据被读出来之前新的数据覆盖了旧的数据
帧错误:接收数据没有有效的停止位
当在3个字时间(与字长度位的设置有关)内没有接收到任何数据并且RxFIFO非空时,将会产生一个接收超时条件。
自动流控制(AFC)
UART0和UART1通过nRTSandnCTS信号支持自动流控制,例如连接到外部UART时。如果用户希望将UART连接到一个MODEM,可以在UMCONn寄存器中禁止自动流控位,并且通过软件控制nRTS信号。
在AFC时,nRTS由接收器的状态决定,而nCTS信号控制发送器的操作。只有当nCTS信号有效的时候(在AFC时,nCTS意味着其它UART的FIFO准备接收数据)UART发送器才会发送FIFO中的数据。在UART接收数据之前,当它的接收FIFO多于2字节的剩余空间时nRTS必须有效,当它的接收FIFO少于1字节的剩余空间时nRTS必须无效(nRTS意味着它自己的接收FIFO开始准备接收数据)。
图11-2 UARTAFC接口
注:UART2不支持AFC功能,因为S3C2410没有nRTS2和nCTS2。
无AFC的例子
通过FIFO操作Rx
选择接收模式(中断还是DMA模式)。
检查UFSTATn寄存器中RxFIFO的值。如果值小于15(RXFIFO未满),用户必须将UMCONn[0]置1(nRTS生效),如果大于等于15(RXFIFO已满),用户必须将UMCONn[0]清0(nRTS无效)。
重复第2步。
通过FIFO操作Tx
选择发送模式(中断还是DMA模式)。
检查UMCONn[0]的值,如果为1(nRTSactive),写数据到TxFIFO
RS-232C接口
如果希望将UART连接到MODEM,nRTS,nCTS,nDSR,nDTR,DCD和nRI信号是必须的。这种情况下用户可以通过GPIO控制这些信号因为AFC不支持RS-232C接口。
中断/DMA请求的产生
每个UART有5个状态(Tx/Rx/Error)信号:溢出错误、帧错误、接收缓冲满、发送缓冲空和发送移位寄存器空。这些状态体现在UART状态寄存器中的相关位(UTRSTATn/UERSTATn)。
溢出错误和帧错误与接收错误状态相关,每个错误可以产生一个接收错误状态中断请求,如果控制寄存器UCONn中的receive-error-status-interrupt-enable位被置1的话。如果探测到一个receive-err
您可能关注的文档
- 焊接工艺规范.doc
- 现代教育学第八章第四节.ppt
- 论文写作规范.ppt
- 教育学原理第一章-教育与教育学.ppt
- 第四章--护理教学方法与技巧--.ppt
- 东北三省复习课件.ppt
- 计算机控制系统课后答案--李元春第二章习题答案.ppt
- 《教育学》第十一讲《教育目的概述》.ppt
- 壶口瀑布课件.ppt
- 心外科诊疗规范.doc
- QTSP018-2020 智慧灯杆技术规范.pdf
- TQGCML2916-2023 照度自适应感应调节的 LED 面板灯设计规范.pdf
- 山东省齐鲁名校联盟2023-2024学年高三下学期开学质量检测语文试题及答案.docx
- 2024届天津市滨海新区高三三模语文试卷及答案.docx
- 浙江省强基联盟联考2023-2024学年高二下学期5月联考语文试题及参考答案.docx
- 2024年中考作文押题预测:《有一束光,照亮我的世界》范文6篇.docx
- 2024年05月广西柳州城市职业学院招考聘用18人笔试历年高频考点难、易错点合集附带答案详解.docx
- 2024年中考语文二轮复习专题训练:文言文阅读.docx
- 2024年六年级下学期语文名著阅读《鲁滨逊漂流记》相关练习含答案.docx
- 2024年05月安徽安庆太湖中学太湖二中校园招考聘用高中物理教师笔试历年高频考点难、易错点合集附带答案详解.docx
文档评论(0)