完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
|
|
从零开始玩转FRDM-KL25Z
|
|
|
|
|
|
从零开始玩转FRDM-KL25Z
|
|
|
|
|
|
②新手上路
介绍到这里,童鞋们是不是等不及要跃跃欲试啊!那就让我们迈出FRDM-KL25Z开发板应用的第一步吧。 2.1 安装驱动 首次使用FRDM-KL25Z开发板时,需要安装P&E OpenSDA驱动,可通过www.pemicro.com/opensda链接下载。当驱动安装完成后,将SDA MINIUSB与PC机连接(如图4所示),查看设备管理器在端口处可以查看到OpenSDA串口,在磁盘驱动器中可以看见FSL/PEMICRO MSD USB Device磁盘,如图6所示,至此P&E驱动安装成功。 图5 FRDM-KL25Z开发板与PC机相连 图6 驱动安装成功示意图 |
|
|
|
|
|
2.2 OpenSDA使用 驱动安装完成后,就可使用OpenSDA接口进行板级调试。步骤如下: ⑴ OpenSDA的MSD引导模式 首先按住RST按键,接着使用SDA MINI USB方式进行上电,然后释放RST按键。当PC机将FRDM-KL25Z开发套件识别为一个Bootloader磁盘,如图7所示,即表示进入OpenSDA的MSD引导模式成功。打开磁盘会有如图8所示的内容,里面的内容都像TXT文件一样是可读的,关于文件内容的细节可参考OpenSDA User’s Guide。 图7 进入MSD引导模式 图8 磁盘内容 |
|
|
|
|
|
⑵大容量存储设备闪存编程接口(MSD Flash Programmer)
进入MSD引导模式后,可从飞思卡尔官网FRDM-KL25Z开发套件的链接地址处(www.freescale.com/FRDM-KL25Z)下载FRDM-KL25Z Quick Start Guide Package,接着将FRDM-KL25Z Quick Start Guide Package内的OpenSDA Applications文件夹中的 MSD-FRDM-KL25Z_Pemicro_v105.SDA(如图9所示)拷贝到Bootloader磁盘完成后,然后将SDA MINIUSB与PC机断电,下一步又重新将SDA MINIUSB与PC机连接,这时, PC机还会将FRDM-KL25Z开发套件识别为一个Bootloader磁盘,与进入MSD引导模式的效果一致。当打开Bootloader磁盘后,会发现多出两个文件,如图10所示,关于文件内容的细节可参考OpenSDA User’s Guide。下一步可将FRDM-KL25Z Quick Start Guide Package内的Precompiled Examples文件夹中的的应用程序(如图11所示)拷入Bootloader磁盘里即可完成MCU的程序烧写。比如讲blinky_blue.srec拷贝到Bootloader磁盘后,完成MCU程序烧写后,FRDM-KL25Z开发板如图12所示。 图9 MSD-FRDM-KL25Z_Pemicro_v105.SDA文件 图10 磁盘内容 [size=0.83em]Untitled.jpg (86.72 KB, 下载次数: 1) 下载附件 [color=rgb(153, 153, 153) !important]2013-6-11 10:59 上传 图11 FRDM-KL25Z已编译示例程序 |
|
|
|
|
|
③参考资料 对于初学者来说,参考资料齐全对于能否快速入门至关重要。所以针对FRDM-KL25Z开发套件,飞思卡尔在其官网上提供了种类齐全的下载资料(www.freescale.com/FRDM-KL25Z),使得初学者可以更快速的入门,同时也有助于有基础的工程师更好的完成设计任务。图13为FRDM-KL25Z开发套件的主界面,图14为FRDM-KL25Z开发套件相关资料的下载界面。对于初学者来说,可下载的以下文档:[1] FRDM-KL25Z Quick Start Package;[2] FRDM-KL25Z User’s Manual ;[3] FRDM-KL25Z Pinouts ;[4] FRDM-KL25Z Schematics ;[5] OpenSDA User’s Guide ,增加对FRDM-KL25Z开发板的硬件资源和OpenSDA接口的理解,为后面的学习打好基础。 图13 FRDM-KL25Z主界面 图14 FRDM-KL25Z资料下载界面 |
|
|
|
|
|
④ Hello world !
经过前面的学习后,童鞋们已经可以通过OpenSDA接口烧录程序啊,也对FRDM-KL25Z开发板有了初步的了解。但我相信这点成就,肯定不会让大家满足,只会让大家学习的热情更加饱满。前面烧录的程序都是已经编译好的Sample Code ,这次,我将带领编译并调试一个工程。 ㈠ CodeWarrior开发环境 CodeWarrior是Metrowerks公司研发的专门面向Freescale所有MCU与DSP嵌入式应用开发的软件工具,是Freescale向用户推荐的产品。CodeWarrior分为3 版本:特别版(Special Edition)、标准版、专业版。其中特别版是免费的,用于教学目的,对生成的代码量有一定的限制,而标准版与专业版没有限制。以前习惯使用IAR或Keil等IDE做开发的童鞋们不用担心,CodeWarrior很容易上手的。可通过下面网址链接(http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=CW-MCU10&fpsp=1&tab=Design_Tools_Tab)下载(网页如图15所示),目前最高版本为CodeWarrior 10.4,下载完成后安装过程中,要特别注意是,MCU选择项目栏中Kinetis的选项一定要选,MCU选择项目栏的选择可以多选,其它一路NEXT就OK。 图15 CodeWarrior下载界面 ⑵ Hello world工程编译及调试 CodeWarrior安装完成后,就可以编译及调试helloworld工程啊。 飞思卡尔在其官网上提供了基于CodeWarrior﹑IAR﹑Keil的FRDM-KL25Z开发板例子程序,以帮助初学者更快入门,下载界面同样是FRDM-KL25Z开发套件相关资料的下载界面,选择仿真与模型(如图16所示)即可下载。下载完成后,打开安装程序,一路NEXT就OK。 图16 FRDM-KL25Z开发板例子程序下载 下面介绍用CodeWarrior打开helloworld工程: i打开CodeWarrior(开始> 所有程序>Freescale CodeWarrior->CW for MCU v10.4->CodeWarrior) ii打开目录(..klxx-sc-pexprojectshelloworldcw): 1. 打开工程引导(如图17所示); 图17 打开Import |
|
|
|
|
|
2. 在工程引导中选择General中的Existing Projects into Workspace,然后点击Next 。(如图18所示)
图18 Import引导界面 3. 在下一层引导界面,选择“Select root directory:”选项,注意不要选中“Copy projects into workspace”,点击“Browse”,弹出浏览窗口(如图19所示) 图19工程选择界面 |
|
|
|
|
|
4. 在弹出浏览窗口中,根据自己例子程序的安装目录,选中..klxx-sc-pex-projectshelloworldcw,再点击“Finish”(如图20所示)
图20 选择helloworld界面 iii helloworld在CodeWarrior中打开后,在左边的工程栏中选中helloworld(如图21所示),单击 编译工程(选中helloworld工程,点击右键,选择“Build Project”)。 图21 选中helloworld工程 |
|
|
|
|
|
iv 接下来这一步就要对FRDM-KL25Z开发板进行Debug啊,在开始之前,还有一个准备工作要做,在2.2章节向童鞋们介绍了如何使用OpenSDA接口进行板级调试,使得我们可以不用IDE开发环境,就可直接将Precompiled Examples文件夹中的的应用程序拷入Bootloader磁盘里来完成MCU的程序烧写。而想通过IDE开发软件如CodeWarrior、IAR等对FRDM-KL25Z开发板进行Debug、程序烧录操作,就需要更换板级支持包,具体的操作方式与2.2章节介绍的很相似:1. 进入OpenSDA的MSD引导模式;2. 将FRDM-KL25Z Quick Start Guide Package内的OpenSDA Applications文件夹中的DEBUG-APP_Pemicro_v102.SDA(如图22所示)拷贝到Bootloader磁盘里;3. 接着将SDA MINIUSB与PC机断电,然后又重新上电即完成。只有第2步跟原来不同,其它都一样。(在重新上电后,Bootloader磁盘无显示,此时上位机会自动安装相应驱动,安装完毕后在PC的设备管理器中会出现如下的信息表明安装成功,如图23所示)
图22 DEBUG-APP_Pemicro_v102.SDA文件 图23 OpenSDA驱动安装完成 |
|
|
|
|
|
|
|
|
|
|
|
这时,打开串口调试工具(超级终端、串口调试助手等,本人使用的是串口猎人),匹配正确PC机分配给OpenSDA接口的串口号和串口通信设置,就会在串口工具窗口显示接受到的字符串,而且,童鞋们还可以利用调试工具向FRDM-KL25Z开发板发送字符串,字符串会被反馈到PC,可在调试工具窗口观察到(如图27所示),同时FRDM-KL25Z开发板的LED灯也会发生颜色变换,童鞋们可以自己调试来观察结果。(需说明的helloworld工程中UART的串口通信波特率设置为115200 bps,传输数据帧格式为8位数据,1位停止位,无奇偶校验位)
图27 串口猎人界面 |
|
|
|
|
|
为了让童鞋们对上述的操作,有更清楚的认识,特地将helloworld工程在CodeWarrior中编译并调试的过程,从头到尾演示了一遍,并录制成视频供大家参考。(http://v.youku.com/v_show/id_XNTcyMDE3MDk2.html)
|
|
|
|
|
|
⑤程序,你主张
(一)预备知识 在上一章节中打开的helloworld工程是基于PE(Processor Expert)生成的。那么什么是PE呢?PE是CodeWarrior自带的一款插件,是面向飞思卡尔微处理器的快速应用开发工具,允许真正的自上而下的应用设计方式,设计者可以直接定义应用的行为,而不是整天耗费在芯片的学习上。怎么理解呢?童鞋们可以按这样的思路理解:以前,童鞋们使用MCU做嵌入式开发时,如果要使用MCU内部的模块,需要配置Datasheet里列出的与模块相关的寄存器,这样不但编程开发的工作量大,寄存器配置也容易出错,而且需要开发者对MCU的内部模块要有一定的了解。使用PE工具开发时,开发者可按自己需要选择要使用的模块,然后在可视化界面上定义模块的行为,定义完成后,PE会自动生成开发者所期望的模块函数,开发者只需调用模块函数就可以啊,就像搭积木一样,PE提供各种形状的积木,如何用这些积木搭建自己的应用,是开发者需要关心的地方,所以PE很适合对MCU了解不多的初学者使用。在本章中,除了教大家如何将helloworld工程修改成闪烁灯工程,PE的模块组件的添加﹑组件配置﹑代码生成及编写等操作。 (二)helloworld工程介绍 在CodeWarrior中导入helloworld工程后,在CodeWarrior的左上角选中helloworld,展开工程目录,点击,会在模块组件栏中显示工程内的组件(如图28所示)。 图28 helloworld工程和模块组件目录 在模块组件目录中,选中Blue_LED组件,会在Component Inspector的Properties中列出组件的配置参数,童鞋们可参考FRDM-KL25Z开发板的电路原理图(如图29所示)列出RGB LED的引脚分布(如图30所示),并比较在Properties中的参数配置(如图31所示)。在Blue_LED组件中I/O引脚配置为PD1,方向为输出,输出低电平可点亮LED,高电平则熄灭。Red_LED、Green_LED组件与Blue_LED组件的组件参数配置相似。 图29 RGB LED原理图 图30 RGB LED引脚对应关系 |
|
|
|
|
|
从零开始玩转FRDM-KL25Z(有演示视频)
|
|
|
|
|
|
从零开始玩转FRDM-KL25Z(有演示视频)
|
|
|
|
|
|
(三)延时函数—Delay()
在原函数中,MCU只有在接收到字符后,才会更改LED颜色,如若将原函数修改成闪烁灯程序,需要添加延时函数—Delay(),下面向童鞋们介绍如何运用LPTMR(低功耗定时器)组件生成Delay()函数。关于LPTMR模块的具体介绍,大家可参考KL25的Datasheet或者观看论坛里的LPTMR模块介绍视频(http://www.freescaleic.org/bbs/article_1282_545321.html),在这就不作具体介绍啊。 工程代码修改过程如下: i 添加组件:在开发环境界面的Components Library对话框选择Alphabetical选项卡,找到名为Inti_LPTMR的组件双击(如图34所示),即可将Inti_LPTMR组件添加到工程中,同时在Components对话框中也会出现Init_LPTMR组件。 图34 添加LPTMR组件 ii 配置组件:在添加完组件后,在Components对话框中单击LPTMR组件,会在开发环境的Component Inspector窗口打开其配置界面,在Clock Setting中,选择Clock select的值为Internal 1kHz LPO,Prescaler value/Glitch filter的值为Prescaler/2; Glitch filter not supported,Prescaler bypass的值为Not Bypassed,Timer mode的值为Timer Counter。整个配置如图35所示。 图35 配置LPTMR组件 iii 生成并编写代码 配置完组件后还不能真正运行此工程,PE所做的工作仅仅是生成用户所期望的模块函数并设置其参数,真正在哪里调用这些函数还需要开发者自己编写。 首先需要生成已配置的组件的代码,在Components对话框中选中LPTMR组件,单击 便可生成代码(如图36所示)。 |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
1906个成员聚集在这个小组
加入小组我的项目我做主,使用GN+Ninja来完成构建系统(VSCode开发RT106X)
36358 浏览 0 评论
NXP IMX8应用处理器快速入门必备:技巧、使用、设计指南
4393 浏览 0 评论
6047 浏览 1 评论
6762 浏览 0 评论
NXP i.MX6UL开发板(linux系统烧录+规格+硬件+模块移植)使用手册
4210 浏览 0 评论
619浏览 2评论
求助,S32G上Core M启动后如何让Core A在Flash指定位置加载uboot?
614浏览 2评论
ESP32-WROVER-IE + LAN8720以太网,GPIO0电压只有1.6v,无法正常进入spi flash boot模式如何解决?
605浏览 2评论
求分享适用于PN7160 Android的NFC工厂测试应用程序
694浏览 2评论
796浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-21 21:09 , Processed in 1.376250 second(s), Total 108, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号