KL03小巧可爱,一直想用它做点小东西,但KL03虽然小且不简单,新手要想常从零搞定它也是不容易的,所以最快的办法就是利用FSL已有的资料和库,简单来说就是两件事:
搭建开发环境
烧写程序到芯片
搞定了这两件事,就算入门了,后面的写程序,查资料,各位自由发挥。
搭建开发环境
说起开发环境,不得不提FSL官方的KDS,它强大灵活,当然也非常难用,荐于它有eclipse的血统,而现代的手机开发几乎和eclipse多少都搭点关系,将来我是要转向手机开发这块的,基于这样的考滤,试试吧。
从FSL官网下载KDS 2.0, 双击图标开始安装,很简单指定安装位置为E:\KDS,基本上是一路飞奔完成安装,在KDS中,也是通过库提供对各种MCU的支持的,只不过FSL不中库,取了个洋文Kinetis SDK (Software Development Kit) , 它的目标是支持所有的Kinetis 芯片,提供完整的IP 寄存器访问的抽象库,以及基于该抽象库的完整的设备驱动。
我们可以使用该套驱动库方便地实现自己的应用,而无需过多阅读复杂的芯片参考手册。它的好处在于,驱动接口的统一性也保证了应用在不同Kinetis 芯片之间移植易如反掌。
除此之外,在Kinetis SDK 还会提供RTOS 支持(包括MQX,FreeRTOS 以及uCOS),USB 和TCP/IP 协议栈,详细的应用例程以及各种各样方便大家开发使用的工具。
Kinetis SDK的结构是分几个层的, 方便维护和扩展, 作为新手不可能去改写它, 我们只管用就是了,所以我们就不浪费时间了,在这里我需要的是KL03的库,上官网找和KL03最接近的库 KSDK_1.0.0-KL03Z,从网上下载sdk后,直接双击exe文件安装到任意你喜欢的目录, 我初装到E:\KDS\workspace\ksdk_1.0.0-KL03Z目录下。
现在可以尝试编译KSDK自带的demo应用,需要注意的是在编译demo之前需要先编译SDK libraries,原因是:
the driver library project should be built to generate the library archive: ksdk_platform_lib.a. Because this library contains all binary codes forHAL and the peripheral drivers specific to the chip, each SoC has its own ksdk_platform.a library archive。
如何编译SDK libraries 呢?
很简单,到<install_dir>/lib/ksdk_platform_lib/iar/<device_name> 目录中,比如C:\Freescale\KSDK_1.0.0\lib\ksdk_platform_lib\iar\K64F12 中,使用IAR打开ksdk_platform_lib.eww文件,然后编译就可以生成ksdk_platform_lib.a文件。
然后就可以去编译demo了,比如我想编译hello world 这个应用,到e:\kds\workspace\KSDK_1.0.0-kl03z\demos\hello_world\kds\frdmk64f120m 这个目录就可以。
tpm_demo
https://community.freescale.com/docs/DOC-102988 How to install KL03 SDK support in KDS 1.1.1 and KDS 2.0.0
奋战了一个晚上,仍然搞它不定,它仍然玩强的显示一个错误,算了不玩它了
第二天理了理思路,痛定思痛再战江湖,即然问题是因为这个KSDK只支持KDS 1.1,而我安装的是KDS 2.0,何不来个偷梁换柱,将原来装KDS 2.0安装的目录E:\kds\toolchain改名,重新建个空的E:\kds\toolchain目录,将下载的gcc-arm-none-eabi-4_9-2014q4-20141203-win32安装到这个空目录下,替换原系统的GCC, 注意这个新装的GCC在BIN文件夹下少了个make可执行程序,从旧的gcc中复制补充这个可执行程序。
然后编译,它成功了
鉴于Kinetis SDK这么难用,而KSDK也支持MDK,所以我顺手把MDK的也搞好,方便想玩哪个就玩哪个,先装MDK,这个也简单
|