- 博客(3)
- 收藏
- 关注
原创 【调试记录】Ubuntu下QEMU模拟运行FreeRTOS
本文详细介绍了在Ubuntu 22.04环境下使用QEMU模拟器运行和调试FreeRTOS实时操作系统的完整流程。主要内容包括:1) QEMU的编译安装及常见问题解决方法;2) FreeRTOS源码获取与ARM Cortex-M3示例编译;3) 通过QEMU运行FreeRTOS的基本命令及效果展示;4) 利用GDB进行内核调试的方法。该指南为开发者提供了无需硬件即可验证RTOS应用的便捷方案,特别适合嵌入式系统学习和开发初期验证阶段。文中包含具体命令和错误解决方案,具有较高的实用价值。
2026-03-05 23:45:35
842
原创 Freertos任务调度全流程解析
调用xTaskCreate函数创建任务,创建流程如下:否是否是否是开始申请TCB内存空间申请任务栈空间申请成功?返回创建失败初始化TCB成员设置任务参数设置任务名设置任务优先级设置栈底位置初始化任务栈模拟第一次调度现场将任务添加到就绪列表调度器已启动?结束(等待调度器启动)新任务优先级 >当前运行任务?结束(等待下次调度)触发任务切换(抢占CPU)结束TCB(Task Control Block,任务控制块)是Freertos的核心数据结构,是操作系统内核用于描述和管理一个任务所有信息的数据结构。可以把它理
2026-02-15 23:11:44
861
原创 C语言内联汇编
本文介绍了C语言中的内联汇编技术,主要分为基本内联汇编和扩展内联汇编两种形式。基本内联汇编格式简单,但功能有限,只能操作全局变量;扩展内联汇编通过添加output、input和clobber/modify部分,实现了更灵活的功能。文章详细讲解了约束符(寄存器约束、内存约束、立即数约束等)、占位符(序号占位符和名称占位符)以及操作数类型修饰符的使用方法,并说明了如何通过clobber/modify部分告知编译器资源修改情况。内联汇编技术能够突破C语言的限制,直接操作寄存器和内存,提升程序的底层控制能力。
2026-02-12 00:08:37
1208
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅