NRF51822开发笔记-8.nRF51822裸机实验UART串口调试

NRF51822开发笔记-8.nRF51822裸机实验UART串口调试

  • 一、设计思路
  • 二、代码初始化
  • 三、UART串口实例

一、设计思路

1.查看NRF51822的手册UART部分
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第1张图片
NRF51822的UART主要功能特性
•全双工操作
•自动流控制
•第9个数据位的奇偶校验和生成
与UART关联的不同信号RXD,CTS(清除发送,低电平有效),RTS(发送请求,低电平有效)和TXD根据PSELRXD,PSELCTS,PSELRTS和 PSELTXD寄存器分别配置。 如果在这些寄存器中的任何一个中指定了0xFFFFFFFF的值,则相关的UART信号将不会连接到任何物理引脚。 PSELRXD,PSELCTS,PSELRTS和PSELTXD寄存器及其配置仅在使能UART的情况下使用,并且仅在器件处于ON模式的时间内保留,仅当禁用UART时,才必须配置PSELRXD,PSELRTS,PSELTRTS和PSELTXD。
为了在系统处于关闭模式时通过UART确保引脚上的信号电平正确,必须按照图示配置:GPIO配置中的说明在GPIO外设中配置引脚。
一次只能分配一个外设来驱动特定的GPIO引脚。 否则可能会导致无法预测的行为。
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第2张图片

二、代码初始化

1.UART初始化
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第3张图片
2.UART输出字符和字符串函数
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第4张图片
3.接收字符
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第5张图片

三、UART串口实例

1.确定开发板的UART的GPIO编号
TX:GPIO11
RX:GPIO09
RTS:GPIO10
CTS:GPIO08
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第6张图片
2.GPIO初始化
在这里插入图片描述
3.源代码如下

int main(void)
{
  simple_uart_config(RTS_PIN_NUMBER, TX_PIN_NUMBER, CTS_PIN_NUMBER, RX_PIN_NUMBER, HWFC);
  //uart_start();
	simple_uart_putstring((const uint8_t *)" \n\rStart: ");
  while(true)
  {
    uint8_t cr = simple_uart_get();
    simple_uart_put(cr);

    if(cr == 'q' || cr == 'Q')
    {
      simple_uart_putstring((const uint8_t *)" \n\r'q' or 'Q': ");
    }
  }
}

4.实验结果
NRF51822开发笔记-8.nRF51822裸机实验UART串口调试_第7张图片

你可能感兴趣的:(nRF51822)