Linux下使用Keil MDK 开发TM4C123G LaunchPad

Using Keil MDK develop TM4C123G LaunchPad in LinuxMint

Linux下有原生的Code Composer Studio (CCS)可以开发德州仪器的TM4C123G LaunchPad,用起来也很方便。但是我自己在edx上面上了一门课程叫做 “Embedded System --Shape the World”。课程用的是Keil集成开发环境。然而Keil没有Linux的版本,在上课的时候我是用Virtual Box 虚拟了一个Windows XP完成了课程。课程结束之后我参考网络上一些博文结合自己的经验,实现了利用wine安装keil,并成功编译代码,烧写到LaunchPad中。

步骤1:wine的安装

sudo apt-get install wine winetricks

步骤2:利用wine安装Keil 下载软件的安装包Keil MDK

wine MDK474.EXE

按提示向下,正常安装。[1]

步骤3:设置Keil生成.hex(16进制)文件。如下图:Project->Options for Target... setting01                 在弹出的对话框中选择:Output->Create HEX file setting02。这样编译,链接成功之后就会生成对应的16进制文件projectname.hex。

步骤4:将生成的16进制文件转换为2进制文件。经过测试,直接将.hex文件烧录到TM4C123G LaunchPad中程序不能正常运行。因此我们还需要将16进制文件(.hex)转换为2进制文件(.bin)。用到的工具就是hex2bin

安装hex2bin:

下载:Hex2bin-2.2.tar.bz2

进入含有Hex2bin-2.2.tar.bz2文件的目录解压:tar -jxvf  Hex2bin-2.2.tar.bz2

进入解压文件的目录:cd Hex2bin-2.2

创建符号链接:sudo ln -s `pwd`/hex2bin  /bin/hex2bin

使用方法: hex2bin filename.hex

这样就可以生成2进制文件 filename.bin了

步骤5:将二进制(.bin)文件烧录到TM4C123G LaunchPad中使用的工具是lm4flash。[2]

准备工作:

sudo apt-get install libusb-1.0-0-dev libusb-dev  libusb-0.1-4 libusb-1.0-0

安装lm4flash:

下载 lm4tools

进入含有lm4flash.tar 的文件夹解压:tar -xf lm4tools.tar

进入解压目录编译源码:cd lm4tools/lm4flash/ ;make

创建链接:sudo ln -s `pwd`/lm4flash /bin/lm4flash

连接好LaunchPad和电脑之后利用

lm4flash filename.bin

(若出现:

Unable to open USB device: LIBUSB_ERROR_ACCESS
Unable to find any ICDI devices

尝试使用 sudo lm4flash filename.bin
)

就可以将编译好的二进制文件烧录到LaunchPad中。经过测试,这种方法可行。

步骤6(可选):让电脑做这些枯燥的步骤吧。 将转换,烧录,写成一个脚本,同时检查hex文件的变化。实现自动检测hex文件是否有变化,若有变化则自动烧录。

下载Jauto_flash 保存到本地一个文件夹中

添加可执行的权限:sudo chmod +x Jauto_flash

创建链接:sudo ln -s `pwd`/Jauto_flash /bin/Jauto_flash

使用方法:在keil第一次编译链接生hex文件后,终端切换到keil工程的文件夹下,输入:

Jauto_flash

(或者使用 sudo Jauto_flash)

则会将hex文件转换,烧录到TM4C123G LaunchPad中。若修改了源代码,并成功编译生成新的hex文件,则Jauto_flash会检测到hex文件变换,并自动转换,烧录。

总结:本文介绍了如何在Linux下利用wine搭建TM4C123的的Keil开发环境。实现代码的编译,链接,转换和下载。

参考:

[1]http://blog.csdn.net/ropai/article/details/19813767

[2]https://github.com/utzig/lm4tools/tree/master/lm4flash

打赏作者
喜欢这篇文章,打赏犒劳下作者,以此激励作者创作更多!

您的支持将鼓励我们继续创作!

[微信] 扫描二维码打赏

[支付宝] 扫描二维码打赏

“Linux下使用Keil MDK 开发TM4C123G LaunchPad”的3个回复

  1. Great post. I was checking continuously this blog and I'm impressed! Extremely helpful info specially the last part 🙂 I care for such information much. I was seeking this particular information for a very long time. Thank you and best of luck.

  2. Thank you. Of course you can post on the site, because this is a place to share. Once you register, you will become a contributor by default. But there are some problems in registering process at the website. So send me your information (including username, email, initial password you want use at the website) to 719668276@qq.com, I'll add you to the website manually. 🙂 I'm sorry for such inconvenience and welcome to join us. 😛

发表评论

电子邮件地址不会被公开。