Hello, I have two applications bootloader and UserApp. In bootloader, I am using UART to print my trace logs using LPUART_DRV_SendDataBlocking API.
LPUART_DRV_SendData(INST_LPUART1, (uint8_t *)txbuff, strlen(welcomeMsg)); } But this is not working. But when i do it in the main loop, it works. I have the same problem for reception. I have called LPUART_DRV_ReceiveData(INST_LPUART1, &rx_byte, 1UL); in the main loop to ...
打开 \KSDK\platform\drivers\src\lpuartfsl_lpuart_driver.c文件,在 LPUART_DRV_SendData 函数的开始部分添加下面的语句把UART 设置为发送模式: LPUART_HAL_SetTxdirInSinglewireMode(LPUART0, kLpuartSinglewireTxdirOut); //设置工作模式为发送模式 然后在中断服务程序 LPUART_DRV_IRQHandler 中,修改代码让它在...
{ /* If this was the last byte, complete transfer, will disable tx interrupt */LPUART_DRV_CompleteSendData(instance) ; LPUART_HAL_ClearStatusFlag(base, kLpuartTxDataRegEmpty) ; //设置工作模式为接收模式 LPUART_HAL_SetTxdirInSinglewireMode(LPUART0, kLpuartSinglewireTxdirIn) ;} ...
Under Component Inspector window, I had lpuart1 configured with 9 bits data, and parity mode disabled. The 9th bit is utilized as address wake up. I was unable to set the 9th bit to high for the first byte in my data packet. The API LPUART_DRV_SendData() only allows me to send 8...
You can call the same LPUART_DRV_SendData and LPUART_DRV_ReceiveData functions to achieve what you want, just keep in mind that the first parameter should be changed to what instance you need it to. You can check out the SDK documentation that is located in: {ROOT_DIR}\doc\Start_here....
LPUART_DRV_StartSendDataUsingDma <-- so I'm using the DMA transfer EDMA_DRV_ConfigMultiBlockTransfer <-- problem: it configures the number of block to 1 EDMA_DRV_InstallCallback <-- this callback is called when the last block is transferred (This function would call also your LPUART end...
In bootloader, I am using UART to print my trace logs using LPUART_DRV_SendDataBlocking API. Before jumping to UserApp, I am doing all deinit calls ex. LPUART_DRV_AbortSendingData(INST_LPUART1); LPUART_DRV_Deinit(INST_LPUART1); INT_SYS_DisableIRQGlobal(); EDMA_DRV_Deinit(...
After I enter debug mode and run the program, all the functions are able to executed until LPUART_DRV_SendDataBlocking. I traced down to OSIF_SemaWait and seemed like it didn't respond judging from the system didn't run to the debug point I set at `if (syncStatus == STATUS...
You can call the same LPUART_DRV_SendData and LPUART_DRV_ReceiveData functions to achieve what you want, just keep in mind that the first parameter should be changed to what instance you need it to. You can check out the SDK documentation that is located in:{ROOT_DIR}\doc\Start_here.htm...