Windows下STM32单片机的eclipse编译环境搭建

Similar documents
untitled

EK-STM32F

Microsoft Word zw

目 录

NEXT SDT2.51 C:\ARM251 SDT2.51 ARM SDT 2.51 ARM PROJECT MANAGER SDT 2

ICD ICD ICD ICD ICD

ARM Cortex-M3 (STM32F) STMicroelectronics ( ST) STM32F103 Core: ARM 32-bit Cortex -M3 CPU 72 MHz, 90 DMIPS with 1.25 DMIPS/MHz Single-cycle multiplica

(Load Project) (Save Project) (OffLine Mode) (Help) Intel Hex Motor

专注于做最好的嵌入式计算机系统供应商

目 錄 版 次 變 更 記 錄... 2 原 始 程 式 碼 類 型 之 使 用 手 冊... 3 一 安 裝 軟 體 套 件 事 前 準 備... 3 二 編 譯 流 程 說 明

Microsoft Word - 实验一Android开发环境搭建.doc

手册 doc

ARM JTAG实时仿真器安装使用指南

Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1.

STM32 STM3232ARM Cortex-M3 Cortex-M3 STM32Thumb-2 STM32MCU Cortex-M3ARM MCU STM32ARM 32 ARMCortex-M3 32 STM32 Cortex-M3 ARM Cortex-M3 ARM ARM

Oracle Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "P

简 介 本 白 皮 书 高 度 概 述 了 支 持 移 动 互 联 网 设 备 (Mobile Internet Device) 的 Intel C++ Software Development Tool Suite for Linux* OS, 目 标 读 者 主 要 是 技 术 决 策 制 订

AL-M200 Series

STC-U10

USB解决方案.ppt

目 录

目次 

Microsoft Word _Java_術科 .doc

Microsoft Word - 在VMWare-5.5+RedHat-9下建立本机QTopia-2.1.1虚拟平台a.doc

Cadence SPB 15.2 VOICE Cadence SPB 15.2 PC Cadence 3 (1) CD1 1of 2 (2) CD2 2of 2 (3) CD3 Concept HDL 1of 1

25.( 0 在 進 行 水 溫 與 溶 解 量 的 實 驗 時, 每 一 匙 糖 都 要 刮 平 的 主 要 目 的 為 何? 1 避 免 一 次 溶 解 太 多 糖 2 可 以 增 加 溶 解 糖 的 次 數 3 控 制 加 入 的 每 一 匙 糖 都 一 樣 多 4 可 以 減 少 溶 解 量

WebSphere Studio Application Developer IBM Portal Toolkit... 2/21 1. WebSphere Portal Portal WebSphere Application Server stopserver.bat -configfile..

闖 關 組 4. 任 一 隊 員 曾 獲 得 第 一 屆 第 2 次 全 國 大 專 ITSA 盃 程 式 設 計 桂 冠 挑 戰 大 賽 菁 英 組 前 三 名 或 歷 屆 全 國 大 專 ITSA 盃 程 式 設 計 桂 冠 挑 戰 大 賽 挑 戰 組 前 三 名 應 報 此 組 5. 任 一

Sophos Central 快速安裝手冊

Abstract arm linux tool-chain root NET-Start! 2

2/14 Buffer I12, /* x=2, buffer = I 1 2 */ Buffer I243, /* x=34, buffer = I 2 43 */ x=56, buffer = I243 Buffer I243I265 code_int(int x, char *buffer)

epub83-1

SST SPAC SST SoftICE SST89C5x/SST89x554RC /564RD /SST89x516/5xRD / SoftICE SoftICE MCU SoftICE SS

untitled

言1.PDF

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指

audiogram3 Owners Manual

CL-S10w

PPBSalesDB.doc

陕西职业技术学院(用标志)

1 Project New Project 1 2 Windows 1 3 N C test Windows uv2 KEIL uvision2 1 2 New Project Ateml AT89C AT89C51 3 KEIL Demo C C File

untitled

rz_Newsletter2016_en_ indd

Chapter 2

ebook140-8

Data Management Software CL-S10w

Microsoft Word - AVR32 UC3 isp下载.doc

untitled

设置setting Foobar2000

Microsoft Word - 第1章 Android基本概念.docx

Data Management Software CL-S10w

軟體的安裝


1.ai

移动数字证书Linux版用户手册(版本:F-2.0;适用硬件:F1、F2)

图 片 展 示 : 资 源 简 介 : FPGA Altera CycloneII EP2C5T144C8 (4608 个 LE) 2 路 有 源 晶 振 (50M,25M) AS & JTAG 标 准 接 口 VGA 接 口 UART 接 口 蜂 鸣 器 8bit 并 行 DAC 8 路 按 键

Ioncube Php Encoder 8 3 Crack 4. llamaba octobre traslado General Search colony

ebook140-9

WinMDI 28

嵌入式系统原理及应用教程 ( 第 2 版 )/ 清华大学出版社 EL-ARM-860 V1.2 一 实验目的 实验二 Boot Loader 引导程序 1. 了解 Boot Loader 的作用, 掌握 Boot Loader 的编程思想 二 实验设备 1. Pentium II 以上的 PC 机,

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

Microsoft PowerPoint - XMC4000系列开发环境介绍(DAVE3).pptx

untitled

1 LINUX IDE Emacs gcc gdb Emacs + gcc + gdb IDE Emacs IDE C Emacs Emacs IDE ICE Integrated Computing Environment Emacs Unix Linux Emacs Emacs Emacs Un


untitled

Microsoft Word - QTP测试Flex.doc

麻 省 理 工 學 院 是 在 西 元 2013 年 12 月 3 日 推 出 MIT App Inventor 2 網 站, 提 供 免 費 的 雲 端 服 務, 使 用 者 可 以 透 過 瀏 覽 器 來 開 發 Android 裝 置 應 用 程 式, 該 網 站 的 網 址 為 : http

1-1 SH79F6431 A. 2( ) 9~15V ( 12V) U2 U3 3.3V SH79F B. 1(VCC/GND) SH79F6431 C. VDDIO SH79F6431 P4 P5 P0.6 P0.7 VDDIO VDDIO=5V D. 2 V 1.0

一 登录 crm Mobile 系统 : 输入 ShijiCare 用户名和密码, 登录系统, 如图所示 : 第 2 页共 32 页

0 配置 Host MIB 设备 V ( 简体版 ) 0 Update: 2016/1/30

ALS6

穨IC-1000

目 录 一. 使 用 前 的 软 件 准 备 和 安 装... 3 二. 安 装 USB 驱 动... 3 三. 下 载 LD_DOWN.hex 到 STC 单 片 机... 4 四. 使 用 开 发 板 配 套 软 件 ICR_DT1.exe... 6 五. 串 口 打 印 信 息 的 接 收..

题目

JTAG ICE PC JTAG ICE JTAG ISP... 5 IDE AVR STUDIO JTAGICE JTAGICE... 12

基于UML建模的管理管理信息系统项目案例导航——VB篇

保母人員丙級應檢資料第二部份 doc

4. I/O I/O Copyright 2001, Intellution, Inc. 4-1

RunPC2_.doc

Xeltek USB USB Windows INF USB USB INF , 2.1.2, CD-ROM CD-ROM CD-ROM CD-ROM Setup.exe 2

Microsoft Word - SAM-BA.doc

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha

第 十 一 期 2015 年 2 月 关 于 车 辆 购 置 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳 转 至 全 文 ) 国 家 税 务 总 局 公 告 2015 年 第 4 号 关 于 电 池 涂 料 消 费 税 征 收 管 理 有 关 问 题 的 公 告 ( 点 击 跳

<4D F736F F D D3332B3CCD0F233D6D6CFC2D4D8B7BDCABDCBB5C3F72E646F63>

北 京 工 程 力 学 / 罗 相 杰 吕 荣 生 建 筑 工 程 技 术 专 14/ 北 京 工 程 量 清 单 计 价 / 高 红 孝 边 玉 超 建 筑 工 程 技 术 专 14/ 北 京 工 程 造 价 概 论 / 李 金 云 张 爱 卿


f2.eps

<C8EBC3C5C6AAA3A8B5DA31D5C2A3A92E696E6464>

职 位 类 别 : 测 试 工 程 师 工 作 经 验 或 实 习 经 历 : 不 限 岗 位 要 求 : 1. 本 科 及 其 以 上 学 历, 计 算 机 相 关 专 业 2014 届 毕 业 生 ; 2. 实 习 时 间 要 求, 尽 量 一 周 五 个 工 作 日 ; 3. 熟 悉 Wind

SylixOS GUI(Qt) 性能 修订历史版本 日期 原因 V /09/17 创建文档 V /07/24 使用 OK335xS 重新测试 V /11/29 修改文档模板 i

外围器件-new.cdr

Table of Contents Design Concept 03 Copyrights & TradeMark 04 Special Notice 05 Notice to concerned 05 Installation and Registration Introduction 07 s

電機工程系認可證照清單 /7/1

51 C 51 isp 10 C PCB C C C C KEIL

PROTEUS VSM

網路安全:理論與實務 第二版

TOOLS Software Installation Guide

Microsoft Word - AccessPortal使用手册v3.1.doc

Microsoft Word - InoTouch Editor编程软件手册 doc

Transcription:

英创公司开发的 ETA321 单片机模块, 是基于 STM32F103RC 单片机设计的实时任务处理单元模块 ETA321 模块作为客户端, 使用 USB 与英创公司的 ARM 工控主板进行数据传输 通讯, 根据工控主板应用程序发出来的指令, 执行相应的实时任务处理, 如实现 : 电机控制 数据采集 高速 D/A 输出 状态采集保护等 另外, 用户可以基于英创公司构建好的 USB 通讯结构, 利用 KEIL IAR eclipse 等集成编译环境, 在 ETA321 模块上编写自己特殊的应用程序 英创公司推荐使用 eclipse 编译环境 由于 eclipse 软件编译工具是开源 免费的工具, 在 windows 环境下编译 linux 应用软件的用户也比较多, 因此在 windows 环境中, 搭建 eclipse 的 STM32 编译环境, 就变得非常有意义 : 可以很好地与 linux 编译环境进行整合 ; 不用担心开发软件的版权问题 ;eclipse 编译环境也能支持各种调试工具 因此, 使用 eclipse 编译环境完全替换 KEIL IAR 等需要授权才能使用工具, 是非常好的选择 但是榙建基于 eclipse 的 STM32 的开发环境, 需要好几个软件与插件, 且相应的版本需要能兼容, 才能正确搭建好开发环境 为了协助客户快速搭建 eclipse 编译环境, 英创公司编写了这篇文章, 详细说明了整个 eclipse 环境搭建 工程建立 目标代码烧写 以及使用 JLink 进行软件调试的方法 所需要的软件或插件如下 : JAVA eclipse C/C++ gcc-arm-none-eabi, 交叉编译工具链 CDT, 对 cortex-m 的支持的编译工具以及对 J-Link 调试工具的支持 J-LINK 驱动开发 / 烧写 STM32 所需要的软件 / 工具 : STM32 Flashloader 串口烧写工具为了方便客户更加简单 方便地搭建 ETA321 的开发环境, 英创公司下载了所需的工具软件 :JAVA eclipse C/C++ gcc-arm-none-eabi STM32-Flashloader 等, 可以直接利用 1 / 33

图 1 eclipse 编译环境软件工具包 下面则详细地描述 eclipse 编译环境塔建方法 一 安装 eclipse 编译环境 1 安装 JAVA 打开工具包中的 (JAVA)jdk-8u144-windows-i586.exe 进行默认安装即可 图 2 启动并安装 JAVA 2 / 33

图 3 JAVA 安装中... 图 4 JAVA 安装完成 现阶段, 不建议安装 JAVA 9.0 版本 因为要实现 JAVA 9.0 对 eclipse 的支持, 需要额 外的补丁包, 所以相对麻烦一些 3 / 33

2 安装 eclipse 复制 eclipse 文件夹到开发用的计算机中 ( 任意位置均可 ), 如 :C:\program file(x86) 目录 ( 如果系统是 32 bit, 则 C:\program file ) 图 5 将 eclipse 复制到 Program Files(x86) 目录下 3 设置交叉编译工具链的环境变量 从 eclipse 目录下, 找到交叉编译工具链 gcc-arm-none-eabi 的路径, 并复制下来 图 6 gcc-arm-none-eabi 工具链目录路径 打开 系统属性 -> 高级 配置页面, 再点击 环境变量, 进入环境变量设置页面 4 / 33

图 7 环境变量设置页面 在用户环境变量中找到 PATH 项, 点击编辑, 将工具链的路径添加到 PATH 参数中, 点 击确认退出 5 / 33

图 8 在用户环境变量的 PATH 变量名中, 添加工具链的路径 环境变量添加完成后, 可以从系统的 CMD 命令提示符窗口中, 输入 path 指令, 检查 环境变量是否添加成功 图 9 检查工具连的环境变量 4 安装 CDT(C/C++ Development Tooling) 进入 eclipse 目录, 双击 eclipse.exe 启动 eclipse 软件, 这时设置 eclipse 的工作区路 径, 可以系统中的任意路径均可 设置好以后, 点击 launch 6 / 33

图 10 设置 eclipse 工作区 软件启动完成后, 在 eclipse 的 help 菜单中, 选择 install New software 图 11 选中 help->install New Software 然后在 Work With: 中输入链接 http://gnu-mcu-eclipse.netlify.com/v4-neon-updates 并回车, 将会列出该 CDT 所包含的所有工具列表 在列出来的选项中, 全部选择, 点击 next 7 / 33

图 12 选中所有列表 最后接受协议, 点击 finish 开始安装 CDT 8 / 33

图 13 接受 license 后开始安装 在 eclipse 的右下角可以看到安装进度, 双击小的进度条, 则可以打开安装信息 在安装过 程中, 如果有安全警告, 点击 Install anyway 继续完成安装 图 14 安装过程中的安全警告 9 / 33

当 CDT 安装完后, 会提示软件重启, 这时点击 Restart Now, 重新启动 eclipse 图 15 CDT 安装完成, 需要重新启动软件 到此, 在 Windows7 系统下,STM32 的 eclipse 编译环境已经搭建完成, 接下来就可 以建立第一个应用程序工程了 二 建立 eclipse 应用工程程序 eclipse 编译环境安装完成以后, 就可以开始编写应用程序了, 我们以 ETA321 模块上 的 LED 灯 D1 闪烁为例子, 举例说明建立简单的应用工程 1 启动 eclipse, 从 file->new 中选择 C/C++ Project 图 16 建立工程 2 选择 C++ Managed Build, 点击 next 10 / 33

图 17 新工程类型选择 3 输入工程名, 以及选择 Project type 为 STM32F10x C/C++ project, 右侧 Toolchains 选择为 ARM Cross GCC, 点击 next 11 / 33

图 18 工程编译参数选择 4 设置芯片属性,ETA321 采用的是高密度器件,Flash 大小为 256KB,RAM 大小为 48KB, 根据该参数进行设置, 点击 next 12 / 33

图 20 配置 ETA321 芯片参数 5 设置工程所用的文件夹, 可以默认即可, 点击 next 13 / 33

图 20 配置工程所使用的文件夹 next 6 选择工程中需要编译的项目, 一般情况下, Debug 与 Release 都会默认选择, 点击 14 / 33

图 21 编译结果项目选择 7 设置工具链 如果设置了工具链环境变量且系统重启生效, 则 Toolchain path 会自 动填写完成 如果这里为空, 可以点击 Browse 按钮, 手动选择工具链的目录即可, 即上面 所说的工具链路径, 最后点击 finish 完成工程建立 15 / 33

图 22 配置工具链路径 8 工程建立完成后, 需要进行编译工具的配置 我们提供的 eclipse 工具包, 有两个编译工具可以选择 :CDT Internal Builder 或 Gnu Make Builder, 使用其中一个即可 配置编译工具的方法如下 : 首先, 在 eclipse 环境中, 选中所建立的工程, 点击菜单中的 project -> "Properties", 打开配置页面 16 / 33

图 23 进入工程属性配置 a) 选择 CDT Internal Builder 编译工具在弹出的配置页面中, 展开左侧的 C/C++ Build 选项, 点击 Tool Chain Editor, 在右边的参数 Current Builder 下拉列表中, 选择 CDT Internal Builder, 然后点击 Apply and Close 完成设置 b) 选择 Gnu Make Builder 编译工具 图 24 选择编译工具为 CDT Internal Builder 从上图中可以看出,eclipse 也可以使用 Gnu Make Builder 编译工具 在我们的 eclipse 17 / 33

工具包中, 已经包含了该编译工具, 在 eclipse 文件夹中的 GNU MCU Eclipse 就是该工具 包, 因此可以配置使用该编译工具 使用该工具的配置方法如下 首先确认编译工具的路径并复制下来 图 25 GNU Make Builder 路径确认点击菜单中的 project -> "Properties", 选中左侧的 C/C++ Build 下 Environment, 会在右侧列出相应的环境变量参数 单击选择右侧的 PATH 项, 再点击 Edit 按钮, 进行参数配置 图 26 选择 Environment 配置项 在弹出的 Edit variable 参数修改页面中, 添加 GNU Make Builder 工具的路径到 PATH 18 / 33

环境变量中 图 27 在 PATH 参数中, 添加 GNU Make Builder 工具路径 最后, 在左侧的 C/C++ Build 选项, 点击 Tool Chain Editor, 在右边的参数 Current Builder 下拉列表中, 选择 Gnu Make Builder, 然后点击 Apply and Close 完成设置 图 28 选择编译工具为 Gnu Make Builder 10 由于 ETA321 模块上的 LED 灯使用的是 PB2 引脚, 与建立的工程中默认使用的 GPIO 不同, 所以需要修改代码, 与 ETA321 的 GPIO 对应 需要修改的定义文件为 BlinkLed.h 文件, 其中的 BLINK_JPORT_NUMBER 参数更改为 1,BLINK_PIN_NUMBER 参数更改为 2 19 / 33

图 29 修改代码中的 GPIO 引脚定义为 PB2 11 接下来, 就可以编译工程了 右键单击工程名, 在弹出的选项中, 点击 Build Project, 开始编译工程 编译成功后, 将会生成 hex 文件与 elf 文件 图 30 编译工程 图 31 工程编译成功后的信息 20 / 33

三 使用 flashloader 工具烧写 ETA321 应用程序 如果安装好了 Flashloader 工具, 这时, 可以找到工程目录下编译出来的 HEX 文件, 利用 Flashloader 工具将其烧写到 ETA321 中, 查看程序运行结果 烧写方法如下 : 1 拔动开关到 ETA321 模块上 3.3V 端, 使 ETA321 处于下载状态, 即 :ETA321 模块上的红色 LED 灯点亮 用 USB 线连接 ETA321 到 PC 机的 USB 端口 如果是首次进行连接, 需要安装 USB 驱动, 等一点时间, 直到驱动自动安装完成 图 32 首次安装 USB 驱动 2 从 设备管理器 中, 查看 ETA321 模块虚拟的串口编号, 即 USB-SERIAL CH340 虚拟串口编号 图 33 检查 确认 ETA321 串口驱动及串口编号 21 / 33

3 启动 Flashloader, Port Name 端口选择 CH340 对应的串口编号, 校验选择 none 图 34 Flashloader 通讯参数 如果确认这里的参数都正确, 但是又不能连接到芯片, 则需要重新检查一下 CH340 虚 拟串口的 端口设置 属性, 并将波特率 ( 位 / 秒 ) 更改到 115200 即可 22 / 33

图 35 ETA321 虚拟串口参数属性 4 点击下一步,Flashloader 会读取到芯片相关的存贮器信息, 再下一步, 就可以到烧 写界面 23 / 33

图 36 Flashloader 工具读取到的芯片参数 5 选中 Download to device 单选按钮, 并将 Verify after download 选择上, 即下载完 以后进行校验 24 / 33

图 37 烧写界面点击 Download from file 右侧的按钮, 在弹出的页面中, 选择需要烧写的 hex 文件 需要注意, 这里要指定文件类型,Flashloader 软件默认是 *.s19, 要改为 *.hex, 否则在文件夹中看不到相应的 hex 文件 25 / 33

图 38 选择烧写文件 选择好文件后, 点击 打开 按钮, 返回烧写页面, 再点击 NEXT 便开始烧写 进度条显 示绿色, 即烧写成功 26 / 33

图 39 文件烧写成功 四 利用 J-Link 调试程序代码 首先安装 J-Link 的驱动, 在我们提供的软件工具包中也有 :JLink_Windows_V620c.exe 安装完成后, 就可以使用 Jlink 进行软件调试了 在调试的时候,ETA321 要处于运行状态, 即 : 拔动 ETA321 模块上的开关到 S2 端, 红色 LED 不亮 使用 JLink 进行调试之前, 先用 JLink GDB Server 工具进行芯片连测试, 以确认 Jlink 在正常工作 连接测试流程如下 : 1 使用 JLink 的 SWD 信号接口, 连接到 ETA321 的 CN3 插针上, 并给 ETA321 上电, 且 ETA321 处于运行状态 2 启动 GDB Server 工具 27 / 33

图 40 启动 J-Link GDB Server 3 首先选择器件,GDB 启动起来后, 点击 Target Device 右侧的按钮, 弹出 Target device settings 页面 在 Manufacturer 中选择 ST, 在 Core 中选择 Cortex-M3, 然后 在下面的列表中, 选中 STM32F103RC, 最后点击 OK 图 41 选择目标器件 28 / 33

4 器件选择完以后, 还需要配置 GDB Server 连接参数 : 使用 USB 连接 J-Link,SWD 接口连接目标芯片,1000Khz 速率, 最后点击 OK 进行芯片连接 图 42 配置 GDB 参数 5 连接成功以后,J-Link 项与 CPU 项显示绿色状态, 并能读出 CPU 的工作电压 29 / 33

图 43 连接成功 到这时, 说明 JLINK 的驱动以及硬件连接环境均正是正常, 就可以在 eclipse 环境中, 利用 Jlink 进行程序调试了 调试方法如下 : 1 启动 eclipse, 打开之前已经编译通过的工程文件 ETA321_LED 2 从菜单栏上选择 RUN 下面的 Debug Configurations 30 / 33

图 44 选择 Debug Configurations 3 在左边列表中, 选中 GDB SEGGER J-Link Debugging, 再点鼠标右键, 在弹出的 菜单上, 点击 New, 在该项目下建立一个新的调试项目 图 45 新建调试项目 31 / 33

4 点击新建立的调试项目, 展示出右侧的配置页面, 这里主要需要配置 / 检查 Debugger 与 Startup 这两个配置页面 在 Startup 配置页面中, 去掉如下图中红圈中的两项, 并点击 Apply, 以确认应用 图 46 配置 Startup 在 Debugger 配置页面中, 需要检查多项参数 : 1 检查 Actual executable 参数指向 JLinkGDBServerCL.exe; 2 并输入 Device name 为 STM32F103RC ; 3 Endianness 选择为 Little ; 4 Connection 选择为 USB ; 5 Interface 选择为 SWD ; 6 Initial speed 配置为 1000KHz 确认参数正确以后, 点击 Apply 应用配置参数 最后点击 Debug 进入调试 32 / 33

图 47 配置 Debugger 7 启动调试以后, 程序入口停止在 main() 函数, 这时可以按 F6 进行单步运行 F5 可 以进入函数内部跟踪运行 33 / 33