「原创」FRDM-K64F开发板测试(一)
本人希望有一块FRDM-K64F开发板,但苦于囊中羞涩,只能看着你们玩。幸运的是EEWORLD论坛有了借用开发板的业务,终于得此机会能借来试用一番,也算得偿所愿。在此,非常感谢我们的女神管理员@okhxyyo,在我申请后第一时间给予回应和帮助,是我顺利借到了这块开发板,也想参与开发板借用的朋友,请点击这个链接了解http://bbs.eeworld.com.cn/thread-511067-1-1.html
先传两张靓照,如果我没看错它就是A版的K64F,也是今天的主角了。
哈哈,飞思卡尔的包装和ST,TI都具有鲜明的特色
上图已说明板载的资源,这个图文档里有,有需要请下载附件。
1.我选择了MDK5作为开发环境,需要在Keil的官网去下载芯片对应的支持:
2.然后在飞思卡尔的官网下载SDK,这里有个地址:http://www.nxp.com/products/soft ... amp;lang_cd=zh-Hans,下载自己想要的资源以备参考,我下载的是基于MDK+FREERTOS的。
3.我喜欢把Jlink作为首选的调试工具,所以去segger官网下载了相应的文件JLink_OpenSDA_V2。按住开发板的RESET键,使用一根数据线将开发板链接电脑,然后释放RESET键,就可得到如下图所示的bootloader“I盘“,将JLink_OpenSDA_V2.bin文件放入该盘,重新上电这货就成为了JLINK。
剩下的工作就是用mdk5来进行程序的开发了:我们从驱动GPIO来点灯开始吧。
从原理图上看到,三个灯分别由B21,B22,E26来控制,具体情况见下图
//SIM模块配置,注意这两句是非常重要的,使用相应外设时要配置相应的位,不然无法对后面的配置进行正常操作。
SIM_SCGC5 |= (1 << SIM_SCGC5_PORTB_SHIFT);
SIM_SCGC5 |= (1 << SIM_SCGC5_PORTE_SHIFT);
//PB21作为GPIO使用
PORTB->PCR[21] &= ~PORT_PCR_MUX_MASK;
PORTB->PCR[21] |= PORT_PCR_MUX(1); //PTB21 is GPIO pin
PORTB->PCR[22] &= ~PORT_PCR_MUX_MASK;
PORTB->PCR[22] |= PORT_PCR_MUX(1); //PTB22 is GPIO pin
PORTE->PCR[26] &= ~PORT_PCR_MUX_MASK;
PORTE->PCR[26] |= PORT_PCR_MUX(1); //PTE26 is GPIO pin
/* Switch LEDs off and enable output*/
PTB->PDDR |= GPIO_PDDR_PDD(led_mask[1] | led_mask[0]);
PTE->PDDR |= GPIO_PDDR_PDD(led_mask[2]);
然后就是操作相应的位,参考结构体GPIO_Type。
PTB->PSOR置位输出1;
PTE->PCOR复位输出0;
PTE->PTOR翻转输出。
演示效果如下图:
PS:文章在讲解时难免疏漏了一些细节,比如某些驱动的安装,如果哪里存在错误的地方,请您批评指正,也请您多多指教。