STM32L476移植华为LiteOS系列教程---修改链接脚本 4

举报
樊心昊 发表于 2020/04/17 12:26:51 2020/04/17
【摘要】 上期我们已经将所需的各种文件都做好了分类,现在需要一些修改。一、修改GCC/os.ld文件该文件的作用:这个文件叫做“链接脚本”,其作用是在我们分别编译各种.c文件等待链接为可执行文件时,用该链接脚本中的信息的链接。换句通俗易懂的话来说,这个文件的作用就是规定了后面我们烧写代码时,每个函数或变量存储在单片机的flash中的地址。开始修改:先找到._user_heap_stack,在”._us...

上期我们已经将所需的各种文件都做好了分类,现在需要一些修改。

一、修改GCC/os.ld文件

该文件的作用:这个文件叫做“链接脚本”,其作用是在我们分别编译各种.c文件等待链接为可执行文件时,用该链接脚本中的信息的链接。换句通俗易懂的话来说,这个文件的作用就是规定了后面我们烧写代码时,每个函数或变量存储在单片机的flash中的地址。

开始修改:先找到._user_heap_stack,在”._user_heap_stack :{}“后添加

  . = ALIGN(8);

  __los_heap_addr_start__ = .;

  __los_heap_addr_end__ = ORIGIN(RAM) + LENGTH(RAM) - _Min_Stack_Size - 1;

效果图如下:

image.png

该修改好的文件在附件,“os.zip”

阅读过LiteOS_Lab源码的同学一定在targets/开发板/Src/main.c中看到过

image.png

其作用我们可以暂时理解为后面操作系统运行之后,给操作系统来管理__los_heap_addr_start__到__los_heap_addr_end__中间的这段内存,如果大家感兴趣细节,可以给我留言,后面我再着重讲解。

二、复制一些文件到OS_CONFIG中

将LiteOS_Lab\targets\STM32L431_BearPi\OS_CONFIG中的文件全部复制到OS_CONFIG文件夹中我们可以根据需求修改target_config.h文件,该文件中配置了操作系统的相关参数。

    iot_link_config.h    该文件中对使用了的模块进行配置,这里只配置了at模块的相关参数

    los_builddef.h        该文件定义了LiteOS中的段名

    los_printf.h            该文件中实现了输出调试信息的相关宏

    target_config.h      该文件是操作系统的全局配置文件(信号量、互斥锁、任务栈等等)

三、复制一些文件到Lib中

将LiteOS_Lab\targets\STM32L431_BearPi\Lib中的全部文件复制到Lib文件夹中,这些文件是用于OTA的库文件。

四、复制一些文件到GCC目录中

将LiteOS_Lab\targets\STM32L431_BearPi_OS_Func\GCC中除了os.ld文件都复制到GCC文夹下


  • 2.40KB 下载次数:3

    附件下载

  • os.zip 2.40KB 下载次数:3
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。