|
printf如何通过uart打印到串口?
下面是主要函数,函数已经做了uart相关配置,com口和波特率连接正确(用其它例程验证过),但是串口就是无法打印出log,求大神指导~
//串口事件回调函数,该函数中判断事件类型并进行处理
void uart_error_handle(app_uart_evt_t * p_event)
{
//通讯错误事件
if (p_event->evt_type == APP_UART_COMMUNICATION_ERROR)
{
APP_ERROR_HANDLER(p_event->data.error_communication);
}
//FIFO错误事件
else if (p_event->evt_type == APP_UART_FIFO_ERROR)
{
APP_ERROR_HANDLER(p_event->data.error_code);
}
}
//串口配置
void uart_config(void)
{
uint32_t err_code;
//定义串口通讯参数配置结构体并初始化
const app_uart_comm_params_t comm_params =
{
RX_PIN_NUMBER,//定义uart接收引脚
TX_PIN_NUMBER,//定义uart发送引脚
RTS_PIN_NUMBER,//定义uart RTS引脚,
CTS_PIN_NUMBER,//定义uart CTS引脚
APP_UART_FLOW_CONTROL_DISABLED,//关闭uart硬件流控
false,//禁止奇偶检验
NRF_UART_BAUDRATE_115200//uart波特率设置为115200bps
};
//初始化串口,注册串口事件回调函数
APP_UART_FIFO_INIT(&comm_params,
UART_RX_BUF_SIZE,
UART_TX_BUF_SIZE,
uart_error_handle,
APP_IRQ_PRIORITY_LOWEST,
err_code);
APP_ERROR_CHECK(err_code);
}
int main(void)
{
/* UART初始化 */
uart_config();
nrf_delay_ms(2000);
printf("uart init sucess\r\n"); //就是这个简单的log,串口愣是打印不出来
return 1;
}
}
|
|