如何移植 S32DS 上 S32K116 工程至 KEIL

一 、概述

     本篇博文主要介绍如何移植 S32DS 上的 S32K116 工程至 KEIL ,以及介绍移植过程中可能出现的问题进行处理的方法 ,介绍中使用到的软件版本为 S32DS.ARM.2.2 和 KEIL V5.23.0.0 。

     

二 、移植工程前的准备

    移植前需要安装好 Keil 5 、 S32DS 、S32K116 Keil 的 pack 包 。

    Keil 下载地址 :

        https://www.keil.com/demo/eval/arm.htm

 

    S32DS 下载地址 :
        https://www.nxp.com.cn/design/software/development-software/s32-design-studio-ide/s32-design-studio-for-s32-platform:S32DS-S32PLATFORM

 

    pack 包下载地址 :

       https://keilpack.azureedge.net/pack/Keil.S32_SDK_DFP.1.2.0.pack

    安装完成以上准备 ,下面开始介绍创建和移植S32DS 移植 S32K116 工程到 KEIL的方法及操作步骤 。

三 、S32DS 创建和导出 S32K116 工程

      1,打开 S32 Design Studio ,在菜单栏中点击 File -> New -> S32DS Project from Example 创建 SDK 工程 。

      

  1.  在弹出窗口中选择想要移植的 S32K116 的例程 , 这里选择 S32DS Project from Example -> S32K116 -> demo_apps -> S32K116_Project_LPUART 例程作为演示 。

     

     

  1.  若创建的工程是基于SDK 的需要 ,选中创建的工程 ,在菜单栏中选择 Project -> Generate Processor Expert Code 生成工程完整代码 。

     
      

  1.  选中创建的工程 ,右键 -> Export -> File System -> Next -> Finish 导出例程 。


      

     以 File System形式导出 。可以修改保存地址 ,点击 Finish 完成导出工程 。

     

     To directory 可修改导出工程的路径

     


四 、创建和导入工程至 Keil

  1.  Keil 创建一个新的工程 ,在菜单栏中点击 File -> New -> S32DS Project from Example 创建 SDK 工程 。


     

  1.  选择工程保存的路径和名称 ,点击保存创建 。

     
          

  1.  这里需要完成前面的准备步骤 ,完成安装 pack 包 ,在弹出界面选择对应的芯片 ,这里使用的是 S32K116 的芯片 。

     
     

      4. 点击菜单栏中的 ,在弹出界面勾选 CMSIS -> CORE 和 Device -> Startup 。


     

 

     完成对 Keil 工程的创建 。

 

      

     5.  将 S32DS 创建工程下的 src 文件夹 ,复制到 Keil 创建的工程根目录下 。

      

         S32DS 创建工程下的 src 文件夹

      

     复制到 Keil 创建工程的根目录

  1.  将复制的文件包含至工程 ,点击  ,打开 Manage Project Items -> 添加文件 -> OK 。


     

五 、编译

  1.  第一次编译会报错 ,找不到 “ S32K116.h ”,添加 S32K116.h 到工程 。


     

      2.  在工程目录中 Device -> startup.c (Startup) -> S32K116.h 找到并打开 S32K116.h 文件 ,选中 S32K116.h 标签页右键 -> Copy Full Path 复制该文件的路径 。


     

      3. 点击  ,打开 Options -> C/C++ -> Include Paths -> 添加上一步复制的 S32K116.h 路径 ,注意需要将路径后的 \S32K116.h 删去 。

     

  1.  再次编译 ,可能会出现无法识别二进制的错误 ,双击报告错误 ,跳至错误处修改成十进制 。


      

  1.  再次编译还存在错误 ,点击 ,打开 Options -> Linker -> Scatter File 添加 S32K116_17_flash_AC5.sct ,同时取消勾选 Use Memory Layout from Target Dialog 。 


      

 

  1.  再次编译 ,编译成功 ,至此完成对 S32DS 中的 S32K116 工程移植至 Keil 。


     

六 、参考资料

     【 S32K144移植S32DS工程到KEIL MDK(史上最详细)】

       https://blog.csdn.net/zz56z56/article/details/100748724

     【 S32K144 基于 MDK5 移植 FreeRTOS 10.1.1 】

https://www.wpgdadatong.com/blog/detail?BID=B0405

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论