注册/登录
论坛 > 体验区
发帖|
看1840|回10|收藏
xquery 看全部
2018-11-19 23:14:26
[传感器大派送]+KX224加速度传感器之FFT变换

前言
    感谢ROHM社区提供的传感器套件,KX224是一款加速度传感器模块。

测试目标
    1、测试KX224三轴加速度数据,通过串口传输出来,绘制波形曲线。
    2、读加速度数据进行FFT变换,得出频域波形数据。

硬件组成与连接
    1、STM32F723E-DISCO开发板
    2、ROHM的传感器底板Sensor Shield
    3、KX224-1053加速度传感器
    11.jpg
由于STM32F723E-DISCO开发板有arduino接口,插上ROHM的传感器底板刚好合适,不需要额外的接线,十分方便,最后将我们的KX224-1053传感器模块插入传感器底板的I2C_1接口即可。
注意需要修改传感器供电,我这里选择的是3V,安装完成如下图:
22.jpg

传感器认识
了解任何一款传感器,最好的方式就是熟读它的数据手册,所以,我拿到传感器的第一时间是去ROHM下载官方资料。
33.jpg
AN090-Getting-Started:这个文档是一个很好的文档,能够帮助开发者快速上手KX224加速度芯片的一个手册,十分有用。
KX224-1053-Specifications-Rev-2.0:这个文档就是KX224的数据手册了。
kx224-i2c-evk-001_ug-e:这个是介绍KX224模块基于arduino开发的,这个对我用处不大,因为本次我不使用arduino。
sensorshield-evk-003_ug-e:这个是介绍传感器底板的,也是基于arduino的。
剩下的资料也是在官网下载的,一个是arduino的驱动和例程,另一个是传感器的寄存器定义文件。

通过熟悉这些资料,本次打算是使用+/-8G的范围,另外这个传感器的IIC接口支持高速、快速、标准IIC时序,
“The I 2 C interface is compliantwith high-speed mode, fast mode, and standard mode I 2 C protocols.” 这个可大大的方便我这边的开发,意味着我使用STM32编写IIC的程序时,可以直接使用,不需要自己在额外的去编写代码。
寄存器的配置使用,在AN090-Getting-Started文档中也有详细的说明。
44.jpg


程序编写
    使用STM32CubeMX软件,选择STM32F723E-DISCO开发板型号,软件会根据这板卡的GPIO口定义,生成KEIL工程。
    在后面的程序中,我需要使用到printf()这个函数,所以需要先映射一下fputc():
    55.jpg
    在单片机完成初始化之后,需要对KX224芯片初始化,初始化的方式完全按照上文手册中提到的方式。。
    66.jpg
    最后只需要在主函数中,间隔2MS的时间,循环读取加速度传感器数据即可。
    77.jpg
需要注意的是,我设置的传感器的IIC接口为400KHZ的速度,通过逻辑分析仪的时序分析,完整的读取一次三轴加速度数据,需要0.21MS的时间,如下图所示:
    88.jpg
    分别将X、Y、Z轴数据上传到PC串口如图所示:
    99.jpg

    aa.jpg
    绿色为X轴,蓝色为Y轴,红色为Z轴。
======================================================================
    在有的项目设计中,如计步器,需要使用FFT去判断数据和波形是否在合理的范围,需要对数据进行FFT变换。
    本次FFT计算,使用STM32F723的DSP库。大致流程如下图:
    bb.jpg
    将程序下载到开发板,运行波形如下图:
    cc.jpg
    图中绿色为时域的Z轴数据,蓝色为频域的波形。
    程序源码
   
STM32F723_Discovery.rar (15.06 MB)
(下载次数: 15, 2018-11-19 23:12 上传)

下载积分: ROHM金币 -3


    测试视频
  [media]http://player.youku.com/player.php/sid/XMzkyNDg0MTAwNA==/v.swf[/media]

llllll96530 看全部
2018-11-20 07:59:32
签到
wudianjun2001 看全部
2018-11-20 10:09:18
不错不错
stary666 看全部
2018-11-20 11:33:19
看看 logo.png
stary666 看全部
2018-11-20 11:33:52
不错
123下一页

罗姆半导体技术社区

Powered by Discuz! X3.4

首页|标准版|触屏版|电脑版