NRF52832串口的使用

在开发nrf52832主要遇到如下问题。但仍然有printf重定向问题未解决。因不影响项目使用。先把过程记录下来。方便日后翻阅。

NRF52832的串口有一个例程:
nRF5_SDK_15.2.0_9412b96\examples\peripheral\uart\pca10040\blank\ses

串口有普通的uart和使用TE的uart。TE就是TASK and event。是IC内部的一个工作机制。将事件和任务关联起来。目的是快速响应。两种串口使用的初始化函数不同。

如下是例程的串口初始化代码

    const app_uart_comm_params_t comm_params =
      {
          RX_PIN_NUMBER,
          TX_PIN_NUMBER,
          RTS_PIN_NUMBER,
          CTS_PIN_NUMBER,
          UART_HWFC,
          false,
#if defined (UART_PRESENT)
          NRF_UART_BAUDRATE_115200
#else
          NRF_UARTE_BAUDRATE_115200
#endif
      };

    APP_UART_FIFO_INIT(&comm_params,
                         UART_RX_BUF_SIZE,
                         UART_TX_BUF_SIZE,
                         uart_error_handle,
                         APP_IRQ_PRIORITY_LOWEST,
                         err_code);

1.若要使用普通模式,需要在main函数中加入这句
在这里插入图片描述
2. sdk_config.h的配置在这里插入图片描述NRF_LOG_BACKEND_UART_ENABLED宏需要设置为0.否则初始化的时候会返回NRF_ERROR_INVALID_STATE 错误。表示外设已经初始化了一次了。

  1. 增加编译文件和增加头文件。注意这个库使用到了fifo组件。所以需要包含进这个fifo组件和头文件
    在这里插入图片描述在这里插入图片描述

  2. 上面改好后。就可以使用函数app_uart_get(), app_uart_put()实现收发。

printf不知道为何从RTT输出,不从串口输出。查了下nordic的论坛,尚未找到对症的答案。先放着先。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
nRF52832串口DFU是指使用Nordic公司为其nRF52832芯片提供的串口(USART)接口进行固件升级的一种方法。串口DFU代表数据固件升级(Data Firmware Update),通过串口接口将新的固件传输到nRF52832芯片中,实现固件升级的功能。 nRF52832是一款低功耗、高集成度的蓝牙低功耗(BLE)系统级芯片,适用于物联网和低功耗应用。在开发过程中,固件升级是一个重要的环节,可以使产品保持最新的功能和性能,修复已知的漏洞和错误。 nRF52832串口DFU的工作原理是通过将新的固件文件传输到nRF52832芯片的内部存储器进行更新。首先,在计算机上安装nRF52832串口DFU工具,并连接串口线将计算机与nRF52832芯片连接起来。然后,选择要升级的固件文件,并发送到串口接口。nRF52832芯片会接收到固件文件并将其存储到内部存储器中。最后,芯片重启并加载新的固件,完成固件升级过程。 使用nRF52832串口DFU进行固件升级具有很多优点。首先,它可以通过串口线直接从计算机传输固件文件,无需额外的硬件设备。其次,升级过程简单方便,不需要拆卸设备或更换芯片。此外,nRF52832芯片的低功耗特性使得固件升级过程中能够保持设备的低功耗工作状态。 总的来说,nRF52832串口DFU是一种方便、高效的固件升级方法,可以帮助开发人员和制造商保持产品的最新性能和功能,并提供更好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值