Topic

FAQ
Login Register
TLSR5285et48 UART 进行串口printf和回显
qwe
Apr 17, 2024 14:12

/

A

/A


在single_connection中使用sample例程,加入driver例程中的UART_DEMO进行串口的打印和回显,
#if(UART_MODE_TRX == TX) if(uart_dma_send_flag == 1) { uart_send_dma((unsigned char *)trans_buff); trans_buff[4] ++; uart_dma_send_flag = 0; } #elif(UART_MODE_TRX == RX) uart_dma_send((unsigned char *)trans_buff); gpio_toggle(LED1); sleep_ms(500); #endif
发现printf打印使用的是u_printf函数,但打印数据没有,却可以进行串口回显
#if (UART_MODE==UART_DMA) if(reg_uart_status1 & FLD_UART_TX_DONE) { uart_dmairq_tx_cnt++; uart_dma_send_flag = 1; gpio_toggle(LED2); uart_clr_tx_done(); } #if(UART_DMA_INT_TYPE == UART_RXDMA_IRQ) if(dma_chn_irq_status_get() & FLD_DMA_CHN_UART_RX) { uart_send_dma((unsigned char *)rec_buff); dma_chn_irq_status_clr(FLD_DMA_CHN_UART_RX); uart_dmairq_rx_cnt++; }
使用的是DMA方式,请问如何既能打印又能回显


2 replies
TL_Soyo Apr 17, 2024 16:06
0
/A

你好,

  暂时没理解你的问题,当前printif和串口并没有关联上的,你需要自己将该两部分关联上,才能通过printf打印到dma串口上

qwe [Author] Apr 17, 2024 17:12
0
/A

目前的现象是串口只能回显不能进行printf打印;

对比了uart_demo中的printf和single_connection中的b85m_ble_sample两个printf,

前者#define printf    tl_printf(只能printf)

后者#define printf    u_printf(只能回显)

按照uart_demo例程,应该都关联了吧