Other Parts Discussed in Thread: TMS320DM6437
Hi,
I am using TMS320DM6437 EVM for my project application, and I have some problems about UART0 interrupt.Would you give me some suggestions?
According to the UART example "\dvsdk_1_01_00_15\psp_1_00_02_00\pspdrivers\drivers\uart\sample\build\dm6437_evm_uart_st_sample.pjt",
I create a project to receive data from UART0 using interrupt, and the default settings for UART0 are used. The settings are as follows:
...
bios.ECM.ENABLE = 1;
utils.importFile("dm6437_uart0.tci");
...
bios.TSK.create("TSK_LedBlink");
bios.TSK.instance("TSK_LedBlink").order = 1;
bios.TSK.instance("TSK_LedBlink").comment = "Led Blink";
bios.TSK.instance("TSK_LedBlink").fxn = prog.extern("LedBlink");
bios.HWI.instance("HWI_INT5").fxn = prog.extern("UART0_ISR");
bios.HWI.instance("HWI_INT5").interruptSelectNumber = 84;
bios.HWI.instance("HWI_INT5").useDispatcher = 1;
...
I send ONE byte character to DM6437 EVM using ComAsistant, and the UART0 receiver interrupt occurs.
The program run into the UART0_ISR().
My questions are
(1) I want to set trigger level as 14 bytes, How can I do with Bios_Uart_Driver?
Could you give me an example?
(2) If the trigger level has been setted as 14 bytes, How Can I access the FIFO buffer?
Would you explain it in detail?
(3) Does the function "GIO_read(gioChan,&buf,&size)" work in the polling mode or interrut mode ?
Can I put it in the UART0_ISR function to get data? If cann't, how can I get the data from the receiver FIFO buffer?
Any advice and suggestions will be greatly appreciated.
Sincerely yours
Michael Lee