第二课:工欲善其事,必先利其器(开发环境配置和H-Jtag安装配置)
一、开发环境简介:
上一节课我们介绍了AT91SAM3S4C微控制器的资源探索,已经对基于AT91SAM3S4C微控制器的开发有了一些基本了解,我们提到可用的集成开发环境有Atmel Studio、MDK和IAR,其中国内用户用的比较多的是MDK和IAR,两个开发环境都很流行,也很好用。
MDK全称Keil MDK uVision x.xx,后面x.xx是版本号,与8051的开发环境Keil C51在界面上很相似,但是两者是不同的,前几天在群里就有用户用Keil C51的开发环境去开发ARM,结果说看到的配置和论坛上的介绍不一样,所以如果从网上下载,注意不要下错了。如果是从51转型过来的用户更熟悉MDK一些,建议使用这个。MDK v4.60版可以在这里下载:http://www.mcu123.com/news/Soft/embsof/arm/201209/549.html。这是试用版,有代码限制,如果你是穷学生,买不起昂贵的正版,和谐文件可以在百度“keil mdk 破解”,公共场合,我就不多说了,有钱了建议使用正版。
IAR的ARM开发环境全称叫IAR Embedded Workbench for ARM x.xx,后面x.xx是版本号,简称EWARM,如果以前使用过MSP430单片机,使用IAR for MSP430开发环境的话,相信大家对这个环境还是很熟悉的,同样这两个环境也是仅仅界面相似,不是同一个开发环境,请予以区别,别下载错了。 EWARM v6.30可以在这里下载:http://www.mcu123.com/news/Soft/embsof/arm/201111/541.html 。这个在安装的时候要序列号,可以在百度“IAR 6.30 破解”,同样是铺天盖的安装和和谐的介绍,这里不再多说。
官方的Atmel Studio也还不错,免费!是基于Eclips的,以前开发过AVR单片机的用户那是相当熟悉了,而且官方的例程是针对这个环境的,但是不知道为什么,装在我的电脑上运行很慢,Eclips在我的电脑上总是很卡,我用其他的基于Eclips的软件也比较卡,MPLAB x、Eclips for android也不好用。所以这次悠龙的试用活动我没有测试这个环境,这里不表。想尝试的同学可以自己尝试。
以后说MDK、Keil MDK、MDK集成开发环境、MDK IDE都是指得“Keil MDK uVision集成开发环境”;说IAR、EWARM都是指IAR Embedded Workbench for ARM x.xx因为说话中经常这么交叉称呼,这里说明一下。
二、Keil MDK uVision 4.60安装注册
由于悠龙提供的英蓓特的demo板使用的是MDK环境,为了充分利用这些示例代码帮助我们学习,这次测试使用Keil MDK uVision,我用的版本是4.60。
1. 安装
在上面提供的地址下到软件之后安装就行了,一路Next,在需要填写信息的地方随便填写一些信息,就可以安装完毕。在问及要不要增加一些评估板案例代码的时候,选择none,不用它提供。安装完成的时候提示是否安装uLink驱动,如果你使用uLink仿真调试器,这里请选择安装。
※这里需要注意的是:如果你的计算机上之前安装过Keil C51,记住在选择安装路径的时候一定要自己手动选择一个新的文件夹安装,要不然默认MDK会安装到之前的Keil C51的目录里面,这么一装,你的C51就被覆盖不能用了。我的C51安装目录是:D:\Dev Tools\Keil C51 V903;我的MDK安装目录是:D:\Dev Tools\Keil MDK V460。
还有对于已经安装C51的用户,C51和MDK的版本要都是4的话,在桌面和开始程序菜单建立的“快捷方式图标”也是一样的,结果就是你安装完MDK,发现你的C51快捷方式变成MDK了,不要着急,自己手动建立两个快捷方式即可。我是这么建立的,新建“Keil for ARM uVision4”快捷方式指向“MDK安装目录下的\UV4\Uv4.exe”;新建“Keil for C51 uVision4”快捷方式指向“C51安装目录下的\UV4\Uv4.exe”
2. 注册:
安装完毕打开MDK开发环境,是评估板,限制代码16K,还会不断提示你是评估版,可以购买正版或者在百度中搜索“keil mdk 破解”获得和谐文件。在MDK开发环境菜单File->License Management中即可以完成注册,这里不再叙述。关于这部分内容,百度上铺天盖地的。
至此,Keil MDK uVision 4.60安装注册完毕。
三、H-Jtag安装配置
悠龙随开发板提供了一个并口H-Jtag仿真器,对于电脑有并口的同学,就可以直接使用这个仿真器了,很方便,很不错的。关键是,这是一个正版!你终于可以心安理得用正版了。
一般台式机主板上有这个接口,有的主板直接提供并口接口,在机箱后面可以看见(图1所示);即便没有直接提供,主板上都会有并口接口预留的(详见具体主板说明书或者打开机箱在主板上面找25针的Parallel),这种情况,可以在taobao上搜“并口挡板线”,一般3-10块钱就可以买一根这个挡板线,从机箱里面把并口引出。
图1. 计算机主板上的并口
我使用的是笔记本电脑,因为经常要出差调试其他硬件设备,我买了一个“PCMCIA转并口卡”,所以也能在笔记本上使用并口,但是这个卡比较贵。如果不是很必要,不建议买。因为不一定非要用H-Jtag,我们还有Jlink和uLink可以选用的,在我们的大中国……可以更廉价的获得他们。-_-#
连接好的H-Jtag如图2所示。(台式机连接与这个相似)
图2. 通过并口连接H-Jtag到目标开发板
1. H-Jtag软件
H-Jtag官网:http://www.hjtag.com/
这里大家可以了解一下H-Jtag相关的介绍,也可以获得H-Jtag的最新软件。当前最新的H-JTAG V2.1 (Build20120215)软件下载地址:http://www.hjtag.com/view.asp?typeid=2&id=20
H-Jtag用户手册:http://www.hjtag.com/xz.asp?typeid=22
下载之后直接安装即可,安装完毕,会在桌面上出一大堆关于H-Jtag的图标,为了便于管理,可以建一个文件夹把他们放到文件夹里面去。
2. H-Jtag配置
(1)H-Jtag与MDK的接口配置
点击“ToolConf”快捷方式,在弹出的对话框中让用户选择Keil TOOLS.INI的位置,这个在Keil MDK的安装目录下,点击选择进来。再点Config按钮,即可完成H-Jtag与MDK的接口配置,如图3所示。注意:这个过程请关闭打开的MDK界面。
图3. H-Jtag与MDK接口配置
完成这一步,在MDK的开发环境的Debug中就有了H-Jtag的选项,具体到调试的那一步我们再说。一会儿会看见的。^^
(2)H-Jtag的软件配置
H-Jtag实际上是一个调试服务器,所以在使用H-Jtag之前,我们要首先配置H-Jtag软件;并且在ARM的调试过程中要保持H-Jtag软件是打开的。
双击“H-JTAG”图标,打开H-Jatg Server界面,如图4所示。
图4. H-Jtag Server界面
(a) 选择并口号。Settings-> LPT Port Setting,请根据你的LPT号来选择Port号,然后点Port Testing,如果通信正常,就会提示“Select Port works well”。如果提示“Select Port doesn't work”,请继续往下看。如图7所示。
· 对于台式机,在“我的电脑”上点右键,选择“管理”->左侧选择“设备管理器”->右侧选择“端口(COM和LPT)”展开,可以看见自己电脑上的LPT号,如果使用的是台式机默认主版上的LPT,一般都是LPT1。如图5所示。
图5. LPT端口号查看
· 如果使用PCMCIA转并口或者PCI转并口,这里注意需要自己手动填写接口地址。
接口地址查看方法:在“设备管理器”中列出的“端口(COM和LPT)”,在LPT设备上右键选择“属性”->“资源”标签,可以看见[资源设置]->[输出范围]里面有接口地址,记下第一行的起始地址,起始地址为0x2008,将这个地址填写到H-Jtag的“LPT Port Setting”中的LPx后面的框中,如图6所示,再点击Port Testing,就会正常通信。如图7所示。
图6. 转接卡实现的并口LPx地址查看
图7. 并口工作测试成功!
(b)选择仿真器为并口模式。
1)连接H-Jtag仿真器连接至开发板;
2)打开开发板电源;
3)在H-Jtag Server中选择Setting->USB/LPT Selection->选择LPT,点击OK,H-Jtag开始检测目标开发板上的MCU芯片类型。检测成功,H-Jtag界面会显示目标MCU的类型和ID号。如图8所示。
图8. 检测目标芯片成功
(3)H-Flasher配置
在调试之前需要把程序下载到MCU当中,H-Jtag的程序下载是通过H-Flasher实现的。
这就要配置H-Jtag的Flash读写软件H-Flasher。在H-Jtag软件,中选择“Flasher”->“Start H-Flasher”->左侧选择“Flash Selection”->右侧选择目标MCU芯片。针对悠龙这次提供的开发板,目标芯片是AT91SAM3SC4,在情况选择如图9。
图9. H-Flasher配置
H-Flasher还有很多高级功能,为降低难度,这里用不着的就不再说,要想了解更多可以查看H-Jtag的用户手册。
至此,我们完成了H-Jtag的配置,以上配置只要不更改,以后不需要再配置。
※要特别要提醒的是:在使用H-Jtag进行仿真调试的时候,需要打开H-Jtag Server。打开后点界面上的关闭按钮,它会自动缩小到通知区,只要不在这里退出,它会自动在后台工作的,在仿真调试过程中我们也能看见这个图标状态根据工作状态是变化的。
四、使用MDK + H-Jtag开发初体验
1. 打开H-Jtag Server,点击关闭按钮让他最小化到通知区。
2. 打开Keil MDK开发环境。
3. 第一个案例,不打算自己写,具体写代码下下一节课再说。这里找到悠龙提供的光盘下的“uTenxu_AT91SAM3S\Software\sample\mdk_source.zip”,解压,我们打开mdk_source\06-LCD\project\SAM3S4C.uvproj,这是一个关于LCD的demo项目,具体内容先不要管。
4. 选择仿真调试器:我们点击界面上的“Project”->“Options for Target 'SAM3S4C Flash'”->“Debug”标签,右侧选择Use: H-Jtag Cotex-M3,如图10所示;在“utilities”标签->"Use Target Driver for Progamming"->选择“H-Jtag Cotex-M3”,同时勾掉右侧的“Update Target before Debugging”,点击OK,如图11所示。
图10. MDK下H-Jtag仿真调试器的配置
图11. MDK下Flasher下载配置
5. 点击MDK菜单,“Debug”->"Start/Stop Debug Session",就可以看见H-Jtag开始下载程度到目标板。如图12所示。
图12. MDK下H-Jtag仿真调试
然后MDK界面自动切换到Debug界面,在这里就可以单步(快捷键F10)、全速(F5)进行代码测试了,这个程序是Demo程序,本身没有错误,所以如何调试我后面讲到具体案例再说。界面图片如图13所示。
图13. H-Jtag仿真调试界面
6. 要退出调试模式,选择“Debug”->"Start/Stop Debug Session"或者直接按Ctrl+F5即可。
好了,今天我把Keil MDK开发环境的安装和H-Jtag的配置就说完了,关于Keil MDK,能在这个论坛混的人都相比比较熟悉了,所以点到为止,而且由于涉及的内容太多,等在具体的案例中遇到什么再详说。
本节特别详细的说明了H-Jtag的配置和使用,因为这方面的资料网上比较少,我就多说一点,而且,这个正版免费的工具这么好用,我们为什么不用呢?并口H-Jtag惟一的缺点可能就是不支持SWD,但是这个对我们开发基本上没有多大影响,除非我们特别在意这两个引脚,那SWD多少也会占用引脚的,要彻底解决这个问题就要用ISP下载,彻底解放调试端口。
补充说明:
1. 关于使用Jlink的调试:
有很多同学有Jlink v8,需要安装Jlink驱动,这个在悠龙提供的光盘下Software\tools\j-link\Setup_JLinkARM_V468a.exe,在使用之前请先安装这个,再插上Jlink,然后再在MDK的“Project”->“Options for Target 'SAM3S4C Flash'”->“Debug”和“utilities”标签中选择Jlink就可以了,其他与H-Jtag相同。
2. 关于uLink的调试:
或者有的同学有uLink,那就更简单了,在MDK默认就是这个调试器,只要在“Project”->“Options for Target 'SAM3S4C Flash'”->“Debug”和“utilities”中选择右侧Ulink就行了,其他的与H-Jtag相同。
至此,准备工作已经结束。下一节开始我们的具体开发学习----Hello world!我已经很期待了,你呢?