本帖最后由 wanglichao 于 2013-9-22 22:50 编辑
版本更新!!!(2013年8月20日)
相信很多智能车车友 都知道我们超核了。这次继续凭着不装南墙不回头的决心,死心继续研究K60 。终于发布V2.40版本!
固件库是我在V2.3 版本上继续升级改造完成的。从K60固件库V1.0发展到现在。已经经历了整整1年半。跨越了3届智能车比赛. 在无数智能车车友的支持下一路走到了V2.4版本。
当初那个一腔热血痴迷智能车的小孩子也渐渐成长成成为了一名飞思卡尔应用工程师实习生。
我相信这是库是目前网上 最全最好用最简单的固件库及底层驱动。
首先要说明的是: 本次本版和之前版本 区别很大!全面的改进升级!
V2.3版本固件库及开发板链接:http://www.freescaleic.org/bbs/article_891_543893.html
V2.4固件库飞思卡尔社区链接:http://www.freescaleic.org/bbs/article_891_556162.html
本次固件库特点与之前版本的主要区别:
特点一 包含的驱动模块:
1 模拟: ADC DAC
2 FTM 灵活定时器(产生PWM,定时中断,或者脉冲捕获及 正交解码)
3 TSI 触摸感应按键
4 通讯接口模块 UART SPI I2C UART CAN SD(最后的封装形式类似STM32固件库)
5 PIT 周期性定时器 最简单的定时器 用于产生周期性中断
6 RTC 实时时钟
7 DMA 最好用的DMA构件 支持所有通讯外设
8SD SDIO构件 目前只支持SD卡
9 WDOG看门狗
10 GPIO 这么没有还怎么玩!。。。封装形式类似STM32
11 LPTM:可产生定时中断 在智能车比赛里通常用作 编码器计数
12 FLASH 内部FLASH操作函数
固件的软件模块有
13 SYS(倍频 NVIC配置 等)
14 DELAY(使用M4内核SysTick做成的精准延时模块,从此不必for延时~)
特点二规范了所有外设的模块接口函数,命名方式和初始化方式类似STM32固件库
1. 比如想让一个GPIO输出高低电平
这样PTC16就输出高电平了,其他模块都是类似的方法,先定义XXXX_InitTypeDef然后赋参数,然后XXXX_Init(&XXXX_InitTypeStruct1); 调用
怎么样,是不是和STM32固件库神似呀 哈哈! 玩过STM32的上手没难度。
2 再比如 想让一个串口初始化,就更简单了:
其中 UART4_RX_E24_TX_E25 是预先定义好的宏,省去了Pinmux配置,这些宏在uart.h中定义
随便挑选哪个都可以。
然后调用
这样就把一个字符‘A’ 发送出去了,其他啥都不用管了呵呵
是不是比STM32的固件库 更简单呀 哈哈
还有,固件库中弱化了 系统时钟的体现,不必考虑系统的时钟是多少,每个外设都是由什么时钟驱动的。多少分频。这些都不需要管,固件库已经帮你做好了。比如你使用SYS构件的SystemClockUpdate修改主频。然后再调用一次串口初始化、串口波特率只要输入的还是115200.那最后肯定还是115200的波特率。时钟在构件中已经被重新计算过了
3 再说一个困扰做智能车小朋友很久的问题,倍频问题:
使用固件库,只需要调用
这样,就完成了PLL倍频,其中ClockSource_EX50M和 CoreClock_100M 都是可以选择的宏,具体见参考手册。
4调智能车的重头戏:PWM产生
PWM可以去驱动电机和 舵机无论在智能车的哪个组,PWM波产生都是必不可少的。
使用超核V2.4库,产生PWM波 代码如下:
其中 FTM0_CH0_PC1也是预先定义好的宏,如下可选:
想改变PWM的占空比,只需调用
这样就从初始化的40%占空比 变成了60%占空比
特点三 Keil IAR CW全支持。分别提供3套IDE下的固件库模板。代码完美移植,调用方式完全一样。
另外有我们自己编写的中文手册:为每个函数增加了详细的说明和调用实例。方便易学。。并且。。全中文。 在Keil下使用 V2.40固件
在IAR下使用 V2.40固件
最后,超核V2.40固件库资料下载:
整体打包下载
http://pan.baidu.com/share/home?uk=2870907047
分类下载
1. 中文入门手册: 超核K60固件库使用说明(V2.40).pdf
2 Keil 下的固件库模板:Keil模板V2.40.zip
3 IAR 下的固件库模板:IAR模板V2.40.zip
4 CW 下的固件库模板CW10.4 V2.40.zip
5 硬件资源: V2.40版本配合的硬件。超核原子核 核心板 支持串口下载。
超核KinetiBootloaderV1.1.zip
原子核 核心板例程资料(基于V2.40固件库,可以看做是V2.40固件库的所有外设配套例程,一共25个)
原子核例程下载:(也可以作为V2.40版本固件库的例程)
JLINK版本: 原子核_程序源码(JLINK版本V1.0).7z.zip
Bootloader版本可执行文件: 原子核_程序源码(Bootlaoder可运行HEX文件V1.0).zip
入门视频:(硬件结合 原子核 核心板 入门)
入门视频教程1:
http://v.youku.com/v_show/id_XNTk4NzM3MDY0.html?f=19297897
入门视频教程2:
http://v.youku.com/v_show/id_XNTk4NzI5NzA0.html?f=19297897
入门视频教程3:
http://v.youku.com/v_show/id_XNTk4NzM2OTY0.html?f=19297897
入门视频教程4:
http://v.youku.com/v_show/id_XNTk4NjgxNDUy.html?f=19297897
入门视频教程5
http://v.youku.com/v_show/id_XNTk4NzM2NjA4.html?f=19297897
另外我们也提供整体打包下载,地址不变:
http://pan.baidu.com/share/home?uk=2870907047
固件库会不定期 在网盘上更新,建议大家收藏网盘地址,有事没事就来Check update 吧~
最后,谢谢大家的支持,我们会继续努力的!
以下为2013年4月开源的V2.3版本
继上次开源的核心板资料之后,继续搞了一个k60开发板,在Kinetis上不撞南墙不回头。 经过2月奋战,终于算有了点结果。。。。我基本把 Kinetis大部分的外设驱动搞出来了。这次也算是给我单片机生涯画一个句号了。往后准备硕士毕业论文。。该进入万恶的学术界了。。 这个开发板算是个总结吧。
我的例程基本是仿照正点原子 STM32的风格,不过有所改进, 加入了gpio构件,这样操作IO口就不用再去配置寄存器了。另外延时部分的DelayMs也支持10S以上。但是有0.1%的误差。
这次在V2.21的基础上全面进化。。。。
应广大车友要求 sys增加 支持 50M有源晶振 8M外部晶振 和 内部晶振
增加USB 支持 并且配有 USB鼠标 USB键盘 自定义USB设备 USB转串口例程
增加以太网支持 移植uIP TCP/IP协议栈 配有嵌入式Webserver 例程。
另外例程分成 2个版本,JLINK版本和 串口下载的 Bootloader 版本。 先上几张图片在上传例程吧。
K60开发板上运行UCOS 应用示例 以太网
Bootloader下载软件
例程截图
由于资料完成比较仓促,难免会有不少错误和遗漏之处,希望大家能够批评指正。
开发板使用入门视频
所有源码均经过测试。源码放到下面提供下载
标准源码
Bootloader版源码
开发板原理图
kinetis摄像头程序
用kinetis做智能车的摄像头组可以参考下面的摄像头程序,都是基于我的kinetis底层开发的
大家有什么问题可以随时咨询我,资料下载有问题也可以找我,我提供打包下载地址,我的联系方式:QQ1453363089,也可以加技术交流群247160311。欢迎大家相互学习交流。
补充内容 (2013-12-8 19:58):
最新版本的帖子 视频 资料:http://bbs.tekbots.eefocus.com/thread-202246-1-1.html
补充内容 (2014-2-20 13:05):
所有资料,已经更新。链接: http://www.znczz.com/thread-202246-1-1.html |