ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:1.21MB ,
资源ID:18143927      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18143927.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(KEIL MDK教程Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

KEIL MDK教程Word文档格式.docx

1、(2)在当前文件中查找。在编辑框中输入要查找的关键字,按回车即可查到,连续按回车会跳到下一处。(3)在当前文件中查找。单击后会弹出查找对话框,能进行一些设置,比如大小写区分等。4.设置书签快捷按钮: (从左向右依次为标签1、2、3、4)这个功能还是很实用的,想象一下,当你的一个文件有很多代码的时候,寻找你需要的代码行就变得很不容易,这个时候,设置书签快捷键就派上了用场!(1)设置书签。将鼠标定位到要标记的代码行,单击该图标则在代码行的左侧设下一个书签,再次单击该按钮,取消该代码行的书签。(2)跳到上一书签。(3)跳到下一书签。(4)取消所有书签5.调试快捷按钮:(1)点击此按钮进入调试界面(2

2、)设置断电。单击要设计断电的代码行,再单击此按钮,则为该代码行设置了断点,再次单击,取消所设的断点。通常设置断点是在debug窗口的要设断点代码处双击,再次双击取消设置断点。(3)使能/禁止断点。将鼠标定位到一个已经设置了断点的代码行处,单击此按钮,该断点被禁止,再次单击该按钮,断点使能。(4)使能/禁止所有断点。(5)取消所有断点。哎呀,有事要回去了,明天接着写。一晚上过去,继续写。6.工程视图和配置快捷按钮:(1)工程视图快捷按钮。这相当于一个下拉菜单,里面有绝大多说的工程窗口。这个按钮用来显示/禁止工程内的窗口。比如常常会有人把工程空间窗口或者编译输出窗口不小心关掉却又不能把它再显示出来

3、,这个时候就可以通过单击这个快捷按钮的相应内容来显示。另外,该按钮实现的功能都可以在菜单view 中设置。(2)配置快捷按钮。点击一下出现图4所示的界面:图4(1)编辑选项卡。用来设置一些编辑信息,比如缩进的设置,显示行号设置,界面显示效果等等。(2)设置代码、关键的颜色和字体。如果默认的关键字颜色,代码颜色,代码字体、大小不符合你的习惯,可以在这里进行更该,在这里还可以更改用户自定义关键字。(3)设置用户关键字。非常非常好用的一个功能,它可以使你自己定义的关键字像系统关键字一样高亮显示。假如你有想写一个移植性比较高的程序,通常一些和编译器无关的变量类型需要这样定义:typedef unsig

4、ned char uint8; /* 无符号8位整型变量 */ typedef signed char int8; /* 有符号8位整型变量typedef unsigned short uint16; /* 无符号16位整型变量 */然后在其它模块中都是这样定义一个无符号8位整形变量:uint8 test; /定义变量这样有一个什么问题呢?就是uint8这个虽然是用户定义的关键字,但是它并不能像系统关键字那样高亮显示。怎么办呢?完全有办法解决,而且就是在这个标签卡中就可完成。方法如下:.打开User Keywords标签卡。在左侧窗口选择文件类型,比如ARM:Editor C File;在右侧

5、窗口点击 按钮,新建一个用户关键字编辑框,输入用户定义的关键字,比如uint8,这样在程序代码中,所有的uint8都会高亮显示。(4)设置快捷键。这个我没有用过,所以不多说明。(5)模板代码。这又是一个比较实用的功能,模板既有软件自带的,也可以自己编辑模板。可以在你书写程序的时候使用这一功能加快代码的输入。使用方法:a.先在该选项卡中编辑自己的代码模板,也可以之用软件自带的模板。b.使用上面6(1)所说的工程视图快捷按钮,保证该按钮下拉菜单中Templates被选中;选中后会在工程工作空间(Project WorkSpace)中出现: 标签。c.在编写代码时,应用即可。7.目标工具选项(Tar

6、get Options ):这个是最常用而且最重要的快捷按钮和设置点。这里以LPC2114为例详细做讲述,其它CPU与之类似。Vision可以设置目标硬件的选项。通过上面的工具栏按钮或Project - Options for Target菜单项打开Options for Target对话框,如图5所示。在Target页中设置目标硬件及所选CPU片上组件的参数。(1)设备选项卡(device )。图5在这里可以在图中2区域更改所使用的CPU,图中3区域是该cpu 的一些描述。(2)硬件目标设置选项卡(Target),见图6所示。图61:选择硬件目标设置选项卡2:指定用于的晶振频率3:在应用中可

7、以选择实时操作系统(RTOS)。Keil 提供: : 它是一个非常有效的 RTOS,支持抢占式的任务调度、 消息和信号传送、信号量等等。 完整的版本带有源代码和包含一个Flash文件系统和TCP/IP协议栈。4:指定选择 ARM 或者 Thumb 模式进行代码生成。5:利用 Cross-Module优化为全局代码优化创建一个链接反馈文件。6:使用MicroLib库。为进一步改进基于ARM处理器的应用代码密度,RealView MDK采用了新型microlib C库(用于C的ISO标准运行时库的一个子集),并将其代码镜像降低最小以满足微控制器应用的需求。Microlib C库可将运行时库代码大大

8、降低。7:选择大端模式。编译器默认都是小端模式,NXP的LPC2114处理器只支持小端模式,所以该项变成了灰色。三星的S3C2440既支持大端也支持小端,这样的处理器该项就可以选择了。8:利用交叉模块优化创建一个链接反馈文件以实现全局代码优化。11:片外ROM设置,最多支持3块ROM(Flash),在Start一栏输入起始地址,在Size一栏输入大小。若是有多片片外ROM,需要在13区域设置一个作为启动存储块,程序从该块启动;有几块ROM需要选中对应的9区域。12:片内ROM设置。设置方法同片外ROM,只是程序的存储区在芯片内集成。17:片外RAM设置。基本同片外ROM,只是若选中19、20区

9、域后,对应的RAM不会被默认初始化为0。18:片内RAM设置。设置方法与片外RAM相同,只是数据的存储区域在芯片内集成。(3)输出选项卡(Output),见图7所示。图7选择输出选项卡指定输出文件的文件夹,这样做可以减少工程文件夹文件的数目。3.可执行文件的名字。可执行文件指生成的.hex文件,因此应先使能4区域。使能后会产生可执行文件。5.创建批文件6.生成库文件(4)列表选项卡(Listing),见图8。图8选择列表选项卡 指定输出文件的文件夹,这样做可以减少工程文件夹文件的数目。设置生成/禁止一些.lst、.txt文件。4.设置生成/禁止一些.map文件(生成的代码详细信息就在这个文件里

10、)(5)用户程序选项卡(User),见图9。图9 选择用户选项卡。编辑源文件前运行用户程序。编译前运行用户程序。编译后运行用户程序。图中所示的是运行fromelf.exe程序生成.bin文件,详细方法见博客:(6)C/C+选项卡,见图10。图10选择C/C+选项卡。定义预处理符号。假如有一段代码使用了条件编译,如下所示:#if ABC void delay_tus(uint32 dly) uint8 i; for (; dly0; dly-) for (i=0; i4; i+); #endif如果你想让编译器编译这段代码,有两种方法:第一种方法:使用#define ABC第二种方法:在图中2区

11、域所示的编辑框中输入ABC。多个符号用逗号隔开。使能/禁止ARM状态与Thumb状态交互。为了更好的优化存储空间,请使能该选项。设置优化级别,共4级。Level 0为不优化,Level 3为最高级别优化。一般选择default ,即Level 2级优化。附加的优化选项。输出警告信息设置。为了更好的检查程序,设置成All即可。头文件路径设置。(7)Asm选项卡,见图11。与C/C+选项卡。图11该选项卡与C/C+选项卡十分类似。这里重点说说图中红色区域条件汇编控制符号的应用,因为这个在启动代码中可能会用到的。摘录一段启动代码:IF :DEF:EXTERNAL_MODE LDR R0, =PINS

12、EL2 R1, =PINSEL2_Val STR R1, R0 ENDIF在这段代码中,如果在图中1区域的编辑框中输入了符号:EXTERNAL_MODE,则本段代码被编译。(8)连接选项卡(Linker)对于不是特别大或者特殊的程序,选项卡的内容默认即可,编译器会自动按照你的设置生成连接选项。(9)调试选项卡(Debug),见图12。图12打开调试选项卡。使用软件仿真。使用硬件仿真。(使用H-JTAG仿真参见我的博客:或者使用L-LINK仿真参见我的博客:4,5:选中后,点击调试按钮自动运行到main函数。要去睡觉了,明天是周末,争取把它写完。(10)工具选项卡(Utilities),见图13

13、。图13点击进入工具选项卡。2.配置Flsah下载按钮(即: ) 使用J-LINK下载详情见我的博文:8.维护工程组件、配置工具环境及管理书:点击该快捷按钮。弹出图14所示界面。(1)工程组建选项卡(Project Components)。图14点击进入工程组建选项卡.工程目标组建。添加/删除文件组。重点讲述一下这个,应用比较多。使用New (Insert)按钮(图3区域红色划线处)可在目标工程中设置文件组,方便文件归类,图中创建了两个文件组:H-File和User。在工程工作空间中,新建的文件组会体现出来,如下图15所示:该区域页面会列出用户工程的文件组织结构。用户可以通过用鼠标拖拉的方式来

14、重新组织工程的源文件。好啦,快捷按钮终于告一段落!下面开始创建源文件,不过我先去玩一下。哎呀,我的周末,我来啦!回来继续,其实就去吃个饭,昨晚舍友们胡扯,很晚才睡觉。今天早晨,呃应该是今天上午起床就晚了点,然后打开电脑不一会的时间就到该吃饭的时间。第四。创建源文件。选择菜单选项File New以创建一个新的源文件,选项会打开一个空的编辑窗口,用户可以在此窗口里输入源代码。如果以扩展名*.C保存文件,Vision4将以彩亮字体显示C源代码。至于代码,还是用一个适合软件仿真的吧(不需要硬件就能全部模拟仿真),这个程序主要使用了定时器0并定时1S钟,然后在中断服务程序中翻转I/O口P0.17的电平。

15、如下所示:(本示例保存文件为MAIN.C)其中,cpu.h为自定义头文件,内容如下:(保存为cpu.h)cpp 1. /*2. *Copyright(c)*3. *Filename:main.c4. *LastmodifiedDate:2010-09-265. *Version:1.06. *By:瓶盖7. *8. *9. */10. #include11. #includecpu.h12. #defineBEEPCON(117)/*P0.17引脚控制B1,低电平蜂鸣*/13. 14. 15. 16. /*17. *名称:IRQ_Time0()18. *功能:定时器0中断服务程序,取反BEEP

16、CON控制口。19. *入口参数:无20. *出口参数:21. */22. void_irqIRQ_Time0(void)23. 24. if(IO0SET&BEEPCON)=0)/使I/O口P0.17每隔1秒翻转一次25. IO0SET=BEEPCON;26. else27. IO0CLR28. T0IR0x01;/清除中断标志 29. VICVectAddr0x00;通知VIC中断处理结束30. 31. 32. 33. /*34. *35. *Time0Init()36. *初始化定时器0,定时时间为1S,并使能中断。37. *38. *39. *40. */41. voidTime0In

17、it(void)42. FcclkFosc*411.0592MHz*444.2368MHz43. FpclkFcclk/444.2368MHz/411.0592MHz44. 45. T0PR99;设置定时器0分频为100分频,得110592Hz46. T0MCR0x03;匹配通道0匹配中断并复位T0TC47. T0MR0110592;比较值(1S定时值)48. T0TCR启动并复位T0TC 49. 50. 51. 设置定时器0中断IRQ52. VICIntSelect所有中断通道设置为IRQ中断53. VICVectCntl00x24;定时器0中断通道分配最高优先级(向量控制器0)54. VI

18、CVectAddr0(uint32)IRQ_Time0;设置中断服务程序地址向量55. VICIntEnable0x00000010;使能定时器0中断56. 57. 58. */59. /*60. *main()61. *初始化I/O及定时器,然后等待中断。62. *说明:在STARTUP.S文件中使能IRQ中断(清零CPSR中的I位)。63. *64. */65. intmain(void)66. PINSEL00x00000000;设置管脚连接GPIO67. IO0DIR设置I/O为输出68. IO0CLR=BEEPCON;69. Time0Init();初始化定时器0及使能中断70. w

19、hile(1);等待定时器0中断71. 72. return(0);73. 74. 75. /*76. *EndOf77. */*Copyright (c)* File name: main.c* Last modified Date: 2010-09-26* Last Version: 1.0* By: 瓶盖*/#include #include #define BEEPCON (117) /* P0.17引脚控制B1,低电平蜂鸣 */* 名称:IRQ_Time0()* 功能:* 入口参数:无* 出口参数:*/void _irq IRQ_Time0(void) if( (IO0SET&BEEPCON) = 0 ) /使I/O口P0.17每隔1秒翻转一次 IO0SET = BEEPCON; else IO0CLR = BEEPCON; T0IR = 0x01; / 清除中断标志 VICVectAddr = 0x00; / 通知VIC中断处理结束*Time0Init()*void Time0Init(void) /* Fcclk = Fosc*4 = 11.0592MHz*4 = 44.2368MHz Fpclk = Fcclk/4 = 44.2368MHz/4 = 11.0592MHz */ T0PR = 99; / 设置定时器0分频为100分频,得110

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1