一、CubeMX移植
选择packs->select components 接着选择rtthread->kernel 选上rtos 接下来
取消nvic选项中的对应选项 接下来便可以根据需求选择对应功能
二、简单代码
struct rt_thread led_thread;
rt_uint8_t rt_led_thread_stack[128];
void led_task_entry(void *parameter);
void MX_RT_Thread_Init(void)
{
rt_thread_init(&led_thread,"led",led_task_entry,RT_NULL,&rt_led_thread_stack[0],sizeof(rt_led_thread_stack),3,20);
rt_thread_startup(&led_thread);
}
void led_task_entry(void *parameter)
{
while(1)
{
HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_13);
rt_thread_delay(1000);
}
}
在main函数的while循环前创建线程
MX_RT_Thread_Init();
while (1)
{
HAL_GPIO_TogglePin(GPIOC,GPIO_PIN_14);
rt_thread_mdelay(500);
}
三、结果
四、参考
基于 STM32CubeMX 添加 RT-Thread 操作系统组件(一)- 详细介绍操作步骤
|