我是靠谱客的博主 畅快鱼,最近开发中收集的这篇文章主要介绍nRF52832开发笔记-简化版移植FreeRTOS(基于nus例程),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

测试ble_app_uart例程可以正常使用

..nRF5SDK160098a08e2examplesble_peripheralble_app_uartpca10040s132arm5_no_packs

参考usbd_ble_uart_freertos例程

..nRF5SDK160098a08e2examplesperipheralusbd_ble_uart_freertospca10056s140arm5_no_packs

头文件路径

............externalfreertosconfig

............externalfreertosportableARMnrf52

............externalfreertosportableCMSISnrf52

............externalfreertossourceinclude

......config

添加文件

............externalfreertossourcecroutine.c

............externalfreertossourceevent_groups.c

............externalfreertossourceportableMemMangheap_1.c

............externalfreertossourcelist.c

............externalfreertosportableARMnrf52port.c

............externalfreertosportableCMSISnrf52port_cmsis.c

............externalfreertosportableCMSISnrf52port_cmsis_systick.c

............externalfreertossourcequeue.c

............externalfreertossourcestream_buffer.c

............externalfreertossourcetasks.c

............externalfreertossourcetimers.c

nRF_SoftDevice里面添加

............componentssoftdevicecommonnrf_sdh_freertos.c

nRF_Libraries里面去掉

app_scheduler.c

app_timer2.c

drv_rtc.c

nrf_sortlist.c

nRF_Libraries里面添加

............componentslibrariestimerapp_timer_freertos.c

添加配置头文件

..nRF5SDK160098a08e2examplesble_peripheralble_app_uartconfig FreeRTOSConfig.h

工程配置里面添加宏

FREERTOS

在main.c添加头文件

#include "nrf_drv_clock.h"

#include "FreeRTOS.h"

#include "task.h"

#include "nrf_sdh_freertos.h"

#include "semphr.h"

添加SystemView

拷贝C:Program FilesSEGGERSystemViewSrc下面的文件到systemview文件夹,然后放在.. examplesble_peripheralble_app_uart下面

......systemviewSEGGERSEGGER_SYSVIEW.c

......systemviewSampleFreeRTOSV10SEGGER_SYSVIEW_FreeRTOS.c

......systemviewSampleFreeRTOSV10ConfigCortex-MSEGGER_SYSVIEW_Config_FreeRTOS.c

包含头文件路径

......systemviewConfig

......systemviewSampleFreeRTOSV10

......systemviewSEGGER

错误

._buildnrf52832_xxaa.axf: Error: L6200E: Symbol SWI2_EGU2_IRQHandler multiply defined (by nrf_sdh_freertos.o and nrf_sdh.o).

修改sdk_config.h

从NRF_SDH_DISPATCH_MODEL_INTERRUPT改为NRF_SDH_DISPATCH_MODEL_POLLING

错误

._buildnrf52832_xxaa.axf: Error: L6218E: Undefined symbol vApplicationIdleHook (referred from tasks.o).

搜索关键字john_rtos对应修改main.c

可以正常广播和闪烁LED2,LED1是广播灯,打包ble_app_uart_freertos.7z

EventRecorder使用

#include "eventrecorder.h"

/* 初始化 EventRecorder 并开启 */

EventRecorderInitialize(EventRecordAll, 1U);

EventRecorderStart();

最后

以上就是畅快鱼为你收集整理的nRF52832开发笔记-简化版移植FreeRTOS(基于nus例程)的全部内容,希望文章能够帮你解决nRF52832开发笔记-简化版移植FreeRTOS(基于nus例程)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(59)

评论列表共有 0 条评论

立即
投稿
返回
顶部