当前位置:网站首页>STM32H743IIT6学习笔记03——使用第三方组件FreeRTOS
STM32H743IIT6学习笔记03——使用第三方组件FreeRTOS
2022-08-05 11:45:00 【火红色祥云】
STM32H743IIT6学习笔记——使用第三方组件FreeRTOS
CubeMX配置
- 使用外部高速时钟
- 配置时钟树
- 使能FreeRTOS
- 配置FreeRTOS内核(使用默认配置)
- USE_PREEMPTION:
- CPU_CLOCK_HZ:
- TICK_RATE_HZ:
- MAX_PRIORITIES:
- MINIMAL_STACK_SIZE:
- MAX_TASK_NAME_LEN:
- USE_16_BIT_TICKS:
- IDLE_SHOULD_YIELD:
- USE_MUTEXES:
- USE_COUNTING_SEMAPHORES:
- QUEUE_REGISTRY_SIZE:
- USE_APPLICATION_TASK_TAG:
- ENABLE_BACKWARD_COMPATIBILITY:
- USE_PORT_OPTIMISED_TASK_SELECTION:
- USE_TICKLESS_IDLE:
- USE_TASK_NOTIFICATIONS:
- 添加任务
- 添加LED闪烁任务
低优先级、动态分配内存,栈大小128*4个字节 - 添加shell处理任务(下一篇文章移植lettershell)
- 配置LED引脚以及USART1外设
- 生成代码
- 编译
- 在
freertos.c
中添加代码
- LED
/* USER CODE END Header_LEDHandler */
void LEDHandler(void *argument)
{
/* USER CODE BEGIN LEDHandler */
/* Infinite loop */
for(;;)
{
HAL_GPIO_TogglePin(GPIOB,LED0_Pin);
HAL_GPIO_TogglePin(GPIOB,LED1_Pin);
osDelay(500);
}
/* USER CODE END LEDHandler */
}
- shellhandler
/* USER CODE END Header_ShellHandler */
void ShellHandler(void *argument)
{
/* USER CODE BEGIN ShellHandler */
/* Infinite loop */
for(;;)
{
printf("ShellHandler\r\n");
osDelay(1000);
}
/* USER CODE END ShellHandler */
}
- 在
usart.c
中添加printf的重定向函数
/* USER CODE BEGIN 1 */
int fputc(int ch,FILE *f)
{
while((USART1->ISR&0x40)==0){
}
USART1->TDR = (uint8_t)ch;
return ch;
}
/* USER CODE END 1 */
使能MicroLib
编译,下载、验证
边栏推荐
猜你喜欢
【硬件架构的艺术】学习笔记(2)同步和复位
5G NR system messages
Android development with Kotlin programming language II Conditional control
TiDB 6.0 Placement Rules In SQL 使用实践
关注微信公众号,自动登陆网站
Five reasons why developers choose Klocwork, a static analysis tool for code quality, for software security
The training set Loss converges, but the test set Loss oscillates violently?
Apache APISIX Ingress v1.5-rc1 发布
碘乙酰胺在Desthiobiotin-Iodoacetamide试剂中的作用?
学习用于视觉跟踪的深度紧凑图像表示
随机推荐
PHP高级检索功能的实现以及动态拼接SQL
版本控制篇 | 龙智邀您共赴GOPS全球运维大会,探索大规模、敏捷、高质量、开放式的软件研发与运营之路
Flink Yarn Per Job - RM启动SlotManager
机器学习——集成学习
I'm going crazy.Again A few days can not be A problem
互联网行业凛冬之至,BATM的程序员是如何应对中年危机的?
解决运行文件消失、C盘空间不断缩小而且找不到文件位置的问题
广告电商系统
低代码平台开发有什么好处?
60行从零开始自己动手写FutureTask是什么体验?
LeetCode刷题(8)
Android 开发用 Kotlin 编程语言三 循环控制
多业务模式下的交易链路探索与实践
Android 开发用 Kotlin 编程语言一 基本数据类型
Discover the joy of C language
课表小程序使用攻略
Wingide 快捷键
手把手教你定位线上MySQL慢查询问题,包教包会
高泽龙出席博鳌全球旅游生态大会 讲元宇宙与未来网络科技
todolist案列——原生js