第4章 Keil MDK-ARM集成开发环境4H.ppt_第1页
第4章 Keil MDK-ARM集成开发环境4H.ppt_第2页
第4章 Keil MDK-ARM集成开发环境4H.ppt_第3页
第4章 Keil MDK-ARM集成开发环境4H.ppt_第4页
第4章 Keil MDK-ARM集成开发环境4H.ppt_第5页
已阅读5页,还剩116页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

EmbeddedSystemDevelopment,聊城大学理工学院曹银杰caoyinjie,嵌入式系统与应用,第四章KeilMDK-ARM集成开发环境,4.1KeilMDK-ARM简介4.2KeilMDK-ARM安装4.3KeilMDK-ARM集成开发环境,4.1KeilMDK-ARM简介,KeilMDK-ARM(MicrocontrollerDevelopmentKit)开发工具源自德国Keil(),被全球超过10万的嵌入式开发工程师使用。支持1200多种基于ARMCortex-M系列、ARM7、ARM9和Cortex-R4处理器的设备。它包含众多示例、项目模板和中间件库,具有广泛的TCP/IP软件堆栈、Flash文件系统、USB主机和设备堆栈、CAN访问以及舒适的图形用户界面解决方案。易于使用的IDE和带有高级分析功能的全功能调试器可帮助开发人员快速启动项目,并集中精力实现其应用程序的差异功能。MDK-ARM四种版本:MDK-Lite、基础版、标准版和专业版。都提供C/C+开发环境,专业版包括丰富的中间件库。,KeilMDK-ARM简介,PC、IDE开发环境、仿真器、评估板,宿主机,仿真器,评估板,IDE开发环境,逻辑分析仪,示波器,KeilMDK-ARM,KeilMDK-ARM简介,完全支持Cortex-M、Cortex-R4、ARM7和ARM9设备行业领先的ARMC/C+编译工具链Vision4IDE、调试器和模拟环境KeilRTX确定性、占用空间小的实时操作系统(具有源代码)TCP/IP网络套件提供多个协议和各种应用程序USB设备和USB主机堆栈配备标准驱动程序类ULINKpro支持对正在运行的应用程序进行即时分析并记录执行的每条Cortex-M指令有关程序执行的完整代码覆盖率信息执行性能分析器和性能分析器支持程序优化大量示例项目可帮您快速熟悉MDK-ARM强大的内置功能符合CMSISCortex微控制器软件接口标准,KeilMDK-ARM简介,在ARM公司的网站()注册、下载最新的KeilMDK-ARM开发工具软件,MDK-Lite版:受限制的32K编译、链接、部分模块功能。,KeilMDK-ARM简介,MDK-Lite版:mdk_510.exe,约280M,直接安装即可。,4.2KeilMDK-ARM安装,KeilMDK-ARM安装,软件安装后需要安装所选用芯片的驱动包安装,里面包含了开发模板、接口驱动等。,KeilMDK-ARM安装,选中要安装的公司的芯片型号即可到对应页面下载安装包DFP文件。,KeilMDK-ARM安装,下载后的DFP文件,可直接安装到开发环境内。,4.3KeilMDK-ARM集成开发环境,安装后在桌面快捷图标,或开始菜单启动即可。,Toolbars,WatchWindow,MemoryWindow,LogicAnalyzer,EditorWorkspace,MenuBar,ProjectWorkspace,OutputWindow,Toolbox,PageTabs,PeripheralDialog,第一个按钮:Translate就是翻译当下修改过的文件,说明白点就是检查下有没有语法错误,并不会去链接库文件,也不会生成可执行文件。第二个按钮:Build就是编译当下修改过的文件,它包含了语法检查,链接动态库文件,生成可执行文件。第三个按钮:Rebuild重新编译整个工程,跟Build这个按钮实现的功能是一样的,但有所不同的是它编译的是整个工程的所有文件,耗时巨大。,“File”菜单,芯片数据库,Licenses注册管理,新建、保存源程序文件,“Edit”菜单,设置书签,分组隐藏源文件,“Edit”菜单,编辑配置菜单:,代码编辑器设置,颜色与字体设置,用户关键字,快捷键,代码模板,“View”菜单,显示或隐藏状态栏,显示或隐藏文件工具条,显示或隐藏编译工具条,显示或隐藏调试工具条,显示或隐藏工程空间,显示或隐藏输出窗口,显示或隐藏浏览窗口,显示或隐藏反汇编窗口,显示或隐藏Watch添加启动代码。,新建工程,添加管理源文件,组织源码结构;添加源文件:从C:KeilARMExamplesMeasure拷贝源文件。建立软仿真工程:Simulator为设备仿真工程。,添加管理源文件,点击工具栏“”管理工程,添加源码。,注:为了说明操作,直接拷贝附带例程源码。,配置工程,点击工具栏“”打开工程配置窗口。,配置启动代码,图形化配置,图形化对话框,直观方便免除手写几百行汇编代码快速生成启动代码,编译链接工程,点击工具栏“”编译链接工程,BuildtargetSimulatorassemblingSpilingMpilingMpilingGpilingRpilingSerial.c.linking.ProgramSize:Code=9402RO-data=958RW-data=48ZI-data=1272First.axf-0Error(s),0Warning(s).,Debug调试,点击工具栏“”下载程序到目标板进入调试状态,单步、查看各个窗口,单步、断点、全速运行:查看Debug状态下各个窗口:,Flash下载,Flash-ConfigureFlashTools:,设备仿真实例,内容五,MDK的设备仿真,目标设备的所有组件都可仿真.代码可在整个设备上运行,完全的目标硬件仿真完整的目标高效指令集仿真中断仿真片内外围设备ADC,DAC,EBI,TimersUART,CAN,I2C.包含外部信号和I/O包含外部信号和I/O充足的仿真信息包含在设备数据库里Supports250ARMbasedMCUsIncludedinRealViewMDK,Measure程序介绍,默认路径:C:KeilARMExamplesMeasure;uVisionSimulatorforLPC2129;该例程描述了如何使用uVision的信号函数功能来仿真LPC21XX一个模拟量的输入。,编译、链接、调试,打开Measure工程,编译、链接程序,点击Debug进入调试状态。,编译、链接,Debug,虚拟串口,打开虚拟串口2,全速运行程序查看结果;,Retarget库文件,/Serial.cintsendchar(intch)if(ch=n)while(!(U1LSR,/Retarget.cintfputc(intch,FILE*f)return(sendchar(ch);,RealView微控制器开发工具集带有一个预定义的retarget库文件,它是许多例程的一部分。retarget文件修改了底层的I/O程序,并禁止了semi-hostingSWI中断的使用。,查看程序代码,代码块彩色显示显示混合的源代码与反汇编代码改变显示模式并且使用contextmenu中的其他命令(在Disassembly窗口中点击右键),调用栈,View-Watchprintf(Analog-Input-0:%fn,ain0);printf(Analog-Input-1:%fn,ain1);printf(Analog-Input-2:%fn,ain2);printf(Analog-Input-3:%fn,ain3);printf(Port0:%08Xn,port0);printf(=n);,/*MEASURE.INI:MeasureDebugInitFile*/Signalvoidanalog0(floatlimit)floatvolts;printf(Analog0(%f)entered.n,limit);while(1)/*forever*/volts=0;while(volts=0.0)ain0=volts;swatch(0.01);/*wait0.01seconds*/volts-=0.1;/*decreasevoltage*/,初始化文件,信号函数,Toolbox,View-Toolbox;,DEFINEBUTTONMyStatusInfo,MyStatus()DEFINEBUTTONAnalog00.3V,analog0(3)DEFINEBUTTONStopAnalog0,signalkillanalog0,Toolbox中包含用户可配置的按钮。点击工具箱上的按钮可以执行相关的调试命令或调试函数。工具箱按钮可以在任何时间执行,甚至是运行测试程序时。,添加按钮语法:,删除按钮语法:,DEFINEBUTTONbutton_label,command“,KillButtonnum,逻辑分析仪,Debug-LogicAnalyzerWindow,可以是变量或VTREGs值,综合,全速运行程序,串口输入“d”,在终端显示ADC采样值;点击Toolbox的“Analog00.3”按钮,输出外部信号;查看各个调试窗口状态。,调试命令/函数、分散加载文件,内容六,调试命令,Vision3支持大量命令,可以通过OutputWindowCommandLine键入命令在命令入口处,语法生成器会显示命令,选项和参数。仅需键入命令名单词的首字符。,调试命令-断点命令,调试命令-普通命令,调试命令-存储器命令,调试命令-程序命令,调试函数,Vision3中有一个内建的函数编辑器,通过Debug-FunctionEditor来打开。打开函数编辑器时需要输入一个文件名或者打开一个由OptionsforTargetDebugInitializationFile指定的文件。该编辑器的用法与Vision3编辑器相同,允许用户输入和编译调试函数。,调试函数,Vision3提高了一些可被调用的预定义调试函数,它们不能被重定义或者被删除。预定义函数用来帮助开发者定义用户和信号函数。,更多函数,文件映像域,装载域描述运行前输出段和域在ROM/RAM里的分布状态;运行域描述了运行时输出段和域在ROM/RAM里的分布状态。,CODE,DATA,ZIsection,STACK,Image$RO$Base,Image$RO$Limit,Image$RW$Base,Image$ZI$BaseImage$RW$Limit,Image$ZI$Limit,运行时的数据搬移,RW段搬移voidport_init(void);voidchange_clock_divider(intnHdiv,intnPdiv);/.CommonSrcsys_init.cvoidsys_init();,ADC配置,/adc_test.cvoidadc_test(void);#defineADC_FREQ2500000unPreScaler=PCLK/ADC_FREQ-1;rADCCON=(114)|(unPreScaler6)|(03)|(02)|(1Debug,Debug调试,点击工具栏“”下载程序到目标板进入调试状态,配置XP下超级终端,点击WindowsXP-开始-所有程序-附件-通讯-超级终端,建立一个新的终端,并设置如下:波特率115200、1位停止位、无校验位、无硬件流控制。,超级终端串口的选择根据用户的PC串口硬件不同,请自行选择,如果PC机只有一个串口,一般是COM1,运行程序查看实验现象,菜单栏Debug-Run,全速运行程序并查看串口打印消息;调节实验平台位于Area10区域的ADC滑竿改变模拟量值,查看串口打印的采样值的变化。,断点、单步、查看各个调试窗口,在合适的位置设置断点观察程序运行;查看各个调试窗口;单步跟踪代码运行。,程序固化,内容八,Flash编程,Vision3集成了Flash编程工具,所有的相关配置将被保存在当前工程中。允许用户编写初始化文件进行总线配置、寄存器配置等初始化设置。支持用户自定义编写Flash算法。,Flash编程工具配置,菜单栏Flash-ConfigureFlashTools;,初始化文件,Flash芯片,初始化文件,Flash初始化文件有两个典型的应用:配置存储器或寄存器,这些存储器或寄存器是用来配置访问Flash的总线设置;加载附加程序部分。,FUNCvoidInit_Board(void)_WWORD(0 x53000000,0 x00000000);_WWORD(0 x4A000008,0 xFFFFFFFF);_WWORD(0 x4A00001C,0 x000007FF);_WWORD(0 x4C000014,0 x3);_WWORD(0 x4C000004,0 x0005c042);_WWORD(0 x56000070,0 x00280000);_WWORD(0 x560000

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论