ZigBee_CC2530_0AH_串口

  USART0和USART1是串行通信接口,两个USART具有同样的功能,能够分别运行于异步UART模式和同步API模式。

1 串口模式

  UART模式提供异步串行接口,在UART模式中,有2中接口选择方式:2线接口和4线接口:

2线接口:使用RXD(P0_2)、TXD(P0_3)。

4线接口:使用引脚RXD(P0_2)、TXD(P0_3)、RTS(P0_5)和CTS(P0_4)。

  UART模式的操作具有以下特点:

8位或者9位负载数据。

奇校验、偶校验或者无奇偶校验。

配置起始位和停止位。

配置LSB(最低有效位)或者MSB(最高有效位)首先传送。

独立收发中断。

独立收发DMA触发。

奇偶校验和帧校验出错状态。

  UART模式提供全双工传送,接收器中的位同步不影响收发功能。传送一个UART字节包括1个起始位,8个数据位,1个作为可选的第9位数据或者奇偶校验位,再加上1个或者2个停止位。UART操作由USART和状态寄存器UxCSR以及UART控制寄存器UxUCR来控制,这里的x是USART的编号,其数值为0或1、

UxCSR-USARTx控制和状态
名称复位R/W描述
7MODE0R/WUSART模式选择:
  0:SPI模式
  1:UART模式
6RE0R/W启动UART接收器。注意UART完全配置之前不能接收。
  0:禁止接收器
  1:使能接收器
5SLAVE0R/WSPI主或者从模式选择
  0:SPI主模式
  1:SPI从模式
4FE0R/W0UART帧错误状态
  0:无帧错误检测
  1:字节收到不正确停止位级别
3FRR0R/W0UART奇偶校验错误状态
  0:无奇偶校验
  1:字节收到奇偶错误
2RX_BYTE0R/W0接收字节状态,UART模式和SPI模式。当读U0DBUF时该位自动清零,通过写0清除它,这样能有效丢弃U0BUF中的数据。
  0:没有接收字节
  1:接收字节就绪
1TX_BYTE0R/W0传送字节状态,UART和SPI从模式
  0:字节没有传送
  1:写到数据缓存寄存器的最后字节已传送
0ACTIVE0RUSART传送/接收主动状态:
0:USART空闲
1:USART在传送或者接收模式忙碌

  选择USART模式为UART模式并允许接收寄存器设置示例:

//设置UART模式
U0CSR |= 0X80;

//允许接收
U0CSR |= 0x40;

UxUCR-USARTx UART控制寄存器
名称复位R/W描述
7FLUSH0R/W1清除单元。当设置时,该事件将会立即停止当前操作并返回单元的空闲状态。
6FLOW0R/WUART硬件流使能。从RTS和CTS引脚选择硬件流控制的使用
  0:流控制禁止
  1:流控制使能
5D90R/WUART奇偶校验位。当使能奇偶校验,写入D9的值决定发送的第9位的值。如果收到的第9位不匹配收到的字节的奇偶校验,接收报告ERR。
  0:奇校验
  1:偶校验
4BIT90R/WUART9位数据使能。当该位是1时,使能奇偶校验位传输即第9位。如果通过PARITY使能奇偶校验,第9位的内容通过D9给出。
  0:8位传输
  1:9位传输
3PARITY0R/WUART奇偶校验使能。除了为奇偶校验设置该位用于计算,必须使能9位模式
  0:禁用奇偶校验
  1:使能奇偶校验
2SPB0R/WUART停止位数。选择要传送的停止位的位数
  0:1位停止位
  1:2位停止位
1STOP0R/WUART停止位的电平,必须不同于开始为的电平
  0:停止位低电平
  1:停止位高电平
0START0R/WUART起始位电平,闲置先的极性采用选择的起始位级别的电平相反的电平
  0:起始位低电平
  1:起始位高电平
  当UxCSR.MODE设置为1时,就选择了UART模式。当USART收发数据缓冲器UxDBUF写入数据时,该字节发送至输出引脚TXD。UxDBUF寄存器是双缓冲的。

UxDBUF-USARTx接收/发送数据缓存寄存器
名称复位R/W描述
7:0DATA[7:0]0x00R/W  USART接收和传送数据。当写这个寄存器的时候数据被写到内部的传送数据寄存器,当读取该寄存器的时候,数据俩字内部读取的数据寄存器。
  需读出U0DBUF接收的字符串数据,寄存器的设置示例:

//定义一个字符型变量
unsigned char temp;

//读出U0DBUF中的数据
temp = U0DBUF;

1)UART的发送过程

2)UART的接收过程

3)UART的硬件流控制

4)UART的特征格式

5)波特率的产生

6)系统时钟的设置

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值