NXP MCU 技术论坛
直播中

刘高

10年用户 964经验值
擅长:嵌入式技术
私信 关注
[经验]

官方例程:KL25 加速度传感器PE例程

飞思卡尔KL25Z 产品accelerometer例程实现在codewarrior 10.x PE环境下,MCU 通过I2C总线定时读取三轴加速度传感器MMA8451Q的寄存器,将当前X、Y、Z三轴的加速度值通过串口输出的功能。

例程功能
飞思卡尔KL25Z 产品accelerometer例程实现在codewarrior 10.x PE环境下,MCU 通
过I2C 总线定时读取三轴加速度传感器MMA8451Q的寄存器,将当前X、Y、Z三轴的加速度值通过
串口输出的功能。

运行平台
ü FRDM-KL25Z
ü CodeWarrior V10.x/IAR ARM IDE

三轴加速度传感器 MMA8451Q 简介
飞思卡尔加速度传感器 MMA8451Q 是一款智能、低功耗、I2C 通信输出,QFN 封装,8 位/14
位可选的数字加速度计,具有另个可编程中断引脚供 7 个中断源使用。该传感器可以检测自由落
体、运动、方向、倾角等。

下图为加速度传感器检测 6 个方向的示意图。
1.jpg

其 I2C 的 SCL 时钟频率可以高达 400kHz。
该芯片的 I2C 地址如表 1 所示,该数据为出厂默认数据。
              表 1 从机地址
从机地址(SA0=0) 从机地址(SA0=1)
0011100(0x1C) 0011101(0x1D)

采集到的三轴(x,y,z)数据存放在地址为 01-06 这 6 个寄存器中,外围设备可以通过 I2C 通信接
口读取这 6 个寄存器,从而得到具体的三轴数据。

加速度传感器的 I2C 读取时序如下:
图1.jpg


运行例程(CodeWarrior)
1) 使用 USB cable 连接 FRDM-KL25Z 开发板 Min-B USB 连接器(SDA J7);
2) 加载 accelerometer 工程:
     · 选择菜单【File】-》【Import】-》【Existing Projects into Workspace】

     · 选择项目所在路径,并指定所要加载项目,点击完成:
图2.jpg

3) 选择【accelerometer_demo_FLASH】,点击 a.jpg 进行编译;
4) 编译成功后,点击调试器箭头 b.jpg ,选择【Debug Configurations】进入调试器配置界面;
5) 选择【accelerometer_demo_FLASH_OpenSDA】,点击【Debug】进入调试界面;

6) 进入调试界面后,点击 c.jpg 运行例程。

运行例程(IAR)
1) 使用 USB cable 连接 FRDM-KL25Z 开发板 Min-B USB 连接器(SDA J7);
2) 加载 accelerometer 工程后,选择【RAM_128KB】,点击 d.jpg 进行编译;
3) 编译成功后,点击 e.jpg 进入调试界面;

4) 进入调试界面后,点击 f.jpg 运行例程。

串口配置

选择串口调试工具,使用下图配置信息:
图3.jpg

注:其中端口号为实际硬件的串口号,查看【我的电脑】-》【设备管理器】-》【端口】

模块配置
CPU 模块配置:
图4.jpg


I2C 模块配置:

该模块用于和加速度传感器通信。
图5.jpg


TPM 模块配置:

该模块用于定时采集加速度传感器的值,作定时器使用。
图6.jpg


UART 模块配置:

该模块用于将加速度传感器的值发送到串口助手。
图7.jpg


代码说明

Accelerometer_demo 例程使用下列 IO 引脚资源,以及每个 IO 引脚的功能描述:
引脚名称 方向 功能
PTE24 输出 I2C 时钟
PTE25 输入输出 I2C 数据


主程序(main 函数)代码说明
图8.jpg


I2C 初始化代码说明
图9.jpg


加速度传感器初始化代码说明
图10.jpg


读取加速度传感器三轴数据代码说明
图11.jpg


定时中断改变状态代码说明
图12.jpg


例程流程图
图13.jpg


运行效果
1、 图14.jpg

2、 图15.jpg
3、 图16.jpg
4、 图17.jpg
5、 图18.jpg
6、 图19.jpg
KL25 Sample Code.zip (3.13 MB)
(下载次数: 33, 2015-1-5 14:44 上传)



回帖(2)

eggeggice

2015-1-13 00:50:32
谢谢分享,下载学习一下
举报

丁剑峰

2015-1-15 08:51:18
谢谢分享                 
举报

更多回帖

发帖
×
20
完善资料,
赚取积分