BLE应用程序与UART调试消息

3个帖子/ 0个新
最后发表
rydello
离线
最后看到:4年7个月前
加入:2015-10-29 16:51
BLE应用程序与UART调试消息

是否有一个SDK 5.0.3示例BLE项目(target_app)使用UART进行调试?外围设备示例"\projects\target_apps\peripheral_examples" use "\projects\target_apps\peripheral_examples\shared\common_uart\common_uart.c",其中包含注释:“(不要用于你的设计)-(遗留)”和BLE示例项目我发现没有使用printf调试,所以我不确定如何“添加”printf调试到BLE示例。
谢谢你!

设备:
MT_dialog
离线
最后看到:4个月2天前
工作人员
加入:2015-06-08 34
嗨rydello,

嗨rydello,

根据SKD5模板,请检查以下步骤,以实现UART上的打印功能:

1)在da1458x_config_basic.h文件中定义CFG_PRINTF_UART2。

2)在user_peri_setup .h中修改TX默认引脚为P0_4, RX默认引脚为P0_5

3)在schedule_while_ble_on中做如下修改:

//授予控制给应用程序,尝试去睡觉
//如果应用返回GOTO_SLEEP
如果(app_asynch_trm ())

继续;//再次调用rwip_schedule()

其他的

arch_printf_process ();
打破;

4)在.app_on_ble_powered中的user_callback_config.h中,用自定义函数e.x. user_app_on_ble_powered替换NULL值

5)在empty_peripheral_template.h文件中声明并实现user_app_on_ble_powered函数,如下所示:

实现:枚举arch_main_loop_callback_ret user_app_on_ble_powered(void){返回KEEP_POWERED;}

6)包含提供printf功能的“arch_console.h”文件。

7)使用arch_puts来打印数据到你的uart。

由于MT_dialog

rydello
离线
最后看到:4年7个月前
加入:2015-10-29 16:51
谢谢你!我现在可以

谢谢你!我现在能够看到我的uart调试输出消息。我已经确保定义了CFG_PRINTF和CFG_PRINTF_UART2,我修改了UART2 TX和RX端口/引脚的定义,并实现了user_app_on_ble_powered()回调。但是,schedule_while_ble_on()中的建议更改似乎并不起作用,因为只有在user_app_on_ble_powered()返回false(0)值时才调用arch_printf_process()。我留下的代码,这似乎是工作:
//授予控制给应用程序,尝试去睡觉
//如果应用返回GOTO_SLEEP
如果(! app_asynch_trm ())
打破;

/ / SDKIMPROVEMENTS需要测试! !我们可以添加以下条件并移动
//退出循环
//我们可以考虑把它放在app_asynch_trm之前
/ /如果(GetBits16 (CLK_CTRL_REG RUNNING_AT_XTAL16M))

//执行printf进程
arch_printf_process ();

谢谢!

主题锁定