如何在设计库中找出硬件中的#define值

库设计师的新手问题,如何确定#define值(在本例中为MPU6050.h)?我无法确定这些价值观的来源。 (0x68、0x00等)

#define MPU6050_ADDRESS_AD0_LOW     0x68 // address pin low (GND),default for InvenSense evaluation board
#define MPU6050_ADDRESS_AD0_HIGH    0x69 // address pin high (VCC)
#define MPU6050_DEFAULT_ADDRESS     MPU6050_ADDRESS_AD0_LOW

#define MPU6050_RA_XG_OFFS_TC       0x00 //[7] PWR_MODE,[6:1] XG_OFFS_TC,[0] OTP_BNK_VLD
#define MPU6050_RA_YG_OFFS_TC       0x01 //[7] PWR_MODE,[6:1] YG_OFFS_TC,[0] OTP_BNK_VLD
#define MPU6050_RA_ZG_OFFS_TC       0x02 //[7] PWR_MODE,[6:1] ZG_OFFS_TC,[0] OTP_BNK_VLD
#define MPU6050_RA_X_FINE_GAIN      0x03 //[7:0] X_FINE_GAIN
#define MPU6050_RA_Y_FINE_GAIN      0x04 //[7:0] Y_FINE_GAIN
#define MPU6050_RA_Z_FINE_GAIN      0x05 //[7:0] Z_FINE_GAIN
#define MPU6050_RA_XA_OFFS_H        0x06 //[15:0] XA_OFFS
#define MPU6050_RA_XA_OFFS_L_TC     0x07
#define MPU6050_RA_YA_OFFS_H        0x08 //[15:0] YA_OFFS
#define MPU6050_RA_YA_OFFS_L_TC     0x09
#define MPU6050_RA_ZA_OFFS_H        0x0A //[15:0] ZA_OFFS
s5705219 回答:如何在设计库中找出硬件中的#define值

大多数嵌入式控制器代码都有很多这样的定义。每个定义要么代表一个与该基址偏移的寄存器基址。然后,您可能还具有用于访问地址内部特定位的位掩码。例如

#define MEMORYADD_OUTPUTENABLED (1<<5)

您似乎正在使用MPU-6050 3轴加速度计。如果您在该设备的datasheet中查找,他们会提到“ MPU-6000 / MPU-6050寄存器映射和寄存器描述”。在that document中查找可以找到寄存器映射,如下所示:

enter image description here

看到连接了吗?

这些定义有助于您编写与组件的可读接口代码。

本文链接:https://www.f2er.com/3137221.html

大家都在问