【原创】低版本IAR简易开发LaunchPad的歪道

2019-08-04 17:41发布

    故事的起因是这样滴。。。LaunchPad包装盒中并没有附带资料光盘(至少我收到的是这样的),只有一张纸的简单介绍,即TI网站上的文档MSP-EXP430G2 LaunchPad Quick Start Guide
,上面说开发环境需要到TI网站下载安装相应的软件。另外,在网站上的文档MSP-EXP430G2 LaunchPad Experimenter Board User's Guide (Rev. B)
里的第7FAQ中也提到所支持的开发环境软件版本为“IAR Embedded Workbench KickStart Version 6.00 or higher and CodeComposer Studio v4 or higher”,我不太想再安装一个版本的IAR,电脑上已经有个版本了4.2,用得挺稳定,再安装一个版本挺浪费本就已经很拥挤的硬盘空间,所以我突然有个歪想法,能不能利用现有的版本进行代码编辑、编译和下载?
    打开我的电脑上安装的IAREmbedded Workbench Evaluation for MSP430 4.20,看了下支持的430器件型号,没有ValueLine的系列。到同事电脑上看他安装的IAR EmbeddedWorkbench Evaluation for MSP430 5.40,这个版本下倒是有ValueLine系列的器件列表,接上LaunchPad,可以连接进入Debug,说明这个版本可以用,但不知跟上述的KickStart Version6.00的区别。
    接着,对比分析了下IAR的安装文件夹,发现其实被支持的430型号都在文件夹“..IARSystems430configdevices”下,那里有很多menu扩展名文件,想必对应的是IAR的配置选项中的器件列表,于是乎从同事那里的5.4版本的该文件夹下将LaunchPad上的MSP430G2553menu文件复制到我的电脑的4.2版的MSP430x2xx Family子文件夹下,再打开IAR,看项目选项Options,好了,果然MSP430G2553出现在Device的下拉选项MSP430x2xxFamily里头了。除此之外,“..IARSystems430config”路径下还有几个跟器件有关的文件,分别以xclsfrddf为扩展名,估计也有用,也分别拷贝过来。
    然后试验一下吧,新建了一个闪灯项目,编译,有状况,忘了拷贝G2553的头文件了,因为我用了#include"msp430g2553.h",只好再复制一趟。这回行了,可以正常编译了。同时我也试验了一下如果不复制上面说的xcl扩展名文件,则无法进行编译,若在打开项目后删掉sfrddf扩展名文件则还能编译成功,不过关掉IAR重新启动并打开项目时就会报错。
    再接着就是下载调试,点击Downloadand DebugDownloadwithout Debug,都不行,都会报错,虽然最开始插上LaunchPadXP系统已经自动成功为其安装了驱动了。对比了下同事电脑上的进入Debug时的下方Log窗口的提示,应该是接口的动态连接库的原因,版本不一样,估计4.2版本的不支持LaunchPad的接口。怎么办?看看资料,LaunchPad这块板子使用SBW接口,那是不是可以用MSP430 Flasher?试试吧,反正已经走到这步了。运行MSP430 Flasher,输入命令msp430flasher.exe -n -MSP430G2553 -w try.txttry.txt是刚才建的闪灯项目的编译输出目标代码文件,呵,竟然成功了,有真相:
1.JPG

    下载后,灯并不闪烁,按一下右侧的复位键,呵呵,开始闪烁了,说明下载成功,同时也说明前面编译也是成功的。再试一次,确认没问题,从TI网站找来LaunchPad上配套的测温程序包,将目标文件MSP-EXP430G2-LaunchPad.txt解压出来,类似地运行cmd,运行程序msp430flasher.exe -n -MSP430G2553 -w MSP-EXP430G2-LaunchPad.txt,再按复位键,成功,红绿灯开始轮闪了。同样有真相:
2.JPG
    这里需要注意,上述MSP430Flasher的参数是最基本的两个,其他的参数虽然没写上,但因为其默认值能匹配现有LaunchPad板,所以可以正常使用,更详细使用参数可以参考相应的技术文档。
总结,通过上述捣腾,如果不想安装新版本的IAR,可以通过拷贝器件文件、头文件的方法在老版本IAR上进行程序编译,然后再利用基于命令行模式的小工具MSP430Flasher进行程序下载。这样同样可以将程序实现到ValueLine单片机上去,缺点是暂时没法进行仿真调试,只能运行看结果。上述操作方法仅限于将程序编译后下载到单片机里,是否有其他潜在的我没想到的问题,欢迎朋友们指出。至于能否通过其他手段,比如驱动修改,来实现在老版本IAR下的下载仿真调试,暂时没精力去研究了,如果有朋友有方法实现,不烦分享一下:)还有,其他版本的IAR是否也能这么做,有兴趣的朋友可以试试。
为方便想试验的朋友,将IAR编译需要拷贝的文件附上,另外附上MSP430Flasher软件,这个在TI wiki上也能下载到。
..IAR Systems430configdevices下(或放再下一层目录MSP430x2xx Family):
G-device menu.rar (815 Bytes, 下载次数: 53) 2012-6-14 00:29 上传 点击文件名下载附件

..IAR Systems430config下:
G-config.rar (11.89 KB, 下载次数: 37) 2012-6-14 00:29 上传 点击文件名下载附件

头文件..IARSystems430inc下:
G-h.rar (15.71 KB, 下载次数: 41) 2012-6-14 00:29 上传 点击文件名下载附件

Flasher
MSP430_Flasher_(binary).zip (1023.8 KB, 下载次数: 90) 2012-6-14 00:29 上传 点击文件名下载附件
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。