在线时间84 小时
UID362878
注册时间2012-6-2
NXP金币0
该用户从未签到
高级会员
- 积分
- 886
- 最后登录
- 2023-7-19
|
本帖最后由 yandld-362878 于 2014-9-9 17:03 编辑
2014.9.10日更新。
超核KL和K固件库已经整合,大家请到这个帖子上:https://www.nxpic.org.cn/module/forum/thread-556162-1-1.html
2014.7.23日更新
最新的代码已经集成到 CH-K-Lib中(这个压缩包包含了 K,KL,KV系列的驱动库,并且提供给几乎统一的API接口)
地址也又github迁移到 oschina上
论坛: www.beyondcore.net
打包下载: http://git.oschina.net/yandld/CH-K-Lib/repository/archive?ref=master
在线手册:http://git.oschina.net/yandld/CH-K-Lib/wikis/home
代码在线浏览:http://git.oschina.net/yandld/CH-K-Lib
视频教程(K60的,但是对于KL25一样有价值,大同小异):
https://www.moore8.com/courses/87#/course/87
2014.2.14 日更新
一直以来精力全部放到K60固件库的设计上,公司的事情也很多,所以KL25得固件库一直瘫痪状态。真是对不起大家。
感谢网友 偏爱番茄酱 的大力支持。 为固件库提出了很多宝贵意见,并且帮助我完善修复了很多固件库已经存在的不足
这次更新的主要内容:
- 完善了几乎所有模块的注释,大家使用起来更方便
- 添加了TPM模块 产生PWM波
- 添加MMA845X模块,加速度传感器,满足 智能车制作需要。
下载地址:
从我们的论坛上下载,得到支持 : www.beyondcore.net
或者从Github代码托管下载 :
http://github.com/yandld/CH-KL-Lib/archive/master.zip
2013.11.04 日更新
继续调整工程结构,和K60固件库兼容
从我们的论坛上下载,得到支持 : www.beyondcore.net
或者从Github代码托管下载 :
http://github.com/yandld/CH-KL-Lib/archive/master.zip
最新的代码请从GitHub上下载,附件中的是旧版本,不再更新
2013.9.28日更新
继续调整工程结构,和K60固件库兼容
-增加Wdog构件 注意:KL的WDOG(COP)是只能配置一次的,所以在CMSIS的SystemInit函数里写入了,后面再次配置就无效了。
-调整MDK和IAR默认调试工具是JLINK
-删除编译产生的中间文件。
2013.9.3日更新
调整工程结构和一些文件命名规则。支持2种IDE:IAR 和 KEIL
2013.8.27日更新
更新为V0.2 Beta 版本
完善了 UART构件 支持UART Polling 和 中断的 发送和接受
增加ADC PIT构件
增加硬件测试驱动 SPIFLASH,并配合相关测试程序
使用Mdk4.71版本打开PRJ下的Templete.uvproj即可,MDK可在这里下载
https://pan.baidu.com/share/home?uk=2870907047
原帖
2个礼拜在FSL苏州实习,全做KL了。索性整理下,做成和我们K60兼容的KL系列固件库。送给大家了
固件库基本沿袭了我们的K60固件库模式:
比如像让一个GPIO输出高低电平:
GPIO_InitTypeDef GPIO_InitStruct1; //先定义一个GPIO初始化结构体
GPIO_InitStruct1.GPIO_Pin = GPIO_Pin_15;
GPIO_InitStruct1.GPIO_InitState = Bit_RESET; //设为输出是 输出低电平
GPIO_InitStruct1.GPIO_IRQMode = GPIO_IT_DISABLE; //禁止引脚外部中断
GPIO_InitStruct1.GPIO_Mode = GPIO_Mode_OPP; //推挽输出
GPIO_InitStruct1.GPIOx = PTA;
GPIO_Init(&GPIO_InitStruct1);
这样。PA15就输出低电平了,其他模块都是类似的方法,先定义XXXX_InitTypeDef 然后赋参数,然后XXXX_Init(&XXXX_InitTypeStruct1); 调用
怎么样,是不是和STM32固件库神似呀 哈哈! 玩过STM32的上手没难度。
编译环境 MDK4.53
下载调试 JlinkV8
硬件:自己做的KL核心板
固件库里目前包含了:
sys: 启动配置,超频 ,等等
uart:串口操作
gpio: 通用IO操作
dmaMA控制器操作(比K60简单而且好用)
i2C:I2C接口,通过MAG3110验证并且成功
spi: SPI接口
所有构件我自己都亲自验证过,运行没问题~
这个固件库 理论上也支持其他KL系列(只要外设模块的IP不换)但是FSL偏偏喜欢重口味
同一个系列的外设IP都不一样,比如KL25的SPI和KL46的SPI就不同。所以。。。
时间紧迫,先说到这,有啥问题欢迎大家跟帖留言。附件是我的工程模板,使用Keil打开PRJ下的 templete.uvproj即可。
我的库是按垮IDE方法写的,移植到IAR,或者CW上基本不需要改动任何地方。
学写驱动 学芯片,第一要忠于英文原版,如果您真的害怕英文,建议还是改行,这个行业真的不适合你
第二,不要到处海量搜集资料,RM是最好的参考,我写驱动的时候就只用RM一个手册,其他不看,效果很好
这个问题我目前没有仔细研究过,但是写驱动的时候碰到了,我的解决方法是,在J-flash Commander命令行中输入 unlock Kinetis
然后就解锁了。
1.固件库源代码
|
|