09-20-2017 03:18 PM
Xilinx provides UART driver example, working in BM configuration (xuartps_intr_example.c).
This example utilize interrupts.
However, there no examples on how to utilize UART driver under FreeRTOS!
I've tried wrapping the xuartps_intr_example in a task and creating another task (Beeper), that just prints a perioding message. (see attached file)
It doesn't work as expected, it outputs the following:
"main:: rtÿSuccessfully ran UART Interrupt Example Test"
I am expecting to see messages from the task Beeper, but task Beeper is in the blocked state, in fact all other tasks are in blocked state?!
I am suspecting that the UART interrupt setup affects the FreeRTOS somehow. Unfortunately, there are no clear instructions how to utilize Xilinx drivers under FreeRTOS and no design examples, that utilize interrupts under FreeRTOS.
I'd appreciate any help,
Igor
06-29-2018 09:43 AM - edited 06-29-2018 09:47 AM
You might download code from https://www.freertos.org/a00104.html
(see Full_Demo/serial.c).
and look at this: https://www.freertos.org/RTOS-Xilinx-Zynq.html
I just found many unanswered questions about UART and interrupts. I recommend also reading https://forums.xilinx.com/t5/Embedded-Processor-System-Design/xuart-ps-intr-example-c-code-not-working/td-p/789134
Hope it can help.