ZHCSN22 April 2020 DRV8434S
PRODUCTION DATA
表 7-15 列出了 DRV8434S 器件的存储器映射寄存器。表 7-15 中未列出的所有寄存器地址都应视为保留的存储单元,并且不得修改寄存器内容。
寄存器 名称 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | 访问 类型 | 地址 |
---|---|---|---|---|---|---|---|---|---|---|
故障状态 | FAULT | SPI_ERROR | UVLO | CPUV | OCP | STL | TF | OL | R | 0x00 |
DIAG 状态 1 | OCP_LS2_B | OCP_HS2_B | OCP_LS1_B | OCP_HS1_B | OCP_LS2_A | OCP_HS2_A | OCP_LS1_A | OCP_HS1_A | R | 0x01 |
DIAG 状态 2 | RSVD | OTW | OTS | STL_LRN_OK | STALL | RSVD | OL_B | OL_A | R | 0x02 |
CTRL1 | TRQ_DAC [3:0] | RSVD | OL_MODE | RSVD | RW | 0x03 | ||||
CTRL2 | EN_OUT | RSVD | TOFF [1:0] | DECAY [2:0] | RW | 0x04 | ||||
CTRL3 | DIR | STEP | SPI_DIR | SPI_STEP | MICROSTEP_MODE [3:0] | RW | 0x05 | |||
CTRL4 | CLR_FLT | LOCK [2:0] | EN_OL | OCP_MODE | OTSD_MODE | OTW_REP | RW | 0x06 | ||
CTRL5 | RSVD | STL_LRN | EN_STL | STL_REP | RSVD | RW | 0x07 | |||
CTRL6 | STALL_TH [7:0] | RW | 0x08 | |||||||
CTRL7 | RC_RIPPLE[1:0] | EN_SSC | TRQ_SCALE | STALL_TH[11:8] | RW | 0x09 | ||||
CTRL8 | TRQ_COUNT [7:0] | R | 0x0A | |||||||
CTRL9 | REV_ID[3:0] | TRQ_COUNT[11:8] | R | 0x0B |
复杂的位访问类型通过编码可适应小型表单元。表 7-16 显示了用于此部分中访问类型的代码。
访问类型 | 代码 | 说明 |
---|---|---|
读取类型 | ||
R | R | 读取 |
写入类型 | ||
W | W | 写入 |
复位或默认值 | ||
-n | 复位后的值或默认值 |
状态寄存器用于报告警告和故障状况。状态寄存器是只读寄存器
表 7-17 列出了状态寄存器的存储器映射寄存器。表 7-17中未列出的所有寄存器偏移地址都应视为保留的存储单元,并且不应修改寄存器内容。
图 7-31中显示了故障状态,表 7-18中对此进行了介绍。
只读
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
FAULT | SPI_ERROR | UVLO | CPUV | OCP | STL | TF | OL |
R-0b | R-0b | R-0b | R-0b | R-0b | R-0b | R-0b | R-0b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7 | FAULT | R | 0b |
当 nFAULT 引脚在 1 时,FAULT 位为 0。当 nFAULT 引脚在 0 时,FAULT 位为 1。 |
6 | SPI_ERROR | R | 0b |
指示 SPI 协议错误,例如 SCLK 脉冲多于所需,或者缺少 SCLK,即使 nSCS 为低电平。在出现故障时变为高电平,nFAULT 引脚被驱动为低电平。当协议错误消失时,并且已通过 CLR_FLT 位或 nSLEEP 复位脉冲发出清除故障命令后,将恢复正常运行。 |
5 | UVLO | R | 0b |
指示电源欠压锁定故障情况。 |
4 | CPUV | R | 0b |
指示电荷泵欠压故障情况。 |
3 | OCP | R | 0b |
指示过流故障情况 |
2 | STL | R | 0b |
表明存在电机失速情况。 |
1 | TF | R | 0b |
过热警告和过热关断的逻辑或。 |
0 | OL | R | 0b |
表明存在开路负载情况。 |
图 7-32中显示了 DIAG 状态 1,表 7-19中对此进行了介绍。
只读
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
OCP_LS2_B | OCP_HS2_B | OCP_LS1_B | OCP_HS1_B | OCP_LS2_A | OCP_HS2_A | OCP_LS1_A | OCP_HS1_A |
R-0b | R-0b | R-0b | R-0b | R-0b | R-0b | R-0b | R-0b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7 | OCP_LS2_B | R | 0b |
表明 BOUT 中半桥 2 的低侧 FET 上存在过流故障 |
6 | OCP_HS2_B | R | 0b |
表明 BOUT 中半桥 2 的高侧 FET 上存在过流故障 |
5 | OCP_LS1_B | R | 0b |
表明 BOUT 中半桥 1 的低侧 FET 上存在过流故障 |
4 | OCP_HS1_B | R | 0b |
表明 BOUT 中半桥 1 的高侧 FET 上存在过流故障 |
3 | OCP_LS2_A | R | 0b |
表明 AOUT 中半桥 2 的低侧 FET 上存在过流故障 |
2 | OCP_HS2_A | R | 0b |
表明 AOUT 中半桥 2 的高侧 FET 上存在过流故障 |
1 | OCP_LS1_A | R | 0b |
表明 AOUT 中半桥 1 的低侧 FET 上存在过流故障 |
0 | OCP_HS1_A | R | 0b |
表明 AOUT 中半桥 1 的高侧 FET 上存在过流故障 |
图 7-33中显示了 DIAG 状态 2,表 7-20中对此进行了介绍。
只读
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RSVD | OTW | OTS | STL_LRN_OK | STALL | RSVD | OL_B | OL_A |
R-0b | R-0b | R-0b | R-0b | R-0b | R-0b | R-0b | R-0b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7 | RSVD | R | 0b | 保留。 |
6 | OTW | R | 0b | 表明过热警告。 |
5 | OTS | R | 0b | 表明过热关断。 |
4 | STL_LRN_OK | R | 0b | 表明失速检测学习成功 |
3 | STALL | R | 0b | 表明存在电机失速情况 |
2 | RSVD | R | 0b | 保留。 |
1 | OL_B | R | 0b | 表明 BOUT 上的开路负载检测 |
0 | OL_A | R | 0b | 表明 AOUT 上的开路负载检测 |
IC 控制寄存器用于配置器件。状态寄存器支持读写。
表 7-21列出了控制寄存器的存储器映射寄存器。表 7-21中未列出的所有寄存器偏移地址都应视为保留的存储单元,并且不应修改寄存器内容。
地址 | 寄存器名称 | 部分 |
---|---|---|
0x03 | CTRL1 | Topic Link Label7.6.6 |
0x04 | CTRL2 | Topic Link Label7.6.7 |
0x05 | CTRL3 | Topic Link Label7.6.8 |
0x06 | CTRL4 | Topic Link Label7.6.9 |
0x07 | CTRL5 | Topic Link Label7.6.10 |
0x08 | CTRL6 | Topic Link Label7.6.11 |
0x09 | CTRL7 | Topic Link Label7.6.12 |
0x0A | CTRL8 | Topic Link Label7.6.13 |
0x0B | CTRL9 |
图 7-34中显示了 CTRL1 控制,表 7-22中对此进行了介绍。
读取/写入
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
TRQ_DAC [3:0] | RSVD | OL_MODE | RSVD | ||||
R/W-0000b | R/W-00b | R/W-0b | R/W-0b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7-4 | TRQ_DAC [3:0] | 读/写 | 0000b |
0000b = 100% 0001b = 93.75% 0010b = 87.5% 0011b = 81.25% 0100b = 75% 0101b = 68.75% 0110b = 62.5% 0111b = 56.25% 1000b = 50% 1001b = 43.75% 1010b = 37.5% 1011b = 31.25% 1100b = 25% 1101b = 18.75% 1110b = 12.5% 1111b = 6.25% |
3-2 | RSVD | 读/写 | 00b |
保留 |
1 | OL_MODE | 读/写 | 0b |
0b = 使用 CLR_FLT 位或 nSLEEP 复位脉冲清除锁存 OL 故障后,nFAULT 会被释放 1b = OL 故障情况消失后,nFAULT 会被立即释放 |
0 | RSVD | 读/写 | 0b |
保留 |
图 7-35中显示了 CTRL2,表 7-23中对此进行了介绍。
读取/写入
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
EN_OUT | RSVD | TOFF [1:0] | DECAY [2:0] | ||||
R/W-0b | R/W-00b | R/W-01b | R/W-111b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7 | EN_OUT | 读/写 | 0b | 写入“0”可禁用所有输出。 |
6-5 | RSVD | 读/写 | 00b | 保留 |
4-3 | TOFF [1:0] | 读/写 | 01b | 00b = 7µs 01b = 16µs 10b = 24µs 11b = 32µs |
2-0 | DECAY [2:0] | 读/写 | 111b | 000b = 提高慢速衰减,降低慢速衰减 001b = 提高慢速衰减,降低混合衰减 30% 010b = 提高慢速衰减,降低混合衰减 60% 011b = 提高慢速衰减,降低快速衰减 100b = 提高混合衰减 30%,降低混合衰减 30% 101b = 提高混合衰减 60%,降低混合衰减 60% 110b = 智能调优动态衰减 111b = 智能调优纹波控制 |
图 7-36中显示了 CTRL3,表 7-24中对此进行了介绍。
读取/写入
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
DIR | STEP | SPI_DIR | SPI_STEP | MICROSTEP_MODE [3:0] | |||
R/W-0b | R/W-0b | R/W-0b | R/W-0b | R/W-0110b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7 | DIR | 读/写 | 0b | 方向输入。SPI_DIR = 1 时,逻辑值“1”设置步进的方向。 |
6 | STEP | 读/写 | 0b | 步进输入。SPI_STEP = 1 时,逻辑值“1”会使分度器前进一步。该位会自行清除,并在写入“1”后自动变为“0”。 |
5 | SPI_DIR | 读/写 | 0b | 0b = DIR 的输出跟随输入引脚 1b = 输出跟随 SPI 寄存器 DIR |
4 | SPI_STEP | 读/写 | 0b | 0b = STEP 的输出跟随输入引脚 1b = 输出跟随 SPI 寄存器 STEP |
3-0 | MICROSTEP_MODE [3:0] | 读/写 | 0110b | 0000b = 100% 电流的全步进(两相励磁) 0001b = 71% 电流的全步进(两相励磁) 0010b = 非循环 1/2 步进 0011b = 1/2 步进 0100b = 1/4 步进 0101b = 1/8 步进 0110b = 1/16 步进 0111b = 1/32 步进 1000b = 1/64 步进 1001b = 1/128 步进 1010b = 1/256 步进 1011b 至 1111b = 保留 |
图 7-37中显示了 CTRL4,表 7-25中对此进行了介绍。
读取/写入
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
CLR_FLT | LOCK [2:0] | EN_OL | OCP_MODE | OTSD_MODE | OTW_REP | ||
R/W-0b | R/W-011b | R/W-0b | R/W-0b | R/W-0b | R/W-0b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7 | CLR_FLT | 读/写 | 0b |
向该位写入“1”可清除所有锁存故障位。写入后该位会自动复位。 |
6-4 | LOCK [2:0] | 读/写 | 011b |
写入 110b 可锁定设置并忽略后续寄存器写入,除非写入这些位和地址 0x06h 位 7 (CLR_FLT)。在解锁时写入除 110b 之外的任何序列没有任何影响。 向此寄存器写入 011b 可解锁所有寄存器。在锁定时写入除 011b 之外的任何序列没有任何影响。 |
3 | EN_OL | 读/写 | 0b |
写入“1”可启用开路负载检测 |
2 | OCP_MODE | 读/写 | 0b |
0b = 过流情况会导致锁存故障 1b = 过流情况会导致自动重试故障 |
1 | OTSD_MODE | 读/写 | 0b |
0b = 过热情况会导致锁存故障 1b = 过热情况会导致自动恢复故障 |
0 | TW_REP | 读/写 | 0b |
0b = 不会在 nFAULT 线路上报告过热或欠温警告 1b = 会在 nFAULT 线路上报告过热或欠温警告 |
图 7-38中显示了 CTRL5 控制,表 7-26中对此进行了介绍。
读取/写入
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RSVD | STL_LRN | EN_STL | STL_REP | RSVD | |||
R/W-00b | R/W-0b | R/W-0b | R/W-1b | R/W-000b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7-6 | RSVD | 读/写 | 00b |
保留。应始终为“00”。 |
5 | STL_LRN | 读/写 | 0b |
写入“1”可了解失速检测的失速计数。当失速学习过程完成后,该位会自动返回到“0”。 |
4 | EN_STL | 读/写 | 0b |
0b = 禁用失速检测 1b = 启用失速检测 |
3 | STL_REP | 读/写 | 1b |
0b = nFAULT 上未报告失速检测 1b = nFAULT 上已报告失速检测 |
2-0 | RSVD | 读/写 | 000b |
保留。应始终为“000”。 |
图 7-39中显示了 CTRL6,表 7-27中对此进行了介绍。
读取/写入
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
STALL_TH [7:0] | |||||||
R/W-00000011b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7-0 | STALL_TH [7:0] | 读/写 | 00000011b | 失速阈值的低 8 位。 000000000000b = 计数为 0 XXXXXXXXXXXXb = 计数为 1 到 4094 111111111111b = 计数为 4095 |
图 7-40中显示了 CTRL7,表 7-28中对此进行了介绍。
只读
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
RC_RIPPLE[1:0] | EN_SSC | TRQ_SCALE | STALL_TH[11:8] | ||||
R/W-00b | R/W-1b | R/W-0b | R/W-0000b |
位 | 字段 | 类型 | 默认值 | 说明 |
---|---|---|---|---|
7-6 | RC_RIPPLE[1:0] | 读/写 | 00b | 00b = 1% 波纹 01b = 2% 波纹 10b = 4% 波纹 11b = 6% 波纹 |
5 | EN_SSC | 读/写 | 1b | 1b = 已启用展频 0b = 已禁用展频 |
4 | TRQ_SCALE | 读/写 | 0b | 0b = 未应用任何扭矩计数调节 1b = 扭矩计数按系数 8 向上调节 |
3-0 | STALL_TH | 读/写 | 0000b | 失速阈值的高 4 位。 |