嗨对话框:
1,打开我的Keil项目。(da1458x_sdk_5.0.2.1 \ da1458x_sdk \ 5.0.2.1 \ projects \ target_apps \ template \ empty_peripheral_template)
2,打开以下文件:
\\ da1458x_config_basic.h.
修改以下行:
//////// //////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
#define cfg_printf.
#ifdef cfg_printf.
#define cfg_printf_uart2.
#万一
//////// //////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
3,打开以下文件:
\\ user_periph_setup.h.
修改以下行:
//////// //////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
#ifdef cfg_printf_uart2.
#define gpio_uart2_tx_port gpio_port_0.
#define gpio_uart2_tx_pin gpio_pin_4.
#define gpio_uart2_rx_port gpio_port_0.
#define gpio_uart2_rx_pin gpio_pin_5.
#万一
//////// //////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////
4,打开文件:
@file arch_main.c.
静态内联void schedule_whle_ble_on(void)
{
// BLE时钟已启用
而(ble_is_powered()){
//设置了BLE事件结束。条件RF校准可以运行。
UINT8_T BLE_EVT_END_SET = KE_EVENT_GET(KE_EVENT_BLE_EVT_END);
//执行消息和事件
Rwip_schedule();
//
if(ble_evt_end_set)
{
uint32_t sleep_duration = 0;
rcx20_read_freq();
//如果您有足够的时间运行收音机的温度校准
if(lld_sleep_check(&sleep_duration,4))// 6插槽 - > 3.750 ms
//检查时间和温度以运行无线电校准。
条件_run_radio_cals();
}
//////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
#ifndef cfg_printf //我的修改
//授予对申请的控制,尝试睡觉
//如果Applciation返回Goto_Sleep
if(!app_asynch_trm())
休息;
#endif // cfg_printf //我的修改
//////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// sdkimprovements需要测试!!我们可以添加以下条件并移动
//它从循环中出来
//我们可以考虑在app_asynch_trm之前把它放在
// if(getbits16(clk_ctrl_reg,running_at_xtal16m))
//执行printf进程
ARCH_PRINTF_PROCESS();
//////// //////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
//添加测试
#if test_console_printf.
ARCH_PRINTF(“测试”);
#endif // test_console_printf.
//////// //////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////
}
}
嗨Libra_13179,
检查这篇文章以使用UARThttp://support.dialog-semicondiondiondum/sdk-5-uart.
谢谢mt_dialog.
嗨mt_dialog.
谢谢你的回复。我找到了关键:
@void periph_init(void)添加Arch_printf(“test \ r \ n”);
和调试停止
void wrap_platform_reset(UINT32_T错误)
{
assert_warning(错误== reset_after_spota_update);//在Spota重置的情况下不要破坏
platform_reset_func(错误);
}