三天入门 Cortex-M4
—Kinetis 系列
野火 Kinetics 开发板教程
最适合初学者入门 Kinetis 的教程
2012
作者:野火
野火嵌入式开发工作室
2012-3-14
freescale
三天入门 Cortex-M4——Kinetis 系列 野火嵌入式开发工作室
野火嵌入式开发工作室
~ 1 ~
火
野火 Kinetis 交流群:221295814 (欢迎所有 Kinetis 爱好者加入)
野火 Kinetics 开发板教程
前言
随着技术的发展,单片机型号越来越繁多,入门的难度也逐渐加多,学习周期自
然不断延长。为了让初学者快速入门,减少学习时间,尤其是为了那些参加智能车比
赛而没时间学习深入研究 Kinetis 单片机朋友,我们特意写了 Kinetis 开发板的教程。
力求大大减少初学者的学习时间。
野火 Kinetis 开发教程,主要有 IAR 的使用教程、Kinetis 启动流程讲解、野火
K60 库的调用 三个部分组成。我们不再详细讲解寄存器,而且推荐你们直接调用我
们的函数库。野火 K60 函数库,函数内部会自动计算频率,设置分频,直接调用,减
少你们的后顾之忧,可以加快你们的开发速度。
目前,单片机型号如此之多,而产品的开发所允许给我们的时间越来越少,我们
完全没有必要深入研究寄存器设置,就算你能把寄存器背得滚瓜烂熟,过段时间不去
接触,还是没法记住的。
现在的单片机开发,工程师往往都是利用官方的固件库来进行开发,而不再是靠
自己重新建立自己的函数库进行开发。例如 ST 公司推出的 ST 库,让你可以完全不需
要考虑底层开发而直接开发自己的产品。飞思卡尔公司,在这方便确实让人感到失望,
这也是野火嵌入式工作室要建立自己的野火 Kinetis 库的原因。
野火 K60 库的函数接口,尽量追求简洁明了、通俗易懂,力求初学者见其名就会
用。目前提供了 21 个入门实验:野火 Kinetis 核心板实验例程 ,包含了目前智能车比
赛最常用的几个模块。
想快速上手 K60 单片机吗?野火 Kinetis K60 库,是你最好的选择!!!
我们的口号是:三天入门 Kinetis!
三天入门 Cortex-M4——Kinetis 系列 野火嵌入式开发工作室
野火嵌入式开发工作室
~ 2 ~
火
野火 Kinetis 交流群:221295814 (欢迎所有 Kinetis 爱好者加入)
我们喊出这样的口号并不是吹的,已经有两位大三参加智能车的朋友(同一个队)
在使用我们的教程与 k60 库三天时间内就能把 xs128 上的摄像头 0v7725 驱动程序和
舵机控制程序移植到 Kinetis 上跑起来;一位大二的师弟,不到一天的时间就从入门
到搞定摄像头 ov7725 和液晶 LCD 的移植„„你会是下一位吗?
只要我们敢拼,一切皆有可能!!!
Nothing is impossible
!!!
由于个人能力及时间所限,出错之处,在所难免,欢迎各位指出错误及提出建议:
minimcu@foxmail.com
——野火嵌入式开发工作室
联系我们
Technical support
三天入门 Cortex-M4——Kinetis 系列 野火嵌入式开发工作室
野火嵌入式开发工作室
~ 3 ~
火
野火 Kinetis 交流群:221295814 (欢迎所有 Kinetis 爱好者加入)
目录
野火 Kinetics 开发板教程 .......................................................................................................................1
前言 ........................................................................................................................................................ 1
目录 ........................................................................................................................................................ 3
Kinetis 的启动分析(初学者大概浏览一下即可) ................................................................................. 5
初步入门:初始化函数启动执行顺序 .........................................................................................................................................5
逐步提高:ROM、RAM 启动工作原理、ICF 文件讲解..........................................................................................................7
IAR 的使用 ............................................................................................................................................ 17
安装 IAR ............................................................................................................................................................................................ 17
建立 IAR 工程 .................................................................................................................................................................................. 29
创建工程文件 ............................................................................................................................................................................ 29
添加 GPIO 驱动和点亮 LED ................................................................................................................................................... 42
IAR 工程选项设置 .................................................................................................................................................................... 45
快速建 IAR 工程.............................................................................................................................................................................. 64
IAR 使用教程 ................................................................................................................................................................................... 66
工具栏功能介绍 ........................................................................................................................................................................ 67
通过 jlink 下载并调试 ............................................................................................................................................................. 69
使用软件仿真调试 ................................................................................................................................................................... 73
IAR 界面风格设计 .................................................................................................................................................................... 76
野火 Kinetis 核心板实验例程列表 ........................................................................................................ 78
野火 K60 库的使用 ............................................................................................................................... 79
前言 .................................................................................................................................................................................................... 79
快速开发指南................................................................................................................................................................................... 80
快速入门:了解野火 Kinetis 工程 ...................................................................................................................................... 80
中断函数的编写方法 ............................................................................................................................................................... 86
重要变量、函数、宏定义一览表......................................................................................................................................... 89
安全检查 ..................................................................................................................................................................................... 92
GPIO 模块.......................................................................................................................................................................................... 96
快速入门:GPIO 库使用方法................................................................................................................................................ 96
GPIO 测试例程 ........................................................................................................................................................................105
LED 模块 .........................................................................................................................................................................................110
快速入门:LED 库使用方法 ...............................................................................................................................................110
LED 综合测试例程 .................................................................................................................................................................113
EXTI 外部 GPIO 中断例程 ..........................................................................................................................................................115
三天入门 Cortex-M4——Kinetis 系列 野火嵌入式开发工作室
野火嵌入式开发工作室
~ 4 ~
火
野火 Kinetis 交流群:221295814 (欢迎所有 Kinetis 爱好者加入)
快速入门:EXTI 库使用方法 ..............................................................................................................................................115
EXTI 综合测试例程................................................................................................................................................................116
UART 模块 ......................................................................................................................................................................................119
快速入门:UART 库使用方法 ............................................................................................................................................119
UART 综合测试例程 ..............................................................................................................................................................124
ADC 模块 .........................................................................................................................................................................................130
快速入门:ADC 库使用方法 ...............................................................................................................................................130
ADC 综合测试例程.................................................................................................................................................................134
FTM PWM 模块..............................................................................................................................................................................136
快速入门:PWM 库使用方法 .............................................................................................................................................136
PWM 综合测试例程...............................................................................................................................................................139
FTM 输入捕捉 模块 ......................................................................................................................................................................141
快速入门:FTM 输入捕捉库使用方法 .............................................................................................................................141
FTM 输入捕捉中断测试........................................................................................................................................................143
PIT 定时中断模块.........................................................................................................................................................................145
快速入门:PIT 定时中断库使用方法...............................................................................................................................145
PIT 定时中断测试例程..........................................................................................................................................................147
PWM、输入捕捉、PIT 中断综合测试....................................................................................................................................149
I2C 模块 ...........................................................................................................................................................................................152
快速入门:I2C 通信库使用方法 ........................................................................................................................................152
I2C 通信实验测试...................................................................................................................................................................153
lptmr 低功耗定时器模块............................................................................................................................................................156
快速入门:lptmr 低功耗定时器库使用方法..................................................................................................................156
lptmr 低功耗定时器测试例程 ............................................................................................................................................158
MCG 模块超频 ...............................................................................................................................................................................163
快速入门:MCG 库使用方法 ..............................................................................................................................................163
快速入门:配置频率 .............................................................................................................................................................168
uC/OS ...............................................................................................................................................................................................172