zoukankan      html  css  js  c++  java
  • Eclipse中STM32工程建立步骤

      前段时间一直在折腾linux系统上STM32的开发,网上一顿搜,费劲九牛二虎之力终于把环境搭好了(现在都有点忘了,后面再折腾环境搭建一定要写个教程,今天先不写了).

      自从环境搭好之后,就基本抛弃MDK了,用了几个月,感觉Eclipse实在比MDK好用一百倍,用它写代码简直就是一种享受,下面趁着还熟,记录一下工程建立步骤:

      先来张整体效果图:  

      第一步:File-new,新建project,选择C Project,如下图:

      第二步:选择工程模板(STM32F10X C/C++Project),填写工程名:PowerTest_V0.0.4,如下图:

      第三步:根据芯片类型填写Flash和RAM空间大小,如下图:

      第四步:不用做任何修改,如下图:

      第五步:不要选择Debug项,只选择Release即可(Debug项一直编译不通过,默认的工程模板都不行),如下图:

      第六步:选择交叉编译工具arm-none-eabi-gcc

      第七步:至此工程建立完毕,是默认自带的一个闪灯程序,可以编译成功,如下;

      第八步:将默认的闪灯程序替换成自己的代码,直接在磁盘中将原来的代码删掉,

    替换为:

    同样的头文件也做相应替换,另外原来的模板中库文件并未包含stm32f10x_systick源文件及头文件,需要单独添加,如下:

    替换之后,回到工程,此时工程中的代码文件应该会自然更换,如未更换,则可右键工程名,点击Refresh手动刷新.

      第九步:此时再点击编译,一定会有很多错误,原因就是很多头文件被默认过滤掉了,打开工程属性对话框,修改过滤器,具体步骤为:右键点击工程名,点击Property,选择Paths and Symbols,继续选择Source Location,点击Edit Filter,如下:

    选择自己需要的头文件,从过滤器中删除,如下图(常规串口或定时器类的头文件肯定必须删除过滤):

       第十步:工程默认是编译成Hex文件的,如果要编译成Bin文件,则在Settting中修改即可,如下:

      第十一步:重新编译,可编译成功,生成Bin文件,如下:

      第十二步:有时候需要修改Flash地址,则在mem.ld文件中可直接修改,如下:

      第十三步:此时生成的Bin文件,便可直接烧录到板卡芯片中

       第十四步:有人会问了,该如何烧录呢,其实跟在Windows系统中一样,可以用Jlink,安装Jlink驱动(具体自行百度),便可自由烧录了,可用命令行操作,如下:

    Jlink烧录bin文件
    1进入bin文件目标;
    2打开/opt/SEGGER/JLink/JLinkExe,进入Jlink操作模式;
    3连接板卡connect
    4选择芯片类型:STM32F103RB
    5选择接口类型 J) JTAG   S)SWD  选S
    6速度,默认即可
    7连接成功,开始烧录
    8 loadbin xxx.bin 0x08000000
    9  h
    10  r
    11 g

      那么能不能也像MDK中一样,直接在工程中烧录呢,当然可以,Eclipse其实也是带有Debug操作功能的,操作步骤如下:

      点击工具栏中Run Common按钮,下拉打开External Tools Configurations,配置Jlink路径及烧录参数,如下图:

      命令中有一个文件需要自己在磁盘上创建,如下:

      

      download.jlink文件中具体内容如下:

      注意文件路劲及文件名要与工程名一致,否则下载找不文件.

      至此便可直接点击工具栏中Run Common中选项进行下载了.

      

      第十五步:愉快编码开始了!!!

  • 相关阅读:
    .Net Core调用NodeJs
    ASP.NET Core中间件中渲染Razor视图
    ASP.NET Core自定义View查找路径,实现主题切换
    Core路由2-Endpoint终结点路由
    Core路由1
    .NET Core的本地化机制(多语言)【转】
    实现ASP.NET Core MVC的插件式开发(ApplicationPart)
    Gitflow工作流程
    Git-开发中遇到紧急任务如何处理
    多线程笔记-CancellationToken(取消令牌)
  • 原文地址:https://www.cnblogs.com/beyonne/p/9050248.html
Copyright © 2011-2022 走看看