# ```c #define DATA_MSB_CH0 0X00 #define DATA_LSB_CH0 0X01 #define DATA_MSB_CH1 0X02 #define DATA_LSB_CH1 0X03 #define DATA_MSB_CH2 0X04 /* LDC1614 Only */ #define DATA_LSB_CH2 0X05 /* LDC1614 Only */ #define DATA_MSB_CH3 0X06 /* LDC1614 Only */ #define DATA_LSB_CH3 0X07 /* LDC1614 Only */ #define RCOUNT_CH0 0X08 #define RCOUNT_CH1 0X09 #define RCOUNT_CH2 0X0A /* LDC1614 Only */ #define RCOUNT_CH3 0X0B /* LDC1614 Only */ #define OFFSET_CH0 0X0C #define OFFSET_CH1 0X0D #define OFFSET_CH2 0X0E /* LDC1614 Only */ #define OFFSET_CH3 0X0F /* LDC1614 Only */ #define SETTLECOUNT_CH0 0X10 #define SETTLECOUNT_CH1 0X11 #define SETTLECOUNT_CH2 0X12 /* LDC1614 Only */ #define SETTLECOUNT_CH3 0X13 /* LDC1614 Only */ #define CLOCK_DIVIDER_CH0 0X14 #define CLOCK_DIVIDER_CH1 0X15 #define CLOCK_DIVIDER_CH2 0X16 /* LDC1614 Only */ #define CLOCK_DIVIDER_CH3 0X17 /* LDC1614 Only */ #define STATUS 0X18 #define ERROR_CONFIG 0X19 #define CONFIG 0X1A #define MUX_CONFIG 0X1B #define RESET_DEVICE 0X1C #define DRIVE_CURRENT_CH0 0x1E #define DRIVE_CURRENT_CH1 0x1F #define DRIVE_CURRENT_CH2 0x20 /* LDC1614 Only */ #define DRIVE_CURRENT_CH3 0x21 /* LDC1614 Only */ #define MANUFACTURER_ID 0x7E #define DEVICE_ID 0x7F ``` ## 数据寄存器(只读) ### DATA_CH0_MSB 0x00 通道0数据高16位 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├────┬────┬────┬────┬─────────────────────────────────────┤ │ 15 │ 14 │ 13 │ 12 │ 11:0 │ ├────┼────┼────┼────┼─────────────────────────────────────┤ │ERR │ERR │ERR │ERR │ DATA0[27:16] │ │_UR │_OR │_WD │_AE │ (数据高12位) │ └────┴────┴────┴────┴─────────────────────────────────────┘ 位域说明: ┌──────────┬────────┬────────────────────────────────────────┐ │ 位 │ 名称 │ 说明 │ ├──────────┼────────┼────────────────────────────────────────┤ │ 15 │ ERR_UR │ 转换下溢错误标志 │ │ │ │ 0: 无下溢错误 │ │ │ │ 1: 通道0发生下溢错误 │ ├──────────┼────────┼────────────────────────────────────────┤ │ 14 │ ERR_OR │ 转换上溢错误标志 │ │ │ │ 0: 无上溢错误 │ │ │ │ 1: 通道0发生上溢错误 │ ├──────────┼────────┼────────────────────────────────────────┤ │ 13 │ ERR_WD │ 看门狗超时错误标志 │ │ │ │ 0: 无看门狗错误 │ │ │ │ 1: 通道0发生看门狗超时 │ ├──────────┼────────┼────────────────────────────────────────┤ │ 12 │ ERR_AE │ 振幅错误标志 │ │ │ │ 0: 无振幅错误 │ │ │ │ 1: 通道0发生振幅错误(高或低) │ ├──────────┼────────┼────────────────────────────────────────┤ │ 11:0 │ DATA0 │ 28位数据的高12位 │ │ │[27:16] │ │ └──────────┴────────┴────────────────────────────────────────┘ ### DATA_CH0_LSB 0x01 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├─────────────────────────────────────────────────────────┤ │ 15:0 │ ├─────────────────────────────────────────────────────────┤ │ DATA0[15:0] │ │ (数据低16位) │ └─────────────────────────────────────────────────────────┘ ### DATA_CH1_MSB 0x02 > 同DATA_CH0_MSB ### DATA_CH1_LSB 0x03 > 同DATA_CH0_LSB ### DATA_CH2_MSB 0x04 > LDC1614专用 ### DATA_CH2_LSB 0x05 > LDC1614专用 ### DATA_CH3_MSB 0x06 > LDC1614专用 ### DATA_CH3_LSB 0x07 ## 转换时间寄存器(RCOUNT) ### RCOUNT_CH0 0x08 通道0转换时间计数 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├─────────────────────────────────────────────────────────┤ │ 15:0 │ ├─────────────────────────────────────────────────────────┤ │ RCOUNT0[15:0] │ └─────────────────────────────────────────────────────────┘ 复位值:0x0080 取值范围:3 ~ 65535 (0x0003 ~ 0xFFFF) 设置通道0的转换时间,决定测量分辨率 转换时间计算公式 t_CONVERSION = (RCOUNT × 16) / f_REF 其中: - t_CONVERSION:单次转换时间(秒) - RCOUNT:寄存器值 - f_REF:参考时钟频率(Hz) 常用配置参考: | RCOUNT值 | 40MHz时钟转换时间 | 典型采样率 | | -------------- | ----------- | ------- | | 0x04D6 (1238) | 495µs | ~1kSPS | | 0x0800 (2048) | 819µs | ~600SPS | | 0xFFFF (65535) | 26.2ms | ~38SPS | 配置建议: 需要高采样率:使用较小的RCOUNT值 需要高分辨率:使用较大的RCOUNT值 最小值必须≥3 ### RCOUNT_CH1 0x09 > 同RCOUNT_CH0 ### RCOUNT_CH2 0x0A > LDC1614专用 ### RCOUNT_CH3 0x0B > LDC1614专用 ## 偏移寄存器(OFFSET) ### OFFSET_CH0 0x0C 通道0数据偏移 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├─────────────────────────────────────────────────────────┤ │ 15:0 │ ├─────────────────────────────────────────────────────────┤ │ OFFSET0[15:0] │ └─────────────────────────────────────────────────────────┘ 复位值:0x0000 作用:设置通道0的偏移值,用于从测量结果中减去固定偏移。 计算公式:实际输出 = 原始测量值 - OFFSET > 如果结果为负,则报告下溢错误(ERR_UR) 应用场景: 消除传感器固有偏移 校准零点 调整测量范围 ### OFFSET_CH1 0x0D > 同OFFSET_CH0 ### OFFSET_CH2 0x0E > LDC1614专用 ### OFFSET_CH3 0x0F > LDC1614专用 ## 建立时间寄存器(SETTLECOUNT) ### SETTLECOUNT_CH0 0x10 通道0建立时间计数 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├─────────────────────────────────────────────────────────┤ │ 15:0 │ ├─────────────────────────────────────────────────────────┤ │ SETTLECOUNT0[15:0] │ └─────────────────────────────────────────────────────────┘ 复位值:0x0000 取值范围:0 ~ 65535(0x0000 ~ 0xFFFF) 作用:设置通道0传感器振荡器建立稳定振荡所需的时间。 建立时间计算公式:t_SETTLE = (SETTLECOUNT × 16) / f_REF 其中: - t_SETTLE:建立时间(秒) - SETTLECOUNT:寄存器值 - f_REF:参考时钟频率(Hz) 常用配置值: | SETTLECOUNT值 | 40MHz时钟建立时间 | 典型应用 | | ------------- | ----------- | ------- | | 0x000A (10) | 4µs | 高Q值传感器 | | 0x0040 (64) | 25.6µs | 中等Q值传感器 | | 0x0400 (1024) | 409.6µs | 低Q值传感器 | 配置建议: - 值过小:传感器未充分稳定,数据不准确 - 值过大:增加转换周期,降低采样率 - 需根据实际Q值计算 ### SETTLECOUNT_CH1 0x11 > 同SETTLECOUNT_CH0 ### SETTLECOUNT_CH2 0x12 > LDC1614专用 ### SETTLECOUNT_CH3 0x13 > LDC1614专用 ## 时钟分频器寄存器(CLOCK_DIVIDERS) ### CLOCK_DIVIDERS0 0x14 通道0时钟分频器 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├────────┬────────┬───────────────────────────────────────┤ │ 15:12 │ 11:10 │ 9:0 │ ├────────┼────────┼───────────────────────────────────────┤ │FIN_DIV │RESERVED│ FREF_DIVIDER │ │ 0 │ │ │ └────────┴────────┴───────────────────────────────────────┘ 复位值:0x0000 位域说明: | 位 | 名称 | 说明 | | ----- | -------------- | --------- | | 15:12 | FIN_DIVIDER0 | 通道0输入分频器 | | 11:10 | RESERVED | 保留,必须设为00 | | 9:0 | FREF_DIVIDER0 | 通道0参考分频器 | FIN_DIVIDER设置: | FIN_DIVIDER值 | 分频比 | 传感器频率范围 | | ------------- | ------ | ----------------------------- | | 0x0 (0000) | 保留,不使用 | - | | 0x1 (0001) | 1 | f_SENSOR ≤ 8.75MHz | | 0x2 (0010) | 2 | 8.75MHz < f_SENSOR ≤ 17.5MHz | | 0x3 (0011) | 4 | 17.5MHz < f_SENSOR ≤ 35MHz | | 0x4~0xF | 保留 | - | FREF_DIVIDER设置: - 值≥1有效 - 典型值:1或2 - 计算公式:f_REF_effective = f_CLKIN / FREF_DIVIDER 常用配置: | 配置值 | FIN_DIV | FREF_DIV | 说明 | | ------ | -------- | --------- | --------------------------- | | 0x1001 | 1 | 1 | FIN=1, FREF=1 | | 0x1002 | 1 | 2 | FIN=1, FREF=2(推荐用于40MHz双通道) | | 0x2001 | 2 | 1 | FIN=2, FREF=1 | 配置建议: - 单通道模式,f_CLKIN≤35MHz:FREF_DIV=1 - 双通道模式,f_CLKIN≤40MHz:FREF_DIV=2 - 单通道模式,35MHz 同CLOCK_DIVIDERS0 ### CLOCK_DIVIDERS2 0x16 > LDC1614专用 ### CLOCK_DIVIDERS3 0x17 > LDC1614专用 ## 状态寄存器(STATUS) ### STATUS 0x18 设备状态寄存器 ┌──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┐ │ 15 │ 14 │ 13 │ 12 │ 11 │ 10 │ 9 │ 8 │ 7 │ 6 │ 5:4 │ 3 │ 2 │ 1:0 │ ├──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤ │ ERR_CHAN │ ERR_CHAN │ ERR_UR │ ERR_OR │ ERR_WD │ ERR_AHE │ ERR_ALE │ ERR_ZC │ RESERVED │ DRDY │ RESERVED │UNREAD_CH0│UNREAD_CH1│ RESERVED │ └──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┘ 位域说明: ┌──────────┬─────────────┬────────────────────────────────────────┐ │ 位 │ 名称 │ 说明 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 15:14 │ ERR_CHAN │ 错误通道指示 │ │ │ │ 00: 通道0发生错误 │ │ │ │ 01: 通道1发生错误 │ │ │ │ 10/11: LDC1614专用 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 13 │ ERR_UR │ 转换下溢错误 │ │ │ │ 0: 无下溢错误 │ │ │ │ 1: 有通道发生下溢错误 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 12 │ ERR_OR │ 转换上溢错误 │ │ │ │ 0: 无上溢错误 │ │ │ │ 1: 有通道发生上溢错误 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 11 │ ERR_WD │ 看门狗超时错误 │ │ │ │ 0: 无看门狗错误 │ │ │ │ 1: 有通道发生看门狗超时 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 10 │ ERR_AHE │ 振幅过高错误 │ │ │ │ 0: 无振幅过高错误 │ │ │ │ 1: 有通道振幅>1.8V │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 9 │ ERR_ALE │ 振幅过低警告 │ │ │ │ 0: 无振幅过低警告 │ │ │ │ 1: 有通道振幅<1.2V │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 8 │ ERR_ZC │ 零计数错误 │ │ │ │ 0: 无零计数错误 │ │ │ │ 1: 有通道发生零计数错误 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 7 │ RESERVED │ 保留 │ │ │ │ 0: 读为0 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 6 │ DRDY │ 数据就绪标志 │ │ │ │ 0: 无新转换结果 │ │ │ │ 1: 新转换结果已就绪 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 5:4 │ RESERVED │ 保留 │ │ │ │ 00: 读为00 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 3 │ UNREADCONV0 │ 通道0未读转换标志 │ │ │ │ 0: 通道0无未读数据 │ │ │ │ 1: 通道0有未读数据 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 2 │ UNREADCONV1 │ 通道1未读转换标志 │ │ │ │ 0: 通道1无未读数据 │ │ │ │ 1: 通道1有未读数据 │ ├──────────┼─────────────┼────────────────────────────────────────┤ │ 1:0 │ RESERVED │ 保留 (LDC1614中用于CH2/CH3) │ └──────────┴─────────────┴────────────────────────────────────────┘ 作用:提供设备运行状态的完整信息,包括错误状态、数据就绪状态等。 读取特性: - 读取STATUS寄存器会清除错误标志 - 读取STATUS会解除INTB引脚的断言 - 错误标志在被读取前保持锁存状态 ## 错误配置寄存器(ERROR_CONFIG) ### ERROR_CONFIG 0x19 错误报告配置 ┌──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┬──────────┐ │ 15 │ 14 │ 13 │ 12 │ 11 │ 10:8 │ 7 │ 6 │ 5 │ 4 │ 3 │ 2 │ 1 │ 0 │ ├──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┼──────────┤ │UR_ERR2OUT│OR_ERR2OUT│WD_ERR2OUT│AH_ERR2OUT│AL_ERR2OUT│ RESERVED │UR_ERR2INT│OR_ERR2INT│WD_ERR2INT│AH_ERR2INT│AL_ERR2INT│ZC_ERR2INT│ RESERVED │DRDY_2INT │ └──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┴──────────┘ 位域说明(输出寄存器报告): ┌────────┬─────────────┬────────────────────────────────────────┐ │ 位 │ 名称 │ 说明 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 15 │ UR_ERR2OUT │ 下溢错误报告到数据寄存器 │ │ │ │ 0: 不在DATAx_MSB中报告 │ │ │ │ 1: 在DATAx_MSB中报告下溢错误 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 14 │ OR_ERR2OUT │ 上溢错误报告到数据寄存器 │ │ │ │ 0: 不在DATAx_MSB中报告 │ │ │ │ 1: 在DATAx_MSB中报告上溢错误 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 13 │ WD_ERR2OUT │ 看门狗错误报告到数据寄存器 │ │ │ │ 0: 不在DATAx_MSB中报告 │ │ │ │ 1: 在DATAx_MSB中报告看门狗错误 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 12 │ AH_ERR2OUT │ 振幅过高错误报告到数据寄存器 │ │ │ │ 0: 不在DATAx_MSB中报告 │ │ │ │ 1: 在DATAx_MSB中报告振幅过高错误 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 11 │ AL_ERR2OUT │ 振幅过低警告报告到数据寄存器 │ │ │ │ 0: 不在DATAx_MSB中报告 │ │ │ │ 1: 在DATAx_MSB中报告振幅过低警告 │ └────────┴─────────────┴────────────────────────────────────────┘ 位域说明(INTB中断报告): ┌────────┬─────────────┬────────────────────────────────────────┐ │ 位 │ 名称 │ 说明 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 7 │ UR_ERR2INT │ 下溢错误触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 触发INTB中断 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 6 │ OR_ERR2INT │ 上溢错误触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 触发INTB中断 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 5 │ WD_ERR2INT │ 看门狗错误触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 触发INTB中断 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 4 │ AH_ERR2INT │ 振幅过高错误触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 触发INTB中断 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 3 │ AL_ERR2INT │ 振幅过低警告触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 触发INTB中断 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 2 │ ZC_ERR2INT │ 零计数错误触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 触发INTB中断 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 1 │ RESERVED │ 保留,设为0 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 0 │ DRDY_2INT │ 数据就绪触发INTB中断 │ │ │ │ 0: 不触发INTB │ │ │ │ 1: 新数据就绪时触发INTB中断 │ └────────┴─────────────┴────────────────────────────────────────┘ 作用:配置各种错误和状态条件的报告方式。 常用配置值: - `0x0000`:禁用所有错误报告(默认) - `0x00FF`:所有错误都触发INTB中断 - `0x0001`:仅数据就绪触发INTB - `0x00FD`:启用大部分错误中断(实际应用常用) ## 主配置寄存器(CONFIG) ### CONFIG 0x1A 转换配置寄存器 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├───────┬────┬────┬────┬────┬────┬────┬────┬────────────────┤ │ 15:14 │ 14 │ 13 │ 12 │ 11 │ 10 │ 9 │ 8 │ 7:0 │ ├───────┼────┼────┼────┼────┼────┼────┼────┼────────────────┤ │ACTIVE │SLEE│RP_O│SENS│AUTO│REF_│INTB│HIGH│ RESERVED │ │ │P_ │VER_│OR_ │_AMP│CLK_│_DIS│_CUR│ │ │CHAN │MODE│RIDE│ACTI│_DIS│SRC │ │RENT│ │ │ │_EN │_EN │VATE│ │ │ │_DRV│ │ │ │ │ │_SEL│ │ │ │ │ │ └───────┴────┴────┴────┴────┴────┴────┴────┴────────────────┘ 复位值:0x2801 位域说明: ┌────────┬──────────────────┬────────────────────────────────────────┐ │ 位 │ 名称 │ 说明 │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 15:14│ ACTIVE_CHAN │ 激活通道选择 │ │ │ │ 0: 通道0激活 │ │ │ │ 1: 通道1激活 │ │ │ │ (仅在单通道模式AUTOSCAN_EN=0时有效) │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 13 │ SLEEP_MODE_EN │ 睡眠模式使能 │ │ │ │ 0: 正常工作模式 │ │ │ │ 1: 进入睡眠模式(低功耗配置模式) │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 12 │ RP_OVERRIDE_EN │ 自动校准禁用 │ │ │ │ 0: 启用自动校准(推荐用于未知传感器) │ │ │ │ 1: 禁用自动校准(使用手动IDRIVE设置) │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 11 │ SENSOR_ACTIVATE_ │ 传感器激活电流选择 │ │ │ SEL │ 0: 低电流激活模式 │ │ │ │ 1: 高电流激活模式 │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 10 │ AUTO_AMP_DIS │ 自动幅度校正禁用 │ │ │ │ 0: 启用自动幅度校正 │ │ │ │ 1: 禁用自动幅度校正 │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 9 │ REF_CLK_SRC │ 参考时钟源选择 │ │ │ │ 0: 使用内部参考时钟(约35MHz) │ │ │ │ 1: 使用外部CLKIN时钟 │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 8 │ IRESERVED │ 保留,必须设为0x00 │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 7 │ INTB_DIS │ INTB中断禁用 │ │ │ │ 0: 启用INTB中断功能 │ │ │ │ 1: 禁用INTB(引脚保持高电平) │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 6 │ HIGH_CURRENT_DRV │ 高电流驱动模式 │ │ │ │ 0: 正常电流驱动 │ │ │ │ 1: 通道0高电流驱动模式(特殊应用) │ ├────────┼──────────────────┼────────────────────────────────────────┤ │ 5:0 │ RESERVED │ 保留,必须设为0x01 │ └────────┴──────────────────┴────────────────────────────────────────┘ 作用:LDC1612的主配置寄存器,控制工作模式、时钟源、通道选择等核心功能。 ⚠️ 重要提示:CONFIG寄存器必须在所有其他配置完成后最后写入,写入后设备开始转换。 常用配置值: | 配置值 | 说明 | | ------ | ---------------- | | 0x1601 | 外部时钟,连续转换,禁用自动校准 | | 0x1481 | 内部时钟,连续转换 | | 0x8000 | 软件复位 | | 0x2801 | 进入睡眠模式 | ## 多路复用器配置寄存器(MUX_CONFIG) ### MUX_CONFIG 0x1B 通道多路复用配置 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├────┬───────┬─────────────────┬─────────────────────────┤ │ 15 │ 14:13 │ 12:3 │ 2:0 │ ├────┼───────┼─────────────────┼─────────────────────────┤ │AUTO│RR_ │ RESERVED │ DEGLITCH │ │SCAN│SEQUENCE│ (必须设为 │ (消抖滤波器带宽) │ │_EN │ │ 00 0100 0001) │ │ └────┴───────┴─────────────────┴─────────────────────────┘ 复位值:0x020F 位域说明: ┌────────┬─────────────┬────────────────────────────────────────┐ │ 位 │ 名称 │ 说明 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 15 │ AUTOSCAN_EN │ 自动扫描模式使能 │ │ │ │ 0: 单通道连续模式(由ACTIVE_CHAN选择) │ │ │ │ 1: 顺序扫描模式(由RR_SEQUENCE选择) │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 14:13 │ RR_SEQUENCE │ 扫描序列配置 │ │ │ │ 00: CH0, CH1 │ │ │ │ 01: CH0, CH1, CH2 (LDC1614) │ │ │ │ 10: CH0, CH1, CH2, CH3 (LDC1614) │ │ │ │ 11: CH0, CH1 │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 12:3 │ RESERVED │ 保留,必须设为00 0100 0001 (0x041) │ ├────────┼─────────────┼────────────────────────────────────────┤ │ 2:0 │ DEGLITCH │ 输入消抖滤波器带宽 │ │ │ │ 001: 1.0 MHz │ │ │ │ 100: 3.3 MHz │ │ │ │ 101: 10 MHz │ │ │ │ 111: 33 MHz │ └────────┴─────────────┴────────────────────────────────────────┘ 作用:配置通道扫描模式和输入消抖滤波器。 DEGLITCH选择建议: - 选择大于传感器频率的最低设置 - 例如:f_SENSOR=7.8MHz,选择10MHz (101) 常用配置值: | 配置值 | 说明 | | ------ | ---------------- | | 0x020C | 单通道模式,3.3MHz滤波 | | 0x820C | 双通道顺序模式,3.3MHz滤波 | | 0x820D | 双通道顺序模式,10MHz滤波 | ## 复位寄存器(RESET_DEV) ### RESET_DEV 0x1C 设备复位 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├─────────────────────────────────────────────────────────┤ │ 15:0 │ ├─────────────────────────────────────────────────────────┤ │ RESET_DEV[15:0] │ └─────────────────────────────────────────────────────────┘ 作用:软件复位设备。 复位操作: - 写入0x8000:触发软件复位 - 复位后所有寄存器恢复默认值 - 复位完成后设备进入睡眠模式 复位完成后,delay 10ms,然后重新配置全部寄存器 ## 驱动电流寄存器(DRIVE_CURRENT) ### DRIVE_CURRENT0 0x1E 通道0驱动电流 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├────────────────┬──────────────────┬─────────────────────┤ │ 15:11 │ 10:6 │ 5:0 │ ├────────────────┼──────────────────┼─────────────────────┤ │ IDRIVE0 │ INIT_IDRIVE0 │ RESERVED │ │ (当前驱动电流) │ (初始驱动电流) │ (设为0x00) │ └────────────────┴──────────────────┴─────────────────────┘ 复位值:0x0000 作用:设置通道0的传感器驱动电流。INIT_IDRIVE0可以用来自动幅度校正关闭时,自动确定合适的驱动电流。 IDRIVE值与Rp关系: | Rp (kΩ) | 推荐IDRIVE | DRIVE_CURRENT值 | Nominal Current (µA) | | ------- | -------- | --------------- | ------------------ | | 0.90 | 31 | 0xF800 | 1563 | | 1.05 | 30 | 0xF000 | 1355 | | 1.21 | 29 | 0xE800 | 1173 | | 1.40 | 28 | 0xE000 | 1017 | | 1.63 | 27 | 0xD800 | 880 | | 1.89 | 26 | 0xD000 | 763 | | 2.20 | 25 | 0xC800 | 635 | | 2.55 | 24 | 0xC000 | 551 | | 2.95 | 23 | 0xB800 | 489 | | 3.43 | 22 | 0xB000 | 424 | | 3.98 | 21 | 0xA800 | 392 | | 4.61 | 20 | 0xA000 | 297 | | 5.35 | 19 | 0x9800 | 244 | | 6.21 | 18 | 0x9000 | 212 | | 7.20 | 17 | 0x8800 | 195 | | 8.36 | 16 | 0x8000 | 169 | | 9.69 | 15 | 0x7800 | 146 | | 11.2 | 14 | 0x7000 | 127 | | 13.0 | 13 | 0x6800 | 110 | | 15.1 | 12 | 0x6000 | 95 | | 17.6 | 11 | 0x5800 | 82 | | 20.4 | 10 | 0x5000 | 72 | | 23.6 | 9 | 0x4800 | 59 | | 27.4 | 8 | 0x4000 | 52 | | 31.8 | 7 | 0x3800 | 46 | | 36.9 | 6 | 0x3000 | 40 | | 42.8 | 5 | 0x2800 | 32 | | 49.7 | 4 | 0x2000 | 28 | | 57.6 | 3 | 0x1800 | 23 | | 66.9 | 2 | 0x1000 | 20 | | 77.6 | 1 | 0x0800 | 18 | | 90.0 | 0 | 0x0000 | 16 | 配置建议: - 先用自动校准模式确定合适的IDRIVE - 再用示波器确认Vosc在1.2V~1.8V之间 - 固定IDRIVE后设置RP_OVERRIDE_EN=1 ### DRIVE_CURRENT1 0x1F > 同DRIVE_CURRENT0 ### DRIVE_CURRENT2 0x20 > 同DRIVE_CURRENT0 ### DRIVE_CURRENT3 0x21 > 同DRIVE_CURRENT0 ## 自动幅度校正寄存器(AUTO_AMPGAIN) ### AUTO_AMPGAIN 0x22 ┌─────────────────────────────────────────────────────────┐ │ 位域分布 (16位) │ ├─────────────────────────────────────────────────────────┤ │ 15:0 │ ├─────────────────────────────────────────────────────────┤ ## ID寄存器(只读) ### MANUFACTURER_ID 0x7E 制造商ID ┌─────────────────────────────────────────────────────────┐ │ 值:0x5449 ("TI"的ASCII码) │ └─────────────────────────────────────────────────────────┘ 作用:验证设备制造商。 ### DEVICE_ID 0x7F 设备ID ┌─────────────────────────────────────────────────────────┐ │ LDC1612值:0x3054 │ │ LDC1614值:0x3056 │ └─────────────────────────────────────────────────────────┘ 作用:验证设备型号,可用于I2C通信测试。