首页 > 评测 > 致我们逝去的飞思卡尔——FRDM-KL05Z评测
致我们逝去的飞思卡尔——FRDM-KL05Z评测
- [导读]
- NXP的FRDM-KL05Z开发套件的MCU使用ARM Cortex-M0+内核,板载外设除了常见的RGB灯外,还提供了MMA8451Q加速度传感器。简洁是它的风格,低价是它的目标,实用是它的内涵!
图11 查看OpenSDA版本
看到Application Version is:1.18,这是最新的固件版本了。从固件的修改日期看,最后修改日期是2015年12月4日,表明官方一直在维护着KL-05Z的相关代码,并没有弃之不顾!
这么老的板子,没想到mbed居然支持该硬件平台,可以在硬件平台上找到FRDM-KL05Z的板子信息,mbed上对FRDM-KL05Z板子的参数有详细的介绍,并给出快速入门指南,能共享其他开发者开发的教程。
图12 ARMmbed 平台介绍板子参数
将FRDM-KL05Z板子添加到自己的工程下,打开mbed 编译器后可以看到工程代码。
图13 ARMmbed web IDE编辑器
以下是具体代码,从宏定义可以看出,此套代码适应于KL25Z、KL46Z、KL05Z和K20D50M平台,兼容性做得相当不错。通过读取MMA8451三轴陀螺仪的数据,改变RGB灯的颜色,从而实现改变板子的角度灯的颜色随之改变的功能,并把数据通过串口打印出来。
#include "mbed.h" #include "MMA8451Q.h" #if defined (TARGET_KL25Z) || defined (TARGET_KL46Z) PinName const SDA = PTE25; PinName const SCL = PTE24; #elif defined (TARGET_KL05Z) PinName const SDA = PTB4; PinName const SCL = PTB3; #elif defined (TARGET_K20D50M) PinName const SDA = PTB1; PinName const SCL = PTB0; #else #error TARGET NOT DEFINED #endif #define MMA8451_I2C_ADDRESS (0x1d<<1) int main(void) { MMA8451Q acc(SDA, SCL, MMA8451_I2C_ADDRESS); PwmOut rled(LED1); PwmOut gled(LED2); PwmOut bled(LED3); printf("MMA8451 ID: %d\n", acc.getWhoAmI()); while (true) { float x, y, z; x = abs(acc.getAccX()); y = abs(acc.getAccY()); z = abs(acc.getAccZ()); rled = 1.0f - x; gled = 1.0f - y; bled = 1.0f - z; wait(0.1f); printf("X: %1.2f, Y: %1.2f, Z: %1.2f\n", x, y, z); } } |
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
人均百万?英伟达中国员工收入曝光! 2024-08-29
-
《黑神话:悟空》玩家硬盘升级攻略:提升游戏体验,畅享3A大作 2024-08-29
-
数睿数据参加《系统与软件工程 低代码开发平台通用技术要求》国家标准编制 2024-08-29
- NRF52810蓝牙数字耳机找人定制
预算:¥30005天前
- 125KW模块式PCS软硬件外包开发
预算:¥1100000015小时前
- 12V汽车启动电源项目BMS设计
预算:¥50000023小时前
- 数据可视化软件 开发
预算:¥5000023小时前
- PLC项目调试修改
预算:¥100001天前
- 起动电机控制器开发
预算:¥1100001天前