The chip is QN9021
This demo code from 1.3.9 QPPS
But I test 1.3.6 QPPS is OK
Other device Baud is 9600
In app_config.h,【#define QN_DEMO_AUTO 1】,I take out the notes,this code is running
I don't understand how this could happen?
Hi Zheng Jung-Hung,
Could you please explain your issue again? Are you trying to set up the uart? Change the baud rate?
Best Regards,
Mario
Same hardware,Download two HEX to chip
【1】1.3.6 qpps demo
【2】1.3.9 qpps demo
I didn't change the code
Receive UART data
1.3.6 is normal(Enter function 【UART_RX_IRQHandler】),but 1.3.9 is not
Hi Zheng,Jung-Hung,
I was checking the uart driver, could you please comment the if(UART == QN_UART0 line?
This condition never will be 1.
Be Sure that the CONFIG_UART0_R/TX_ENABLE_INTERRUPT is true and the UART_R/TX_DMA_EN is False.
#if CONFIG_ENABLE_DRIVER_UART0==TRUE
//if (UART == QN_UART0)
//{
/*
* Set UART config:
*
* - oversample rate is 16
* - HW flow control disable
* - 1 stop bit
* - parity type unused
* - no parity
* - bitorder = LSB
*/
reg = UART_MASK_UART_EN // uart enable
| UART_MASK_UART_IE // uart int enable
//| UART_MASK_CTS_EN
//| UART_MASK_RTS_EN
| UART_OVS16
| UART_MASK_LEVEL_INV
| UART_MASK_BIT_ORDER;
uart_env = &uart0_env;
#if CONFIG_UART0_TX_ENABLE_INTERRUPT==TRUE && UART_TX_DMA_EN==FALSE
// Enable the UART0 TX Interrupt
NVIC_EnableIRQ(UART0_TX_IRQn);
#endif
#if CONFIG_UART0_RX_ENABLE_INTERRUPT==TRUE && UART_RX_DMA_EN==FALSE
// Enable the UART0 RX Interrupt
NVIC_EnableIRQ(UART0_RX_IRQn);
#endif
//}
#endif
Let me know you findings
Best Regards,
Mario