Texas Instruments 系列:Tiva C Series TM4C123G (基于 Cortex-M4)_(10).TM4C123G串行通信接口.docxVIP

Texas Instruments 系列:Tiva C Series TM4C123G (基于 Cortex-M4)_(10).TM4C123G串行通信接口.docx

  1. 1、本文档共22页,可阅读全部内容。
  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文档。上传文档
查看更多

PAGE1

PAGE1

TM4C123G串行通信接口

1.串行通信接口概述

1.1串行通信的基本概念

串行通信是一种数据传输方式,通过一条数据线逐位发送或接收数据。与并行通信相比,串行通信具有线路简单、成本低、传输距离远等优点。TM4C123G支持多种串行通信接口,包括UART、I2C、SPI和CAN等。

1.2TM4C123G的串行通信接口

TM4C123G提供了丰富的串行通信接口,包括:

UART(通用异步收发传输器):用于异步串行通信,适用于低速通信场景。

I2C(Inter-IntegratedCircuit):用于多主设备通信,常用于连接传感器和外部存储器等。

SPI(SerialPeripheralInterface):用于高速同步通信,适用于主从设备之间的数据传输。

CAN(ControllerAreaNetwork):用于汽车和工业控制领域的多主设备通信,具有较高的可靠性和抗干扰能力。

2.UART接口

2.1UART接口的基本原理

UART是一种通用异步收发传输器,用于实现两个设备之间的异步串行通信。UART通过TX(传输)和RX(接收)两个引脚进行数据的发送和接收。数据传输速率(波特率)由发送和接收双方协商确定,常见的波特率有9600、115200等。

2.2UART接口的配置

在TM4C123G中,配置UART接口需要以下几个步骤:

使能UART模块的时钟。

配置UART引脚。

设置波特率。

配置UART控制寄存器。

使能UART模块。

2.2.1使能UART模块的时钟

使能UART模块的时钟需要通过系统控制模块(SYSCTL)来完成。例如,使能UART0模块的时钟:

//使能UART0模块的时钟

SYSCTL_RCGCUART_R|=SYSCTL_RCGCUART_R0;

2.2.2配置UART引脚

配置UART引脚需要通过GPIO模块来完成。例如,配置PA0和PA1为UART0的TX和RX引脚:

//使能GPIOPortA的时钟

SYSCTL_RCGCGPIO_R|=SYSCTL_RCGCGPIO_R0;

//配置PA0和PA1为UART0的TX和RX引脚

GPIO_PORTA_AFSEL_R|=(10)|(11);//使能复用功能

GPIO_PORTA_PCTL_R=(GPIO_PORTA_PCTL_R~(0xFFFFFFFF))|(GPIO_PCTL_PA0_U0TX|GPIO_PCTL_PA1_U0RX);

GPIO_PORTA_AMSEL_R=~(10)|(11);//禁用模拟功能

GPIO_PORTA_DEN_R|=(10)|(11);//使能数字功能

2.2.3设置波特率

设置UART的波特率需要通过UART控制寄存器来完成。例如,设置UART0的波特率为115200:

//设置UART0的波特率为115200

UART0_IBRD_R=8;//整数部分

UART0_FBRD_R=104;//小数部分

UART0_LCRH_R=(UART_LCRH_WLEN_8|UART_LCRH_FEN);//8位数据,1位停止位,无奇偶校验

2.2.4配置UART控制寄存器

配置UART控制寄存器可以设置数据位、停止位、奇偶校验等参数。例如,配置UART0为8位数据、1位停止位、无奇偶校验:

UART0_LCRH_R=(UART_LCRH_WLEN_8|UART_LCRH_FEN);//8位数据,1位停止位,无奇偶校验

2.2.5使能UART模块

使能UART模块需要通过UART控制寄存器来完成。例如,使能UART0模块:

UART0_CTL_R|=UART_CTL_UARTEN;//使能UART0

2.3UART数据发送和接收

UART数据的发送和接收通过UART数据寄存器(DR)来完成。

2.3.1发送数据

发送数据时,将数据写入UART数据寄存器(DR)。例如,发送字符’A’:

//发送字符A

UART0_DR_R=A;

2.3.2接收数据

接收数据时,从UART数据寄存器(DR)读取数据。例如,接收并处理数据:

//接收数据

charreceived_char=UART0_DR_R;

2.4UART中断配置

UART中断可以用于异步处理数据的发送和接收。配置UART中断需要以下几个步骤:

使能UART中断。

配置中断处理函数。

使能全局中断。

2.4.1使能UART中断

使能UART中断需要通过UART控制寄存器和中断控制寄存器来完成。例如

您可能关注的文档

文档评论(0)

找工业软件教程找老陈 + 关注
实名认证
服务提供商

寻找教程;翻译教程;题库提供;教程发布;计算机技术答疑;行业分析报告提供;

1亿VIP精品文档

相关文档