SlideShare a Scribd company logo
嵌入式接口技术
项目三 工程创建与调试
Education
Solutions
目录 Contents
Internet+
 项目场景
 IAR for ARM集成开发环境
 STM32的工程创建
 STM32工程的在线调试
 项目实践
10:46 / 3
项目场景
 STM32F407VET6微处理器使用的开发环境是IAR for ARM开发环境,在这个开
发环境下创建STM32F407VET6微处理器工程,通过使用下载器将程序下载到单
片机中,使用IAR for ARM开发环境的程序调试工具实现STM32F407VET6微处
理器程序的在线调试。
10:46 / 4
任务目标
 通过使用IAR for ARM开发环境创建STM32F407芯片工程。
 通过使用IAR for ARM开发环境在线调试并查看STM32F407芯片寄
存器参数。
10:46 / 5
IAR for ARM
 IAR是一家公司的名称,也是一
种集成开发环境的名称,我们
平时所说的IAR主要是指集成开
发环境。
 IAR for ARM这一款开发工具,
而IAR拥有多个版本,支持的芯
片有上万种,IAR针对不同内核
处理器,是有不同的集成开发
环境。
10:46 / 6
IAR for ARM的安装
步骤一
步骤二
步骤三
步骤四
步骤五
步骤六
下载软件,双击安装包,进入准备
安装(解压)。
进入安装就绪界面,点击“安装
IAR”。
进入安装向导界面,按照提示点击
“Next”,进行后续安装。
软件界面启动尝试打开IAR for
ARM。
按照官方指导注册软件。
软件打开成功,开发环境安装完成。
10:46 / 7
CMSIS库
 ARM 公司为了能让不同的芯片公司生产的Cortex芯片能在软件上基本
兼容,和芯片生产商共同提出了一套标准CMSIS标准(Cortex
Microcontroller Soft-ware Interface Standard) ,翻译过来是ARM
Cortex™ 微控制器软件接口标准”。
10:46 / 8
STM32官方库结构
 stm32f407的寄存器众多,对此ST公司提供了对stm32处理器的寄存器
进行操作的库函数。只需要调用这些库函数,即可实现程序的快速开发。
10:46 / 9
IAR for ARM工程创建
步骤一
• 创建空工程
• 创建一个空的项目工程模版以备向其中添加信息。
步骤二
• 文件结构
• 按照STM32工程文件系统创建工程目录,以便工程文件的查找。
步骤三
• 添加DSP库
• 添加ST公司为STM32处理器支持的库函数文件,方便程序的快速开发。
步骤四
• 添加程序入口
• 在用户文件加下添加主函数文件并添加main函数程序,为用户程序提供程序执行入口。
步骤五
• 工程配置
• 在option中对STM32F407芯片的相关参数、调试工具、生成文件、宏定义进行配置。
10:46 / 10
认识IAR for ARM工具
 IAR for ARM集成开发环境提供了较多的调试功能,从文件的创建到代
码的下载调试都有,且集成在了一个工具框中方便使用。
10:46 / 11
IAR for ARM的在线调试
•点击Project→Rebuild All或者直接点击工具栏中的 make 按钮,编译程序 。
1. 工程编译
•将 Jlink 仿真器正确连接到实验设备上,点击 Project→Download and Debug 或者点击工具栏的下载按钮将程序下
载到实验设备上。
2. 程序下载
•IAR 的调试按钮包括如下几个选项:重置按钮“Reset”、终止按钮“Break”、跳过“Step Over”、跳入函数按钮
“Step Into”、跳出函数按钮“Step Out”、下一条语句“Next Statement”、运行到光标的位置“Run to
Cursor”、全速运行“Go”和停止调试按钮“Stop Debugging” 。
3. 执行程序
•可以通过打开 Watch 窗口来观察程序中变量值的变化。在菜单栏中点击“View->Watch”即可打开该窗口。
4. Watch窗口
•点击“View->Register”即可打开。默认情况下寄存器窗口显示基础寄存器的值,点击寄存器下拉框选项可以看到
不同设备的寄存器。
5. Register窗口
10:46 / 12
J-Link程序固化
步骤一
•正确连接Jlink
仿真器到PC机
和实验设备,
打开实验设备
电源。
步骤二
•运行J-Flash
ARM仿真软件。
步骤三
•点击Options-
>Project
settings进入
工程设置界面。
•点击CPU选项,
选择正确的
CPU型号。
步骤四
•点击File-
>Open data
file…,选择上
节编译生成的
hex文件。
步骤五
•选择hex文件
之后,点击
Target-
>Program,
即可固化程序
到芯片中。
 程序的固化是产品批量生产的一种重要形式,通过将工程源码编辑成二
进制文件,并将二进制文件固化到产品中,可实现产品的快速生产。
10:46 / 13
项目思考
 IAR for ARM开发环境在建立STM32F407工程时需要配置哪些参数?
 IAR for ARM开发环境工具栏各个按键都时什么功能?
 如何将STM32F407芯片代码中的参数加载到Watch窗口中?
 IAR for ARM开发环境的寄存器查看窗口如何打开?

More Related Content

Similar to 项目3-工程创建与调试.pdf

Windows Mobile 多媒體應用程式開發
Windows Mobile 多媒體應用程式開發Windows Mobile 多媒體應用程式開發
Windows Mobile 多媒體應用程式開發
建興 王
 
White paper apc4.0
White paper apc4.0White paper apc4.0
White paper apc4.0ahnlabchina
 
CDP方案介绍
CDP方案介绍CDP方案介绍
CDP方案介绍
acqua young
 
LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發
Wei-Tsung Su
 
网络收音机-毕业论文
网络收音机-毕业论文网络收音机-毕业论文
网络收音机-毕业论文rgw5267
 
项目1-认识嵌入式系统.pdf
项目1-认识嵌入式系统.pdf项目1-认识嵌入式系统.pdf
项目1-认识嵌入式系统.pdf
yangmeng22
 
防火墙产品原理介绍20080407
防火墙产品原理介绍20080407防火墙产品原理介绍20080407
防火墙产品原理介绍20080407paulqi
 
Sales q&a apc4.0
Sales q&a apc4.0Sales q&a apc4.0
Sales q&a apc4.0ahnlabchina
 
Apc4.0销售常见问答
Apc4.0销售常见问答Apc4.0销售常见问答
Apc4.0销售常见问答ahnlabchina
 
Vcon90 Final
Vcon90 FinalVcon90 Final
Vcon90 Finalxobo
 
computer organization
computer organization computer organization
computer organization zwjreg
 
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
National Cheng Kung University
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnahnlabchina
 
分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版
分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版
分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版
ITband
 
突破 計算機概論複習講義-電子試閱本
突破 計算機概論複習講義-電子試閱本突破 計算機概論複習講義-電子試閱本
突破 計算機概論複習講義-電子試閱本lungtengtech
 
Zhanbos Drm Win383
Zhanbos Drm Win383Zhanbos Drm Win383
Zhanbos Drm Win383
sumnny
 
Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化
Harvey Zhang
 
LinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorialLinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorial
CAVEDU Education
 
ASP.NET Core 3.0 新功能
ASP.NET Core 3.0 新功能ASP.NET Core 3.0 新功能
ASP.NET Core 3.0 新功能
Edward Kuo
 
构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接
Renaun Erickson
 

Similar to 项目3-工程创建与调试.pdf (20)

Windows Mobile 多媒體應用程式開發
Windows Mobile 多媒體應用程式開發Windows Mobile 多媒體應用程式開發
Windows Mobile 多媒體應用程式開發
 
White paper apc4.0
White paper apc4.0White paper apc4.0
White paper apc4.0
 
CDP方案介绍
CDP方案介绍CDP方案介绍
CDP方案介绍
 
LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發LinkIt Smart 7688程式開發
LinkIt Smart 7688程式開發
 
网络收音机-毕业论文
网络收音机-毕业论文网络收音机-毕业论文
网络收音机-毕业论文
 
项目1-认识嵌入式系统.pdf
项目1-认识嵌入式系统.pdf项目1-认识嵌入式系统.pdf
项目1-认识嵌入式系统.pdf
 
防火墙产品原理介绍20080407
防火墙产品原理介绍20080407防火墙产品原理介绍20080407
防火墙产品原理介绍20080407
 
Sales q&a apc4.0
Sales q&a apc4.0Sales q&a apc4.0
Sales q&a apc4.0
 
Apc4.0销售常见问答
Apc4.0销售常见问答Apc4.0销售常见问答
Apc4.0销售常见问答
 
Vcon90 Final
Vcon90 FinalVcon90 Final
Vcon90 Final
 
computer organization
computer organization computer organization
computer organization
 
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
Accelerating or Complicating PHP execution by LLVM Compiler Infrastructure
 
Deployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cnDeployment instruction tg3100 ig-cn
Deployment instruction tg3100 ig-cn
 
分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版
分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版
分会场六利用赛门铁克的Sort工具降低风险,提高应用的持续运行时间 中文版
 
突破 計算機概論複習講義-電子試閱本
突破 計算機概論複習講義-電子試閱本突破 計算機概論複習講義-電子試閱本
突破 計算機概論複習講義-電子試閱本
 
Zhanbos Drm Win383
Zhanbos Drm Win383Zhanbos Drm Win383
Zhanbos Drm Win383
 
Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化Avm2虚拟机浅析与as3性能优化
Avm2虚拟机浅析与as3性能优化
 
LinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorialLinkIt 7697 IoT tutorial
LinkIt 7697 IoT tutorial
 
ASP.NET Core 3.0 新功能
ASP.NET Core 3.0 新功能ASP.NET Core 3.0 新功能
ASP.NET Core 3.0 新功能
 
构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接
 

项目3-工程创建与调试.pdf

  • 2. Education Solutions 目录 Contents Internet+  项目场景  IAR for ARM集成开发环境  STM32的工程创建  STM32工程的在线调试  项目实践
  • 3. 10:46 / 3 项目场景  STM32F407VET6微处理器使用的开发环境是IAR for ARM开发环境,在这个开 发环境下创建STM32F407VET6微处理器工程,通过使用下载器将程序下载到单 片机中,使用IAR for ARM开发环境的程序调试工具实现STM32F407VET6微处 理器程序的在线调试。
  • 4. 10:46 / 4 任务目标  通过使用IAR for ARM开发环境创建STM32F407芯片工程。  通过使用IAR for ARM开发环境在线调试并查看STM32F407芯片寄 存器参数。
  • 5. 10:46 / 5 IAR for ARM  IAR是一家公司的名称,也是一 种集成开发环境的名称,我们 平时所说的IAR主要是指集成开 发环境。  IAR for ARM这一款开发工具, 而IAR拥有多个版本,支持的芯 片有上万种,IAR针对不同内核 处理器,是有不同的集成开发 环境。
  • 6. 10:46 / 6 IAR for ARM的安装 步骤一 步骤二 步骤三 步骤四 步骤五 步骤六 下载软件,双击安装包,进入准备 安装(解压)。 进入安装就绪界面,点击“安装 IAR”。 进入安装向导界面,按照提示点击 “Next”,进行后续安装。 软件界面启动尝试打开IAR for ARM。 按照官方指导注册软件。 软件打开成功,开发环境安装完成。
  • 7. 10:46 / 7 CMSIS库  ARM 公司为了能让不同的芯片公司生产的Cortex芯片能在软件上基本 兼容,和芯片生产商共同提出了一套标准CMSIS标准(Cortex Microcontroller Soft-ware Interface Standard) ,翻译过来是ARM Cortex™ 微控制器软件接口标准”。
  • 8. 10:46 / 8 STM32官方库结构  stm32f407的寄存器众多,对此ST公司提供了对stm32处理器的寄存器 进行操作的库函数。只需要调用这些库函数,即可实现程序的快速开发。
  • 9. 10:46 / 9 IAR for ARM工程创建 步骤一 • 创建空工程 • 创建一个空的项目工程模版以备向其中添加信息。 步骤二 • 文件结构 • 按照STM32工程文件系统创建工程目录,以便工程文件的查找。 步骤三 • 添加DSP库 • 添加ST公司为STM32处理器支持的库函数文件,方便程序的快速开发。 步骤四 • 添加程序入口 • 在用户文件加下添加主函数文件并添加main函数程序,为用户程序提供程序执行入口。 步骤五 • 工程配置 • 在option中对STM32F407芯片的相关参数、调试工具、生成文件、宏定义进行配置。
  • 10. 10:46 / 10 认识IAR for ARM工具  IAR for ARM集成开发环境提供了较多的调试功能,从文件的创建到代 码的下载调试都有,且集成在了一个工具框中方便使用。
  • 11. 10:46 / 11 IAR for ARM的在线调试 •点击Project→Rebuild All或者直接点击工具栏中的 make 按钮,编译程序 。 1. 工程编译 •将 Jlink 仿真器正确连接到实验设备上,点击 Project→Download and Debug 或者点击工具栏的下载按钮将程序下 载到实验设备上。 2. 程序下载 •IAR 的调试按钮包括如下几个选项:重置按钮“Reset”、终止按钮“Break”、跳过“Step Over”、跳入函数按钮 “Step Into”、跳出函数按钮“Step Out”、下一条语句“Next Statement”、运行到光标的位置“Run to Cursor”、全速运行“Go”和停止调试按钮“Stop Debugging” 。 3. 执行程序 •可以通过打开 Watch 窗口来观察程序中变量值的变化。在菜单栏中点击“View->Watch”即可打开该窗口。 4. Watch窗口 •点击“View->Register”即可打开。默认情况下寄存器窗口显示基础寄存器的值,点击寄存器下拉框选项可以看到 不同设备的寄存器。 5. Register窗口
  • 12. 10:46 / 12 J-Link程序固化 步骤一 •正确连接Jlink 仿真器到PC机 和实验设备, 打开实验设备 电源。 步骤二 •运行J-Flash ARM仿真软件。 步骤三 •点击Options- >Project settings进入 工程设置界面。 •点击CPU选项, 选择正确的 CPU型号。 步骤四 •点击File- >Open data file…,选择上 节编译生成的 hex文件。 步骤五 •选择hex文件 之后,点击 Target- >Program, 即可固化程序 到芯片中。  程序的固化是产品批量生产的一种重要形式,通过将工程源码编辑成二 进制文件,并将二进制文件固化到产品中,可实现产品的快速生产。
  • 13. 10:46 / 13 项目思考  IAR for ARM开发环境在建立STM32F407工程时需要配置哪些参数?  IAR for ARM开发环境工具栏各个按键都时什么功能?  如何将STM32F407芯片代码中的参数加载到Watch窗口中?  IAR for ARM开发环境的寄存器查看窗口如何打开?