本帖最后由 MDebug 于 2015-9-30 09:27 编辑
临近尾声了,我把两个帖子合并为一帖。 无论各位拿到哪一款板子,什么芯片,最先就是要把它的datasheet阅读一遍(英文的最好,因为很多翻译过来的远不如自己根据英文理解的好,同时还能提高自己的英语阅读能力,何乐而不为?)例如: Datasheet告诉你M0内核的测试配置,包括本子类型,MCU,CPU,时钟总线,CPU总线等其他参数。 真是从KL26的datasheet,它明确告诉你systick(滴答定时器)的作用和计算方式 阅读完datasheet后,我们就要阅读用户手册和原理图(英文为上策,中文为中策,不读为下策) 这些需要细读,因为是给开发人员看的,所以很关键, 我们以K64为例,
这幅图就告诉你K64内部的构造,让你有个大致的了解,看图比看文字实用多了,后面还有一些电路模块的介绍,例如
这些模块看看了解了解即可,因为我们是搞软件开发并非搞硬件,但是这些电路的设计的思想可以参考。随后我们需要看原理图,进一步了解它的IO分布和管脚复用、管脚映射的问题。 随后就是固件库了,包括OpenSda,BootLoador和库函数,在这一方面我不得不说,飞思卡尔的固件库做的确实不怎么样,比较复杂。。。这东西不是我的强项,所以我总是看着快速开发手册进行配置。。。 随后我们需要选择合适的开发环境,应用最多的就是MDK,IAR和Codewarrior,前两者我经常用,Codewarrior我没用过,不知道效果如何,听说是在运用数组的时候会反序,因此一直没用Codewarrior进行开发,开发环境选择适合自己的即可。 还有关于预编译的一些指令,我还真没接触过,因为时间有限,所以没去仔细研究这些东西。而且一般的编译器都会给你提供启动代码。
我在开发KL26和K60的时候,都是使用的第三方提供的库,他们的底层我没有仔细看,我只是根据他们给的库函数进行配置和调用,比较方便的进行快速开发。 K60的速度很快,因为是M4内核的,我用的库是野火家的库,非常好用,基于IAR环境下预留了Ucos的接口函数,是我见到过最棒的库。 KL26和KL25最亮眼的莫过于它们的低功耗了,低功耗确实不错,我亲测过在睡眠模式的时候电流仅仅为6uA,很小的一个数字了,KL26我推荐各位使用蓝宙电子的库,可以在MDK和IAR上同步使用,也是比较方便的,但是好像跑不起Ucos来... 刚拿到KL26和K60的时候,我没有仔细读datasheet,而是直接看用户手册上手的,因此对于这两款芯片不是很熟悉,KL26是因为在飞思卡尔社区得到的所以开始玩的,K60是因为做智能车需要而入手的。众所周知,飞思卡尔对于开发汽车电子方面远远胜于其他半导体公司,我很信任飞思卡尔公司,它们的一些解决方案我也看过,确实很不错。 我也谈不上什么经验吧,具体的代码需要各位各自去书写,用自己的框架去为单片机编程,不过提醒各位:单步调试真的很关键,包括观察变量变化等一些问题。我用的比较生,还需要各位指点迷津。
|