Loading...
 

SW4STM32 and SW4Linux fully supports the STM32MP1 asymmetric multicore Cortex/A7+M4 MPUs

   With System Workbench for Linux, Embedded Linux on the STM32MP1 family of MPUs from ST was never as simple to build and maintain, even for newcomers in the Linux world. And, if you install System Workbench for Linux in System Workbench for STM32 you can seamlessly develop and debug asymmetric applications running partly on Linux, partly on the Cortex-M4.
You can get more information from the ac6-tools website and download (registration required) various documents highlighting:

System Workbench for STM32


You are viewing a reply to FreeRTOS running, SUCCESS!  

FreeRTOS running, SUCCESS!

yes you can do that way
in cubemx project you should get Src\usbd_cdc_if.c
with smthg like

static int8_t CDC_Receive_FS (uint8_t* Buf, uint32_t *Len)
{
/* USER CODE BEGIN 6 */
return (USBD_OK);
/* USER CODE END 6 */
}


you can here pass the data to a task using message queue semaphore etc...
up to you and best suite your need
osSemaphoreRelease(xxx);
osMessagePut(xxx....) cpoudl be easier if to pass the buffer address and or size as the message

if you do not mind not using cmsis os layer then you can use direct freertos
xQueueSendFromISR , xSemaphoreGiveFromISR (save some cycle checkign for isr )

I’m doing that in a usb cdc based project wher i’m also re-arming the reception by call USBD_CDC_ReceivePacket(...)
but do only after setup of a new buffer (do not ovewrite data before it get used by the task)
and make sure not to overflow the task queue or lose any data (if using binary semphore).