cc2640- mma8452三轴传感器调试

说明

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

使用环境:

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 可以在我的上传资源中查看

 

 

 

 

你可能感兴趣的:(低功耗蓝牙开发,c开发)