From e18d49ffa29afb2995f03008bb9f07a889ae8a3c Mon Sep 17 00:00:00 2001 From: SEEKFREE_BUDING <2289331269@qq.com> Date: Fri, 15 Sep 2023 11:50:02 +0800 Subject: [PATCH] =?UTF-8?q?imu660ra=E6=96=B0=E5=A2=9E=E7=BB=86=E5=8C=96?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- .../libraries/zf_device/zf_device_imu660ra.c | 32 ++++++++++--------- .../libraries/zf_device/zf_device_imu660ra.h | 15 ++++++--- 32 files changed, 432 insertions(+), 320 deletions(-) diff --git a/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E01_gpio_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E02_uart_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E03_adc_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E04_pwm_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E05_pit_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E06_exit_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E07_encoder_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E08_eeprom_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E09_timer_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E10_printf_debug_log_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E11_interrupt_priority_set_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E12_cpu1_handles_interrupts_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E13_dual_core_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E14_specifies_variable_or_code_location_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.c b/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.c +++ b/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.h b/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.h +++ b/Example/E15_fft_demo/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================ diff --git a/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.c b/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.c index fd884cb..95144f9 100644 --- a/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.c +++ b/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.c @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -250,11 +251,11 @@ uint8 imu660ra_init (void) imu660ra_write_register(IMU660RA_ACC_CONF, 0xA7); // 加速度采集配置 性能模式 正常采集 50Hz 采样频率 imu660ra_write_register(IMU660RA_GYR_CONF, 0xA9); // 陀螺仪采集配置 性能模式 正常采集 200Hz 采样频率 - // IMU660RA_GYR_SAMPLE寄存器 - // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.4 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.8 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.6 可以转化为带物理单位的数据,单位为:°/s - // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.2 可以转化为带物理单位的数据,单位为:°/s + // IMU660RA_ACC_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K + // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) + // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) switch(IMU660RA_ACC_SAMPLE_DEFAULT) { case IMU660RA_ACC_SAMPLE_SGN_2G: @@ -288,37 +289,38 @@ uint8 imu660ra_init (void) break; } - // IMU660RA_ACC_SAMPLE寄存器 - // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以16384 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以8192 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以4096 可以转化为带物理单位的数据,单位:g(m/s^2) - // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以2048 可以转化为带物理单位的数据,单位:g(m/s^2) + // IMU660RA_GYR_SAMPLE寄存器 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K + // 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s + // 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s switch(IMU660RA_GYRO_SAMPLE_DEFAULT) { case IMU660RA_GYRO_SAMPLE_SGN_125DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x04); - imu660ra_transition_factor[1] = 262.4; + imu660ra_transition_factor[1] = 262.144; }break; case IMU660RA_GYRO_SAMPLE_SGN_250DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x03); - imu660ra_transition_factor[1] = 131.2; + imu660ra_transition_factor[1] = 131.072; }break; case IMU660RA_GYRO_SAMPLE_SGN_500DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x02); - imu660ra_transition_factor[1] = 65.6; + imu660ra_transition_factor[1] = 65.536; }break; case IMU660RA_GYRO_SAMPLE_SGN_1000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x01); - imu660ra_transition_factor[1] = 32.8; + imu660ra_transition_factor[1] = 32.768; }break; case IMU660RA_GYRO_SAMPLE_SGN_2000DPS: { imu660ra_write_register(IMU660RA_GYR_RANGE, 0x00); - imu660ra_transition_factor[1] = 16.4; + imu660ra_transition_factor[1] = 16.384; }break; default: { diff --git a/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.h b/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.h index 203292a..a689df1 100644 --- a/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.h +++ b/Seekfree_TC264_Opensource_Library/libraries/zf_device/zf_device_imu660ra.h @@ -32,6 +32,7 @@ * 日期 作者 备注 * 2022-09-15 pudding first version * 2023-04-28 pudding 增加中文注释说明 +* 2023-09-15 pudding 转换实际值详细说明 ********************************************************************************************************************/ /********************************************************************************************************************* * 接线定义: @@ -121,17 +122,21 @@ typedef enum #define IMU660RA_ACC_RANGE (0x41) #define IMU660RA_GYR_CONF (0x42) #define IMU660RA_GYR_RANGE (0x43) + #define IMU660RA_ACC_SAMPLE (0x02) // 加速度计量程 +// 以下为25℃的转换比例 IMU660RA的加速度温漂系数为 0.004%/K 常值零偏的温度敏感系数为 ±0.25mg/K // 设置为:0x00 加速度计量程为:±2g 获取到的加速度计数据 除以 16384 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x01 加速度计量程为:±4g 获取到的加速度计数据 除以 8192 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x02 加速度计量程为:±8g 获取到的加速度计数据 除以 4096 可以转化为带物理单位的数据 单位:g(m/s^2) // 设置为:0x03 加速度计量程为:±16g 获取到的加速度计数据 除以 2048 可以转化为带物理单位的数据 单位:g(m/s^2) + #define IMU660RA_GYR_SAMPLE (0x00) // 陀螺仪量程 -// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据 除以 16.4 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据 除以 32.8 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据 除以 65.6 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据 除以 131.2 可以转化为带物理单位的数据 单位为:°/s -// 设置为:0x04 陀螺仪量程为:±125 dps 获取到的陀螺仪数据 除以 262.4 可以转化为带物理单位的数据 单位为:°/s +// 以下为25℃的转换比例 IMU660RA的陀螺仪温漂系数为 0.02%/K 常值零偏的温度敏感系数为 ±0.015dps/K +// 设置为:0x00 陀螺仪量程为:±2000dps 获取到的陀螺仪数据除以16.384 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x01 陀螺仪量程为:±1000dps 获取到的陀螺仪数据除以32.768 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x02 陀螺仪量程为:±500 dps 获取到的陀螺仪数据除以65.536 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x03 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以131.072 可以转化为带物理单位的数据,单位为:°/s +// 设置为:0x04 陀螺仪量程为:±250 dps 获取到的陀螺仪数据除以262.144 可以转化为带物理单位的数据,单位为:°/s //================================================定义 IMU660RA 内部地址================================================