ARM嵌入式开发实例.ppt

上传人:小飞机 文档编号:4849617 上传时间:2023-05-19 格式:PPT 页数:28 大小:1.08MB
返回 下载 相关 举报
ARM嵌入式开发实例.ppt_第1页
第1页 / 共28页
ARM嵌入式开发实例.ppt_第2页
第2页 / 共28页
ARM嵌入式开发实例.ppt_第3页
第3页 / 共28页
ARM嵌入式开发实例.ppt_第4页
第4页 / 共28页
ARM嵌入式开发实例.ppt_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《ARM嵌入式开发实例.ppt》由会员分享,可在线阅读,更多相关《ARM嵌入式开发实例.ppt(28页珍藏版)》请在三一办公上搜索。

1、1,第1章 初识ARM嵌入式系统,1.2 ARM嵌入式系统的开发要点与开发环境,ARM嵌入式系统的开发,ARM芯片的设计,ARM芯片的开发应用,1.2.1 ARM嵌入式系统的开发要点,嵌入式系统的设计要求嵌入式系统设计开发不同于桌面系统,它非常受制于功能和具体的应用环境,所以嵌入式系统的设计具有一些特殊的要求:接口方便、操作容易稳定可靠、维护简便功耗管理、降低成本功能实用、便于升级并发处理、及时响应,嵌入式系统开发特点需要软硬件综合开发,二者密切相关。原因:任何一个嵌入式产品都是软件和硬件的结合体一旦嵌入式产品研发完成,软件就固化在硬件环境中,嵌入式软件是针对相应的嵌入式硬件开发的,是专用的。

2、嵌入式系统的这一特点,决定了嵌入式应用开发方法不同于传统的软件工程方法。,预备知识ARM嵌入式系统的概念和基本结构印刷电路板设计知识模拟电子技术、数字电子技术等集成开发环境编程语言汇编语言:ARM嵌入式指令集(初始化的启动程序)C语言C语言汇编语言,1、明确ARM嵌入式系统开发的过程 嵌入式软件的开发流程与通用软件的开发流程大同小异,但开发所使用的设计方法具有嵌入式开发的特点。整个开发流程可分为:需求分析阶段设计阶段生成代码阶段固化阶段,5,需求和规格说明,嵌入式系统应用需求中最为突出的是注重应用的时效性,需求分析阶段的主要任务是:(1)对问题的识别和分析 对用户提出的问题进行抽象识别用以产生

3、以下的需求:功能需求、性能需求、环境需求、可靠性需求、安全需求、用户界面需求、资源使用需求、软件成本与开发进度需求。(2)制订规格说明文档 经过对问题的识别,产生了系统各方面的需求。通过对规格的说明,文档得以清晰、准确地描述。这些说明文档包括需求规格说明书和初级的用户手册等。(3)需求评审 需求评审作为系统进入下一阶段前最后的需求分析复查手段,在需求分析的最后阶段对各项需求进行评估,以保证软件需求的质量。需求评审的内容包括正确性、无歧义性、安全性、可验证性、一致性、可理解性、可修改性、可追踪性等多个方面。,嵌入式系统开发要点交叉编译器(Cross-compiler):是一种运行在通用计算机上的

4、、但是能够生成在另一种处理器上运行的目标代码的编译器。交叉开发:在一台通用计算机上进行软件的编辑、编译,然后下载到嵌入式系统中运行调试。,嵌入式系统开发要点 它分散在有通信连接的宿主机与目标机环境之中:宿主机(Host)是一台通用计算机,一般是PC机。它通过串口或网络连接与目标机通信。目标机(Target)可以是嵌入式应用软件的实际运行环境(可以是能替代实际环境的仿真系统),10,1.1 ARM嵌入式系统简介,典型的开发环境,源程序,目标文件,可执行文件,2、熟悉开发工具环境里的库函数(了解三个方面)(1)考虑硬件对库函数的支持;注意:库函数的使用并不是必须的。(2)符合目标系统上的存储器资源

5、分布;(3)应用程序运行环境的初始化;,11,1.1 ARM嵌入式系统简介,3、熟悉ARM嵌入式系统的调试操作调试有三种基本方法模拟调试(Simulator)软件调试(Debugger)仿真器调试(Emulator),12,1.1 ARM嵌入式系统简介,模拟调试(Simulator)调试工具和待调试的嵌入式软件都在主机上运行,由主机提供一个模拟的目标运行环境,可以进行语法和逻辑上的调试。优点:简单方便,不需要目标板,成本低缺点:功能非常有限,无法实时调试大多数调试工具都提供Simulator功能,软件调试(Debugger)(监控器方式)主机和目标板通过某种接口(通常是串口)连接,主机上提供调

6、试界面,待调试软件下载到目标板上运行。这种方式的先决条件是要在Host和Target之间建立起通信联系(目标板上称为监控程序Monitor)优点:纯软件,价格较低,简单,软件调试能力较强缺点:需要事先烧制Monitor(往往需多次试验才能成功)且目标板工作正常,功能有限,特别是硬件调试能力较差。,PC,Target,Monitor,串口,仿真器方式(Emulator)这种方式用仿真器完全取代目标板上的MCU,因而目标系统对开发者来说完全是透明的、可控的。仿真器与目标板通过仿真头连接,与主机有串口、并口、网口或USB口等连接方式。由于仿真器自成体系,调试时既可以连接目标板,也可以不连接目标板(S

7、tand alone)。优点:功能非常强大,软硬件均可做到完全实时在线调试缺点:价格昂贵。一般高档的微处理器都带JTAG(Joint Test Action Group,联合测试行动组)接口,它是一种边界扫描标准,只需5根引脚就可以实现在线仿真的功能。,JTAG调试 有一个硬件调试体。该硬件调试体与目标板通过JTAG调试接口相连,与主机通过串口、并口、网口或USB口相连。待调试软件通过JTAG调试器下载到目标板上运行。,Target,PC,接口,JTAG,17,第1章 初识ARM嵌入式系统,1.2.2 ARM嵌入式系统的开发环境,编译器/汇编器,指令系统模拟器,在线仿真器或调试探测器,目标开发

8、板,跟踪捕捉仪,嵌入式操作系统,常见的开发环境,18,常见ARM嵌入式系统C编译器,最流行、最通用,1.2.1 Keil MDK简介,Keil开发环境是德国知名公司Keil(现已并入ARM公司)开发的嵌入式微控制器软件开发平台,也是目前ARM嵌入式单片机开发的主流工具。在该软件平台中,uVision的界面与微软VC+的界面类似,具有友好的人机交互环境,启动界面如右图所示。,19,在uVision开发工具链中包含了指令模拟器,用户可以通过使用该功能来模拟“纯粹”的ARM嵌入式代码,即用户不需要外部硬件平台的支持也可以在软件平台中模拟代码的运行,基本的界面框架如右图所示。,20,RealView

9、MDK用户操作界面,Keil平台开发周期,Keil平台开发ARM嵌入式软件,开发周期与其他的平台环境的开发周期是类似的,大致有以下几个步骤:创建新的项目工程,选择正确的目标芯片,对工程项目参数进行配置;编写C语言代码或汇编程序代码,并添加到项目工程文件中;对项目工程进行编译、连接和调试;修改源代码中的语法错误和逻辑错误,重新编译至正确与硬件联机调试至无误;,21,1.2 ARM嵌入式系统的开发要点与开发环境,22,1.2.3 Keil MDK开发步骤,1.2 ARM嵌入式系统的开发要点与开发环境,23,1、创建/打开工程文件 在Keil MDK开发环境中,用户可以通过选择“New Projec

10、t”下拉菜单来创建一个新的工程,如右图所示。此时,系统会弹出一个对话框,要求为新建的项目工程起一个名字。,在菜单中创建新的工程,将新创建的工程命名为“test”,1.2 ARM嵌入式系统的开发环境,24,2、选择ARM嵌入式芯片,在创建完存放工程代码的文件夹后,用户就可以根据实际的工程需要,选择需要的ARM嵌入式芯片。,在建立工程项目文件后,用户需要在该工程项目内添加源程序代码。选择菜单“File”|“New”或者点击工具栏上的新建文件按钮,就可以在项目工程窗口的右侧打开一个新的文本编辑窗口,用户可以在该窗口中输入程序代码。在编辑完代码之后,用户需要将其保存为源文件,选择菜单“File”|“S

11、ave”或者点击工具栏的保存文件按钮,可以实现对源文件的保存操作。在源文件编辑完成之后,用户还需要将编写好的源文件添加到新建的项目工程中去。,3、添加源代码文件,25,添加源文件到项目工程中,26,添加源代码对话框,选择其中的“Add File To Group Source Group1”,系统弹出一个文件对话框,用户可以在对话框中输入源文件的路径,点击“确定”后就完成了对源文件的添加操作,具体如右图所示。,特别需要提醒读者注意的是,在添加文件的时候,由于对话框不会自动关闭,经常会被误认为添加文件操作没有成功而在此双击添加同一个文件,引起不必须要的错误,系统也会弹出相应的错误提示对话框,如右

12、图所示。,重复添加源代码后的错误提示,4、编译程序 在程序代码编辑完之后就可以进入编译阶段,用户可以通过菜单、工具栏和浮动菜单等多种方式对源代码进行编译操作。同时,在Keil MDK平台中,用户还可以通过批处理文件进行相应的编译操作。一般实际的项目工程需要进行批处理的操作不是很多,有兴趣的读者可以通过Keil MDK的技术支持文档查看具体的操作步骤,在这里就不再赘述了。,27,28,一般而言,项目工程文件通过编译器的编译后,只 能说明当前的代码没有语法错误。但在实际的调试过程中,除了编译器能识别的语法错误,还可能存在其他的错误,如逻辑功能错误等。用户必须通过调试才能发现问题并解决。,5、程序的调试,MDK调试窗口界面,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号