一. 导入 LiteOS-M 源代码 1.下载LiteOS-M 源代码
2.在Keil 5.0中打开项目,根据下面图示将源码导入对应路径下 二. 环境配置1.设置宏定义,如系统版本、处理器类型等。
2.配置编译路径,如头文件、库文件等的搜索路径。
3.保存环境配置,使配置生效。 三. 编译编译代码,以确保所有代码都满足编译要求并解决任何编译错误。通过详细检查编译错误消息并在代码中进行修复,以确保编译通过。
kernelarcharmcortex-m4iarlos\\_exc.S 32 PRESERVE833 SECtiON .text: CODE(2)34 THUMB35 EXPORT HalExcNMI36 EXPORT HalExcHardFault37 EXPORT HalExcMemFault38 EXPORT HalExcBusFault39 EXPORT HalExcUsageFault40 EXPORT HalExcSvcCallKeil 中的汇编程序不支持“SECTION”指令。 “SECTION”指令通常用于 GNU 汇编器 (GAS),但 Keil 使用不支持此指令的不同汇编器。
将 "SECTION"指令替换为"AREA"指令 AREA MyCode, CODE, READONLYRe-build 出现如下错误
错误提示"Instruction not supported on targeted CPU"通常表示代码中使用的指令在选定的 CPU 上不受支持。
要解决此错误,可以尝试以下步骤: 1、验证 Keil 项目中是否选择了正确的 CPU。打开 Project 菜单,选择 Options for Target,然后选择 Devices 选项卡。确保选择了正确的 CPU。 2、检查有问题的指令。确保所选 CPU 支持该指令。您可以参考处理器的参考手册以获取受支持的指令列表。 3、如果该指令不受支持,可能需要使用 CPU 支持的等效指令替换它。 4、重新构建项目,检查错误是否已经解决。 kernelarcharmcortex-m4iarlos\\_dispatch.S", line 122: BLX OsSchedTaskSwitch为 "BX" 指令在 GD32F427v CPU 中受支持。替换后的代码应该是: LDR R0, =OsSchedTaskSwitchBX R0使用Keil 5.0编译LiteOS-M代码,生成固件文件,并烧录到开发板
五. 测试进行系统测试,以确保LiteOS-M在GD32开发板上正常运行,
LED 闪烁,至此移植完成!
原作者:pledge
|