打印
[Kinetis]

【kinetis实验】+Freescale K/L系列开发套件

[复制链接]
楼主: 偏爱番茄酱
手机看帖
扫描二维码
随时随地手机跟帖
21
偏爱番茄酱|  楼主 | 2014-9-2 09:36 | 只看该作者 回帖奖励 |倒序浏览
相关资料

Freescale+Kinetis+Dev+Suit+UG.pdf

3.39 MB

使用特权

评论回复
22
偏爱番茄酱|  楼主 | 2014-9-2 09:37 | 只看该作者
K20数据手册

MK20D_datasheet.pdf

1.85 MB

使用特权

评论回复
23
偏爱番茄酱|  楼主 | 2014-9-2 09:48 | 只看该作者
以上是我从飞思卡尔官网、万利电子下载到的最新的开发板开发资料,如果大家还有什么问题,欢迎大家提出来解决。kinetis 开发套件讨论群  322230423

使用特权

评论回复
24
偏爱番茄酱|  楼主 | 2014-9-5 08:53 | 只看该作者
评测正式开始,

使用特权

评论回复
25
偏爱番茄酱|  楼主 | 2014-9-5 11:28 | 只看该作者
硬件准备;pc\+Freescale K20开发套件+J-Link
软件准备:MDK4.72A+WIN7(64位)

使用特权

评论回复
26
偏爱番茄酱|  楼主 | 2014-9-5 12:45 | 只看该作者
J-Link正常工作

J-Link工作正常.jpg (60.38 KB )

J-Link工作正常.jpg

使用特权

评论回复
27
偏爱番茄酱|  楼主 | 2014-9-6 16:19 | 只看该作者
本次21IC送出的kinetisK20开发套件,是由两块板子组成。上面板子为MxDOCK,
MxDock模块外设
    2-RS232/CAN/I2S
   I2C E2PROM/SPI Flash/SPI LCD
   USB Host/USB OTG
   TF Card
   4-Key/4-LED/Joystick
   6-Touch
   Beep/Speak
   Single-ended/differential input
当然,这块板子也可以通过CN3/CN10与其他的KINETIS的K系列和L系列也是可以相连的。
下面的那块是MK20开发板,板载芯片为MK20DX256VLL7,100引脚封装的,同时还搭载一块2.8寸的彩屏。
你是不是感觉这块开发板,挺具有开发的诱惑力了呢?

7035b737jw1e7brkoji0aj20er0m8af6.jpg (180.1 KB )

7035b737jw1e7brkoji0aj20er0m8af6.jpg

使用特权

评论回复
28
偏爱番茄酱|  楼主 | 2014-9-6 16:23 | 只看该作者
鉴于很多可能没有J-LINK或是U-LINK,没关系,飞思卡尔很贴心,这次专门为广大开发者设计了板载仿真器,现在只需要你有一根方口的USB数据线,就可以轻轻松松的完成程序的编译、调试、下载、仿真了,哈哈。

使用特权

评论回复
29
偏爱番茄酱|  楼主 | 2014-9-6 16:41 | 只看该作者
我们硬件环境配置好以后,我们就开始下载程序了。亲们在下载程序的时候一定注意配置好相关选项,我们是选择的CMSIS-DAP DEBUGER,所以在编译软件中,要在DEBUG那里设置仿真器为CMSIS-DAP DEBUGER ,选SW调试哦。调试程序包括:GPIO输入、AD/DA 实验、串口实验、can总线实验、LCD实验,Flexbus驱动实验,PIT定时器中断、SD卡实验、TSI电容触摸实验、SPI触摸屏实验、RTC实时时钟实验、SPI外部FLASH实验等精彩的实验,下面我将上面的实验一一上传。

使用特权

评论回复
30
偏爱番茄酱|  楼主 | 2014-9-6 20:53 | 只看该作者
因为本人经历过两届智能车的锻炼,对飞思卡尔芯片再熟悉不过了,因为之前我们的车采用的是MK60,采用的超核MK60函数库,当然对stm32有过接触的伙计们,看到万利MK20函数库自然就不感觉陌生了,如果没接触过函数库,大家可以学习一下超核MK60函数库学习指导视频,当然Kinetis K系列的函数库都大同小异,大家自然就不会满头雾水了。最后附上超核论坛:Freescale Kinetis资源应有尽有。http://beyondcore.net/forum.php

使用特权

评论回复
31
偏爱番茄酱|  楼主 | 2014-9-6 21:16 | 只看该作者
第一个实验就是GPIO输入实验,下面是源程序

GPIO输入实验.zip

986.43 KB

使用特权

评论回复
32
偏爱番茄酱|  楼主 | 2014-9-7 10:06 | 只看该作者
下面的内容老鸟们可以直接无视了,老鸟对这个函数库的调用和理解应该都没啥问题,但是对于刚刚接万利库的小伙伴们相信还是有点帮助的。。。。
咱们首先从文件夹的结构说起:总共有三个文件夹和3个文件。

Application文件中放的是主函数main.c,这就是我们的主程序。
--drivers文件夹
drivers文件夹里放的都是底层的驱动文件,各个模块的头文件.h和.c文件都包含在里面。inc文件夹里放的是全部的头文件,src文件夹里放着对应的c文件,这些文件在后面的例程里面都会包含进去。后面各个模块的介绍就会看到对这些底层文件的调用了
--startup文件夹
这个里面是一些芯片的配置文件和启动文件,也没研究过,但是肯定是很重要的,一般也别去改动了

使用特权

评论回复
33
偏爱番茄酱|  楼主 | 2014-9-7 10:09 | 只看该作者
K20引脚众多,几乎每个引脚都有复用功能,芯片上电复位后,大多数引脚处于Disable状态,必须进行相关配置选择特定功能才可使用。由于K20绝大多数寄存器是32位的,所以直接读写寄存器很痛苦,道理很简单,要进行设置往往只有那么几位,其他无关位的值绝对不能修改的,这样就很麻烦,既要修改目标值,又要保持其他值不表。还好飞思卡尔公司发布的K20头文件—MK20DX256VLL.h中有大量的宏帮助开发人员完成这项繁琐的工作。举个例子说明一下,大家看这样一条语句
PORTC_PCR5=PORT_PCR_MUX(0x1); //PTC5的第1功能
使用鼠标右键的 go to definition 功能,一个一个搜索,首先是
PORTC_PCR5,可以看到:
#define PORTC_PCR5 PORT_PCR_REG(PORTC_BASE_PTR,5)
PORTC_PCR5 是一个宏,再次使用go to definition 功能,查看
PORT_PCR_REG,可以看到:
#define PORT_PCR_REG(base,index) ((base)->PCR[index])
这是一个带参数的宏,将参数替换可知PORTC_PCR5等同于:
PORTC_BASE_PTR->PCR[5],最终指向的是端口C(PORTC)第5引脚的
PCR 寄存器(PCR,PinControlRegister,引脚控制寄存器),这是一个
32 位的寄存器,负责选择引脚的复用功能。再看等号右侧的语句
PORT_PCR_MUX(0x1),这也是一个宏:
#define PORT_PCR_MUX(x)
(((uint32_t)(((uint32_t)(x))<<PORT_PCR_MUX_SHIFT))&PORT_PCR_MUX_MASK)
后面两个也是宏:
#define PORT_PCR_MUX_MASK 0x700u
#define PORT_PCR_MUX_SHIFT 8
将参数替换等效于(((uint32_t)(((uint32_t)(0x1))<<8))&0x700u)
其中0x700u中的u是unsigned的意思,和0x700等效,(uint32_t)
是强制类型转换,这样理顺一下,原先的语句就划归成这样:
PORTC_BASE_PTR->PCR[5]=
(((uint32_t)(((uint32_t)(0x1))<<8))&0x700u);
等号右侧的操作是这样的,先把0x1变成32位数据(因为寄存器是
32位的),左移8位之后再变成32位数据(此处是防止数据溢出的保
险措施), 最后和0x700 进行按位相与(按位与&和按位或|是实现单
独改写某位而不影响其他位的一种方法,至于为什么可以这样做 ,自
己算算吧!)。 这样一系列操作的结果就是把端口C第5引脚的PCR
寄存器的第8、9、10位改写成001,其他配置不变,大家注意看手
册:

PCR寄存器的8、9、10位就是负责设定引脚功能的MUX


从表中可以看到第1功能是PTC5,也就是最基本的输入输出功能。
希望大家用心体会上面讲的方法,灵活使用go to definition功能,
戒骄戒躁,一句一句用心研究。读硬件程序是一件枯燥又有趣的事情,
个中滋味深入其中才能有所体会。
言归正传,下面的讲解中将不会再对具体的语句进行解释,重点
将放在模块关键属性的设置上,希望大家举一反三,自己研读例程序,
分析思考,汲取养分。

QQ图片20140907101014.jpg (15.59 KB )

QQ图片20140907101014.jpg

QQ图片20140907101002.jpg (30.19 KB )

QQ图片20140907101002.jpg

QQ图片20140907100940.jpg (17.35 KB )

QQ图片20140907100940.jpg

使用特权

评论回复
34
slotg| | 2014-9-7 11:34 | 只看该作者
偏爱番茄酱 发表于 2014-9-6 16:23
鉴于很多可能没有J-LINK或是U-LINK,没关系,飞思卡尔很贴心,这次专门为广大开发者设计了板载仿真器,现在 ...

这个是跟 FRDM 板同样的使用方式吗?

使用特权

评论回复
35
偏爱番茄酱|  楼主 | 2014-9-7 13:18 | 只看该作者
slotg 发表于 2014-9-7 11:34
这个是跟 FRDM 板同样的使用方式吗?

FRDM板载OpenSDA调试器,MDK-ARM的工具列表中没有Pemicro OS Jtag(新版本可能已经包括),需要先到Keil网站下载kinetis驱动,然后安装好补丁文件。
而本套kinetis评估套件板载的调试器,选择的CMSIS-DAP DEBUGER,所以在编译软件中,要在DEBUG那里设置仿真器为CMSIS-DAP DEBUGER ,选SW调试。:$

使用特权

评论回复
36
偏爱番茄酱|  楼主 | 2014-9-7 13:20 | 只看该作者
如果大家对kinetis不是很熟悉的话,超核电子店主yandld倾力打造的 基于超核固件库版本的 飞思卡尔Kinetis 系列入门教程http://www.**.com/courses/145

使用特权

评论回复
37
ar_m_cu| | 2014-9-7 18:25 | 只看该作者
不错,很多资料

使用特权

评论回复
38
偏爱番茄酱|  楼主 | 2014-9-7 22:44 | 只看该作者
ar_m_cu 发表于 2014-9-7 18:25
不错,很多资料

相互学习,共同进步:$

使用特权

评论回复
39
偏爱番茄酱|  楼主 | 2014-9-8 17:26 | 只看该作者
开发套板的三种调试方法:https://bbs.21ic.com/icview-797718-1-1.html

使用特权

评论回复
40
偏爱番茄酱|  楼主 | 2014-9-8 20:53 | 只看该作者
飞思卡尔粉丝们中秋节快乐!

IMG_20140908_195217.jpg (968.81 KB )

IMG_20140908_195217.jpg

01200000001541114581011880127.jpg (341.79 KB )

01200000001541114581011880127.jpg

Happy Mid-autumn Day.zip

1.97 MB

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则