ARM的串口通信实验.docVIP

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ARM的串口通信实验.doc

串口通信实验 一、实验目的 ●通过实验了解S3C44B0X处理器串行口(UART)的结构、串行通信的原理。 ●掌握ARM处理器串行通信的编程方法。 二、实验设备 ●硬件:Embest S3CEV40实验平台,Embest ARM标准/增强型仿真器套件,PC机。 ●软件:Embest IDE 2003集成开发环境,Windows 98/2000/NT/XP操作系统。 三、实验内容 学习S3C44B0X UART相关寄存器的功能,熟悉S3C44B0X系统硬件的UART相关接口,编写S3C44B0X处理器的串口通信程序。 S3CEV40监视串行口,并将接收到的字符回送。 四、实验原理 1.S3C44B0X串行通信(LJART)单元 S3C4B0X UART单元提供2个独立的异步串行通信口,皆可工作于中断和DMA模式。最高波特率达115.2 Kb/s。每个UART单元包含一个16字节FIFO,用于数据接收和发送。 S3C44B0X UART包括可编程波特率、红外发送/接收、1个或2个停止位、5位/6位/7位/8位数据宽度和奇偶校验。 波特率由一个专用的UART波特率分频寄存器(UBRDIVn)控制,计算公式如下: UBRDIVn=(round_off)[MCLK/(波特率×16)]一1 其中:MCLK是系统时钟。UBRDIVn的值必须在1~(216—1)之间。 例如:若系统时钟为40 MHz,波特率为115 200 b/s,则有 UBRDIVn=(int)[40 000 000/(115 200×16)+0.5]一1 =(int)[21.7+0.5]一1 =22一1=21 下面简略介绍UART操作。关于数据发送、数据接收、中断产生、波特率产生、回环模式、红外模式和自动流控制的详细介绍,请参考数据手册及其他相关资料。 发送数据帧是可编程的。1个数据帧包含1个起始位、5~8个数据位、1个可选的奇偶校验位和1~2个停止位。停止位通过行控制寄存器ULCONn配置。 与发送帧类似,接收帧也是可编程的。接收帧由1个起始位、5~8个数据位、1个可选的奇偶校验位和l~2个行控制寄存器ULCONn中的停止位组成。接收器还可以检测过速错误、奇偶校验错误、帧错误和传输中断。每一个错误均可以设置一个错误标志。 ●过速错误指已接收到的数据在读取之前被新接收的数据覆盖。 ●奇偶校验错误指接收器检测到的校验和与设置的不相符。 ●帧错误指没有接收到有效的停止位。 ●传输中断指接收数据RxDn保持逻辑0超过1帧的传输时间。 在FIFO模式下,如果RxFIFO非空,而在3个字的传输时间内没有接收到数据,那么产生超时。 与UART有关的寄存器主要有以下几个: (1)UART行控制寄存器ULCONn。该寄存器的位6决定是否使用红外模式,位5~位3 决定校验方式,位2决定停止位长度,位1和位0决定每帧的数据位数。 (2)UART控制寄存器UCONn。该寄存器决定UART的各种模式。UART FIFO控制寄存器UFCONn和UART MODEM控制寄存器,分别用来决定UART FIFO和MODEM的模式。其中UFCONn的第0位决定是否启用FIFO,UMCONn的第0位是请求发送位。另外,读/写状态寄存器UTRSTAT以及错误状态寄存器UERSTAT,可以反映芯片目前的读/写状态以及错误类型。FIFO状态寄存器UFSTAT和MODEM状态寄存器UMSTAT,通过前者可以读出目前FIFO是否已满及其中的字节数;通过后者可以读出目前MODEM的CTS状态。 (3)发送寄存器UTXH和接收寄存器URXH。这2个寄存器存放发送和接收的数据,当然只有1个字节8位数据。需要注意的是,在发生溢出错误时,接收的数据必须被读出来;否则会引发下次溢出错误。 (4)波特率分频寄存器UBRDIV。 2.RS232接口 S3CEV40教学电路中,串口电路如图2—16所示,开发板上提供2个串口DB9。其中UARTl为主串口,可与PC或MODEM进行串行通信。由于44B0X未提供DCD(载波检测)、DTR(数据终端准备好)、DSR(数据准备好)、RIC(振铃指示)等专用I/O口,故用MCU的通用I/O口替代。UART0只采用2根接线RXD和TXD,因此,只能进行简单的数据传输及接收。全接口的UARTl采用MAX3243E作为电平转换器,简单接口的UART0则采用MAX3221E作为电平转换器。 五、实验操作步骤 ①准备实验环境。使用Embest仿真器连接目标板,使用Embest S3CEV40实验板附带的串口线连接实验板上的UART0和PC机的串口。 ②在PC机上运行Windows自带的串口通信程序超级终端程序,或者其他串口通信程序 (

文档评论(0)

docinpfd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5212202040000002

1亿VIP精品文档

相关文档