• 在eclipse上搭建基于ARM芯片的嵌入式开发平台


    一、安装eclipse

      1、下载eclipse

       下载eclipse,下载链接:https://www.eclipse.org/downloads/

      找到下载入口,点击“Download Packages”进去,如下图所示:

      找到用于嵌入式的IDE,根据当前电脑系统选择对应的安装包下载,如下图所示:

      2、安装eclipse

      下载完成后,是一个压缩包,直接解压到指定文件夹即可,无需安装,如下图所示:

       

    二、安装ARM交叉编译工具

       1、下载ARM交叉编译工具

      下载ARM交叉编译工具,下载链接:https://launchpad.net/gcc-arm-embedded

      找到下载入口,点击进去,如下图所示:

       根据对应的系统选择相应的版本,这里选择windows版本下载,如下图所示:

      2、安装ARM交叉编译工具

      这里选择安装在了和eclipse同一个文件路径下,如下图所示:

       在该路径下我们可以看到许多关于ARM的可执行文件,其中就包含用于编译ARM平台C代码的工具,如下图所示:

    三、创建一个基于嵌入式的工程

      1、创建一个空的嵌入式工程

      打开Eclipse找到“C/C++ Project”进行工程创建,如下图所示:

       选择创建C工程,如下图所示:

       工程的名字为“demo”,工程类型为“Empty Project”即创建一个空工程,工具链选择“Cross ARM GCC”,如下图所示:

       这里要选择上面安装的编译工具链和对应的路径,如下图所示:

       创建的工程只有一些包含信息,剩下的还需要自己去完善,如下图所示:

    四、完善一个自己的工程

       1、添加相关文件

      这里我添加了与自己使用的芯片相关的一些配置文件,如下图所示:

      2、修改配置信息 

      进入工程属性对话框,如下图所示:

       首先确定内核信息是否匹配,如果不匹配根据自己当前情况进行修改,如下图所示:

       调试等级改低点,如下图所示:

       增加与芯片库有关的宏定义,如下图所示:

       增加头文件路径

      增加链接脚本文件,如下图所示:

    五、编译工程

       1、编译工程

      编译工程发现有错误,提示没有找到“make”路径,错误信息如下图所示:

      2、解决错误信息方式

      ①使用Eclipse内部自带的“make”功能

      在工程属性中找到相关设置,选择内部编译器即可,如下图所示:

       ②使用外部“make”功能

      在Eclipse安装路径下添加一个“tools”文件夹,在里面添加make.exe等相关的文件,文件来源我这里没法提供,有兴趣的可以复制NXP或者STM32官方基于Eclipse的IDE的文件,这里我只做演示,如下图所示:

      在系统的环境变量配置中添加“make”的路径,如下图所示:

       重新启动Eclipse软件,再次编译该工程,没有问题

    六、使用J-Link烧录程序并进行调试

       1、双击绿色的小虫子或者选择绿色小虫子旁边的下拉符号选择“Debug Configurations...”,进行J-Link调试配置创建(要保证电脑已经安装过Segger),如下图所示

       2、Debug文件配置,在设备名栏目中正确输入和当前使用芯片一致的名字,如下图所示:

       点击“Debug”便可进入调试模式,单步调试,变量“count”计数正常,如下图所示:

      至此,环境搭建基本完成。

    #end

  • 相关阅读:
    putty加了密钥ssh不能登陆,PuTTY:server refused our key问题的解决(转)
    CentOS 7 yum 安装php5.6
    sqlite3.OperationalError: no such table: account_user
    python解决八皇后问题的方法
    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 140: invalid continuation byte
    GET /static/plugins/bootstrap/css/bootstrap.css HTTP/1.1" 404 1718
    Java中wait()与notify()理解
    Javac可以编译,Java显示找不到或无法加载主类
    《剑指offer》第三十题:包含min函数的栈
    《剑指offer》第二十九题:顺时针打印矩阵
  • 原文地址:https://www.cnblogs.com/wenhao-Web/p/14194287.html
Copyright © 2020-2023  润新知