cc2640- mma8452三轴传感器调试

本文档详细介绍了如何在CC2650_LAUNCHXL开发板上配置I2C接口,并使用MMA845x加速度计获取XYZ轴数据。通过具体的代码示例,展示了管脚配置、I2C对象与配置结构设置,以及初始化和数据读取过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

说明

有时候项目做好,时间长了就忘记,这边做一个总结,方便以后自己看。

使用环境:

IAR,协议栈 2_02_01_18

1 配置管脚

在CC2650_LAUNCHXL.h文件中配置,另,如果有其他外设或者gpio占用了这两个脚,那么务必要将他们取消掉。

 

/* I2C */
#define Board_I2C0_SCL0             IOID_6 // IOID_4
#define Board_I2C0_SDA0             IOID_7//IOID_5

2 I2C配置


/* I2C objects */
I2CCC26XX_Object i2cCC26xxObjects[CC2650_LAUNCHXL_I2CCOUNT];

/* I2C configuration structure, describing which pins are to be used */
const I2CCC26XX_HWAttrsV1 i2cCC26xxHWAttrs[CC2650_LAUNCHXL_I2CCOUNT] = {
    {
        .baseAddr = I2C0_BASE,
        .powerMngrId = PowerCC26XX_PERIPH_I2C0,
        .intNum = INT_I2C_IRQ,
        .intPriority = ~0,
        .swiPriority = 0,
        .sdaPin = Board_I2C0_SDA0,
        .sclPin = Board_I2C0_SCL0,
    }
};

/* I2C configuration structure */
const I2C_Config I2C_config[] = {
    {
        .fxnTablePtr = &I2CCC26XX_fxnTable,
        .object = &i2cCC26xxObjects[0],
        .hwAttrs = &i2cCC26xxHWAttrs[0]
    },
    {NULL, NULL, NULL}
};

3 初始化

调用I2c初始化接口HwI2CInit

调用MMA初始化接口MMA845x_Init

4 动作

例如

                ace_data_t ace_data;
                MMA845x_GetState(&ace_data);

获取x y z信息

 

另,MMA8452.c MMA8452.h i2c.c i2c.h 可以在我的上传资源中查看

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值