NXP MCU 技术论坛
直播中

eggeggice

11年用户 74经验值
擅长:制造/封装 模拟技术 连接器
私信 关注
[资料]

【KL25】eggeggice的开发板学习:从零开始【已加附件】

本帖最后由 eggeggice 于 2015-1-22 14:11 编辑

板子到了几天了,之前因为忙别的事没时间来玩,昨天玩了一下午,终于写进了第一个程序。


因为我不是按照论坛上的攻略走的,所以遇到了很多问题,我觉得可以写下来,尤其适用和我一样觉得固件库和jlink太高端不敢用的。后来看了官方的manual,感觉很多问题讲的很全面很基础。资源:
MDK V4.xx Lab for Freescale Freedom KL25Z Board.pdf (1.16 MB)
(下载次数: 63, 2015-1-13 03:22 上传)


废话不多,先上图(左边是同学自制的没有任何外设的51的板子,右边是freescale的板子,真的很小巧。。。)



首先要认识一下这块板子,可以参见群主大大的帖子:https://bbs.elecfans.com/jishu_464492_1_1.html和@ccly0208 的帖子:https://bbs.elecfans.com/jishu_464663_1_2.html
很多问题论坛里的帖子里已经解释了,建议大家多去看看论坛的帖子,能学到不少知识。

然后就是连线。我刚开始看到两个miniUSB接口(不是正常那种大号的USB和现在流行的microUSB,而是以前MP3流行的miniUSB),以为需要两根线,后来才知道只要一根线就好了。如下图,



接下来是安装驱动、升级openSDA和安装keil了。


首先是安装驱动
OpenSDA驱动安装.rar (17.95 MB)
(下载次数: 110, 2015-1-13 03:24 上传)

运行fslkinetisdriversv120.exe后一直点下一步,默认会把驱动给装上的。可能需要重启,否则不会被识别。我就是重启后才连上的。
如果出现以下状况,我建议重启试试:
1、右下角显示连上了硬件

2、非bootloader模式(也就是没有长按复位键再连线)我的电脑中显示为bootloader

3、双击该bootloader会卡住,然后……慢慢……就变为不可识别了→_→……
在我的电脑里看是这样,

或者这样,


或者这样,


楼主当时就抓狂了,在群里问了半天也没搞清楚,最后还是重启好了。


然后是升级openSDA,这个也蛮重要的,因为升级后可以免去很多麻烦。升级可以参照群主大大的帖子:
https://bbs.elecfans.com/jishu_464564_1_1.html
非常详细,我就不重复了。
OpenSDA固件升级.rar (272.72 KB)
(下载次数: 23, 2015-1-13 03:25 上传)


配置openSDA:这一步很重要,因为@初代饭影 大大用的@suyong_yq 大大的固件库,与我直接用官方默认的openSDA(也就是ARM的CMSIS-DAP标准,openSDA是freescale给它取的新名字)debug有区别。
使用openSDA前,有一步很重要的工作要做,就是让系统将这个芯片识别为芯片,而不是以大容量存储设备。
可能大家都注意到了,把芯片插上电脑,debug LED(也就是那个绿色的小LED)一直亮着。
这是因为芯片的openSDA接口没有被正确配置,也就是说端口不知道你要用openSDA还是别的什么协议来通信
附件里有一个后缀名比较奇怪的文件CMSIS-DAP.S19
CMSIS-DAP.rar (10.71 KB)
(下载次数: 31, 2015-1-22 14:11 上传)
(好像是Motorola的什么格式文件,我猜是某种通信协议吧)。长按复位键连上芯片进入debug模式,将这个文件复制进去,然后拔掉重新插上,这时候在我的电脑就看不见openSDA虚拟出来的那段空间了。而且debug LED处于湮灭状态,说明板子已经准备好和pc通信了。
这一步必须做,否则后面会出现一些错误,我后面讲到debug的时候会讲。


最后就是安装keil了。因为我电脑里装了用于编译c51的keil4,所以我不敢升级到keil5怕搞坏了,后来才意识到这种考虑是多余的,因为安装MDK的时候会自动把编译器给升级了。不过4.72版确实好用,我再也不想用4.12了。
下载链接见群主大大的网盘:
htt删p://pa掉n.b中aidu.c文om/s/1eQCeToQ#path=%252FKeil。
破解自行百度或者去群里下,群共享的第一个文件就是。
破解有一个很明显的好处,每次调试的时候不会跳出提示框,告诉你是测试版,只能运行小于32k的代码。


安装完了keil后,就可以建立第一个程序了。我们可以按照群主大大的这个帖子来操作:
https://bbs.elecfans.com/jishu_464502_1_1.html
当然可以更简单一些,也不需要建立子文件夹,不需要改include路径了。也就是参@初代饭影 大大的这个帖子里的视频:
https://bbs.elecfans.com/jishu_465108_1_1.html,建立一个简单的工程并且编译(源码:
红灯闪烁的源代码.rar (391 Bytes)
(下载次数: 21, 2015-1-13 03:26 上传)
)。但是做完上面几步,这个简单的工程还是无法被编译,错误提示(不要在意工程名……):

要理解这个问题可以参见这篇文章:h删ttp://blog.s掉ina.c中om.c文n/s/blog_4d1854230101a0q0.html
我粘贴过来:
Undefined symbol SystemInit,翻译过来就是SystemInit 这个符号没有定义,随后的小括号告诉你了,是在 startup_STM32f0xx.o 这个文件里面被提及的。在STM32库函数中,void SystemInit(void)主要用于初始化系统时钟。在system_stm32f10x.c这个文件中。
要解决这个错误,有三种方法:
1)在外部(其他任何.c文件里面)定义SystemInit这个函数(哪怕是空的也行),比如在main函数前加上这段代码就行了
  1. void SystemInit(void){
  2. }

2)在工程目录下,用记事本打开startup_MKL25Z4.s找到
  1. IMPORT  SystemInit              
  2.                  LDR     R0, =SystemInit
  3.                  BLX     R0
     把这三句话注释掉。(不推荐)
3)在库中的例找到system_stm32f10x.c文件,然后添加进工程里

按@初代饭影  大大的视频教程创建了第一个工程,编译成功后,这时候该往板上下载程序了。需要进行的设置是,点击target option(或者按Alt+F7),选择debug,

选择右侧的use ULINK PRO Cortex Debugger,并且在下拉菜单中选择CMSIS-DAP Debugger

单击settings,应该显示为

如果右边的设备框内没有设备,那就要检查连线是否正确,和上面提到的配置openSDA是否正确。
如果还不看不到设备,重启试试。
开个玩笑,把keil重启一下应该就好了。
选择两次OK,点击target option左边的load,这样程序就被正确地下载到板子上了。
debug LED(绿灯)亮了一会儿,板上的三色LED会开始周期性地闪着红光了。
如果之前没有配置openSDA口或者debug设置错误,直接下载的话会出现错误:





如果这个简单的小程序没法满足你,可以去keil的安装目录KeilARMBoardsFreescaleFRDM-KL25ZBlinky文件夹找一个例子来试试。
双击Blinky.uvproj,点击Built,在target左边的下拉菜单里选择CMSIS-DAP-MTB Flash。然后Load,完成,LED开始以三种颜色闪烁了。


恭喜你,你已拿到了first blood(大误)。






回帖(10)

eggeggice

2015-1-12 17:35:50
先测试一下发帖,等会补上内容
举报

eggeggice

2015-1-12 17:43:15
本帖最后由 eggeggice 于 2015-1-12 19:29 编辑

原来只是不能发外链,还好。。。今天就当熟悉一下论坛发帖环境好了。。。
举报

vvg

2015-1-12 22:47:41
引用: eggeggice 发表于 2015-1-12 17:43
原来只是不能发外链,还好。。。今天就当熟悉一下论坛发帖环境好了。。。
...

主要是级别低了,不能发外链,努力发帖升级
举报

eggeggice

2015-1-12 23:28:34
引用: A670521546 发表于 2015-1-12 22:47
主要是级别低了,不能发外链,努力发帖升级

恩,好的,我会加油。。。
举报

eggeggice

2015-1-13 03:28:19
终于被我水到了技术员,真是泪牛满面~~~~
举报

魏昌华

2015-2-5 10:45:52
感觉过程还是挺多听复杂的,LZ真是细心啊
举报

alphaplayer

2015-2-12 18:35:17
好东西,谢谢分享,从零开始
举报

skyvs111

2015-2-13 09:07:47
谢谢分享 。。。。。
举报

xue46525445

2016-5-16 16:21:41
很好很好,学习了!!!!!!!
举报

hung-yu

2016-6-4 12:17:21
学习,谢谢分享! 谢谢!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分