loccd wrote on Monday, December 25, 2017:
Hello: I am self-teaching myself STM32 and FreeRTOS, and I am having difficulty finding examples for this stuff compared to the plethora of examples I was able to gather when learning AVR’s and arduino-land. I am trying to make a base for myself to use whenever I start a new project, and I am getting stumped on how to effectively use a UART with the CubeMX HAL and FreeRTOS.
In 2009, someone asked this very question, and the founder of FreeRTOS made a suggestion:
https://www.freertos.org/FreeRTOS_Support_Forum_Archive/July_2009/freertos_Best_way_to_implement_generic_UART_drivers_3321054.html
“…an efficient way would be to have a DMA pass data to and from the UART and a circular buffer. Then have the DMA interrupt use a semaphore to unblock tasks when there is enough data to make it worth processing.”
So my question: does someone have an example of this working, ideally with the CubeMX HAL? I have been reading about task notifications (which I can use, since CubeMX uses FreeRTOS v9.0), is there an example that does this with those instead of semaphores? My base code that I am trying to port from arduino land, uses a command parser that can accept messages of varying length, and I need to keep that functionality.
I apolgize in advance for the n00b question… it is hard for me to take everything I’ve learned thus far and start from a blank page, and example to learn from would help me greatly. Thank you in advance