老子按:话说闲下来了,开始玩我的ARM了。话说这块板子来自ZLG比赛赞助的EasyARM1138,核心为Luminary的LM3S1138。不过周公公推荐的是采用IAR,这东西总觉得不爽,编译器不爽,编辑器更不爽。遂生歹念,想把它移植到GCC平台来,刚好最近用周公公的TKStudio,感觉不错,故……移植大抵是以下几步:

  • 启动引导文件startup.c,在GCC环境下和IAR下的该文件是不一样的,具体可以Luminary公司提供的外设驱动库里找到。

  • 连接脚本lm3s1138-ROM.ld,这部分只是要加上,和IAR下没什么区别。

  • 设置头文件地址,在编译选项里面加上LM外设驱动库的头文件目录。

这里针对TKStudio及其自带的GCC工具链Sourcery G++ Lite写一个步步高,假定TKStudio安装在E:TKStudio上,:

  • 新建一个TKStudio项目,内核为ARM,编译工具为G++ Lite(None eabi) for ARM,目标CPU就自选了,我的是EasyARM1138,所以就选择Luminary Micro下的LM3S1138;

  • 打开项目设置,切换到“C/C++”选项卡,在包含路径中加上LM的外设驱动库头文件目录,本例是E:TKStudioBuildGUN-ARM LuminaryINC;

  • 切换到连接选项卡,在“包含库文件”中加上LM的外设驱动库,本例是E:TKStudioBuildGUN-ARM LuminaryLiblibdriver.a,同时添加链接脚本文件,这个脚本文件可以从LM的驱动库中找到。

  • 如果要使用TKStudio的调试功能,可以切换到调试选项卡,在类别下拉框中选择硬件调试,然后在下面的目标驱动DLL中增加一个JDI型的驱动,文件是E:TKStudioDRVLM-LinkLMLink_JDI_DRV_for_Tkstudio.dll。

启动文件startup.c内容如下:

链接脚本lm1138.ld内容如下: