sem); // 发送数据 last_state = button_state;} osDelay(10); // 延迟一段时间 } } ...
delay_us()是us级延时函数,delay_ms()和delay_xms()都是ms级的延时函数,delay_us()和delay_xms()不会导致任务切换。delay_ms()其实就是对FreeRTOS中的延时函数VTaskDelay()的简单封装,所以在使用delay_ms()的时候就会导致任务切换。 delay.c修改完成以后编译一下,会提示如图示错误: 从图可以看出在port.c...
编译没问题, 但是一运行程序卡在了HAL_Delay()这个函数如下图 解决办法 经过询问大佬得知,此种情况...
vTaskDelay(500); } } void led2_task(void* arg) { while(1) { HAL_GPIO_TogglePin(GPIOD, GPIO_PIN_2); vTaskDelay(300); } } void print_task(void* arg) { while(1) { HAL_UART_Transmit(&huart1, (uint8_t *)"HelloWorld\r\n", 12, 100); vTaskDelay(1000); } } int main(v...
5HAL_DelayUs微妙延时,可选实现 6HAL_GetTimeMs获取毫秒数,必选实现 7HAL_GetTimeSeconds获取时间戳,必须实现,时戳不需绝对准确,但不可重复 8hal_thread_create线程创建,必选实现 9hal_thread_destroy线程销毁,必选实现 10HAL_SleepMs放权延时,必选实现 ...
(二)移植FreeRTOS 解压FreeRTOS源码包有如下文件结构:在Keil工程目录下新建FreeRTOS文件夹用于存放free...