ZHCSQH8B September   2025  – January 2026 TCAN5102-Q1

ADVANCE INFORMATION  

  1.   1
  2. 特性
  3. 应用
  4. 说明
  5. 引脚配置和功能
  6. 规格
    1. 5.1 绝对最大额定值
    2. 5.2 ESD 等级
    3. 5.3 建议运行条件
    4. 5.4 热性能信息
    5. 5.5 电源特性
    6. 5.6 电气特性
    7. 5.7 时序要求
    8. 5.8 开关特性
    9. 5.9 I2C 总线时序要求
  7. 参数测量信息
  8. 详细说明
    1. 7.1 概述
    2. 7.2 功能方框图
    3. 7.3 特性说明
      1. 7.3.1  VDD
      2. 7.3.2  PROG 引脚
      3. 7.3.3  DIGFLTR 引脚
      4. 7.3.4  GPIOx 和引脚多路复用特殊功能
        1. 7.3.4.1 GPIO 同步
      5. 7.3.5  EEPROM
      6. 7.3.6  SPI 控制器
      7. 7.3.7  UART 控制器
      8. 7.3.8  I2C 控制器
        1. 7.3.8.1 I2C 总线卡滞恢复
      9. 7.3.9  PWM 控制器
      10. 7.3.10 CAN 收发器控制引脚
      11. 7.3.11 欠压锁定与未供电器件
    4. 7.4 器件功能模式
      1. 7.4.1 初始化模式
      2. 7.4.2 睡眠模式
      3. 7.4.3 正常模式
    5. 7.5 编程
      1. 7.5.1 通过 SPI 外设模式进行器件编程
      2. 7.5.2 CAN FD Light 协议
        1. 7.5.2.1 CAN 帧格式
      3. 7.5.3 消息 RAM (MRAM) 和 IP 使能
      4. 7.5.4 SPI 控制器
        1. 7.5.4.1 SPI 引脚
          1. 7.5.4.1.1 SPI 时钟 (SCLK)
          2. 7.5.4.1.2 外设输入控制器输出 (PICO)
          3. 7.5.4.1.3 外设输出控制器输入 (POCI)
          4. 7.5.4.1.4 片选 (CS 或 nCS)
        2. 7.5.4.2 SPI 时钟发生器
        3. 7.5.4.3 SPI 控制协议
          1. 7.5.4.3.1 SPI 写入示例 1
          2. 7.5.4.3.2 SPI 读取示例 1
      5. 7.5.5 UART 控制器
        1. 7.5.5.1 UART 波特率生成和分数分频值
        2. 7.5.5.2 UART 控制协议
          1. 7.5.5.2.1 UART 写入示例 1
          2. 7.5.5.2.2 UART 读取示例 1
      6. 7.5.6 I2C 控制器
        1. 7.5.6.1 I2C 波特率生成
        2. 7.5.6.2 I2C 总线卡滞恢复
        3. 7.5.6.3 I2C 控制协议
          1. 7.5.6.3.1 I2C 写入示例 1
          2. 7.5.6.3.2 I2C 读取示例 1
      7. 7.5.7 PWM 和梯形 PWM 斜坡曲线
        1. 7.5.7.1 梯形斜坡控制
          1. 7.5.7.1.1 占空比斜坡控制
          2. 7.5.7.1.2 开关频率斜坡控制
          3. 7.5.7.1.3 关断斜坡
        2. 7.5.7.2 PWM 时钟发生器
        3. 7.5.7.3 PWM 占空比
        4. 7.5.7.4 斜坡斜率和标度因子
          1. 7.5.7.4.1 占空比斜坡斜率
          2. 7.5.7.4.2 开关频率斜坡斜率
        5. 7.5.7.5 自动减速和停止条件
          1. 7.5.7.5.1 具有脉冲计数功能的自动减速关断斜坡
          2. 7.5.7.5.2 通过 GPIO 输入实现自动减速/关断斜坡
        6. 7.5.7.6 占空比斜坡示例
        7. 7.5.7.7 频率斜坡示例
        8. 7.5.7.8 静态开启示例
    6. 7.6 寄存器映射
      1. 7.6.1 器件寄存器
        1. 7.6.1.1  DEV_ID[y] 寄存器(偏移 = 0h + formula)[复位 = 0032303135414354h]
        2. 7.6.1.2  DEV_ID_REV 寄存器(偏移 = 8h)[复位 = 10h]
        3. 7.6.1.3  DEV_CMD 寄存器(偏移 = 9h)[复位 = 00h]
        4. 7.6.1.4  DEV_CFG_EN 寄存器(偏移 = Ah)[复位 = 00h]
        5. 7.6.1.5  DEV_CFG_BR 寄存器(偏移 = Bh)[复位 = 10h]
        6. 7.6.1.6  DEV_CFG_ID_0 寄存器(偏移 = Ch)[复位 = 00h]
        7. 7.6.1.7  DEV_CFG_ID_1 寄存器(偏移 = Dh)[复位 = 00h]
        8. 7.6.1.8  DEV_CFG_ID_BCST_0 寄存器(偏移 = Eh)[复位 = 00h]
        9. 7.6.1.9  DEV_CFG_ID_BCST_1 寄存器(偏移 = Fh)[复位 = 00h]
        10. 7.6.1.10 DEV_CFG_ID_BCST_MASK_0 寄存器(偏移 = 10h)[复位 = 00h]
        11. 7.6.1.11 DEV_CFG_ID_BCST_MASK_1 寄存器(偏移 = 11h)[复位 = 00h]
        12. 7.6.1.12 DEV_CFG_NVM_PROG_CODE 寄存器(偏移 = 12h)[复位 = 00h]
        13. 7.6.1.13 DEV_CFG_NVM_PROG 寄存器(偏移 = 13h)[复位 = 00h]
        14. 7.6.1.14 INT_CFG 寄存器(偏移 = 1Dh)[复位 = 00h]
        15. 7.6.1.15 DEV_IE_0 寄存器(偏移 = 1Eh)[复位 = 00h]
        16. 7.6.1.16 DEV_IE_1 寄存器(偏移 = 1Fh)[复位 = 00h]
        17. 7.6.1.17 MRAM_IP_CFG 寄存器(偏移 = 20h)[复位 = 00h]
        18. 7.6.1.18 IO_CFG_0 寄存器(偏移 = 21h)[复位 = 00h]
        19. 7.6.1.19 IO_CFG_1 寄存器(偏移 = 22h)[复位 = 00h]
        20. 7.6.1.20 IO_OE_0 寄存器(偏移 = 23h)[复位 = 00h]
        21. 7.6.1.21 IO_OE_1 寄存器(偏移 = 24h)[复位 = 00h]
        22. 7.6.1.22 IO_OD_0 寄存器(偏移 = 25h)[复位 = 00h]
        23. 7.6.1.23 IO_OD_1 寄存器(偏移 = 26h)[复位 = 00h]
        24. 7.6.1.24 IO_RE_0 寄存器(偏移 = 27h)[复位 = 00h]
        25. 7.6.1.25 IO_RE_1 寄存器(偏移 = 28h)[复位 = 00h]
        26. 7.6.1.26 IO_PU_0 寄存器(偏移 = 29h)[复位 = 00h]
        27. 7.6.1.27 IO_PU_1 寄存器(偏移 = 2Ah)[复位 = 00h]
        28. 7.6.1.28 IO_POL_0 寄存器(偏移 = 2Bh)[复位 = 00h]
        29. 7.6.1.29 IO_POL_1 寄存器(偏移 = 2Ch)[复位 = 00h]
        30. 7.6.1.30 IO_OUTPUT_0 寄存器(偏移 = 2Dh)[复位 = 00h]
        31. 7.6.1.31 IO_OUTPUT_1 寄存器(偏移 = 2Eh)[复位 = 00h]
        32. 7.6.1.32 IO_INPUT_0 寄存器(偏移 = 2Fh)[复位 = 00h]
        33. 7.6.1.33 IO_INPUT_1 寄存器(偏移 = 30h)[复位 = 00h]
        34. 7.6.1.34 IR_STATUS 寄存器(偏移 = 31h)[复位 = 00h]
        35. 7.6.1.35 DEV_IR 寄存器(偏移 = 32h)[复位 = 00h]
        36. 7.6.1.36 SPI_IR 寄存器(偏移 = 33h)[复位 = 00h]
        37. 7.6.1.37 UART_IR 寄存器(偏移 = 34h)[复位 = 00h]
        38. 7.6.1.38 I2C_IR 寄存器(偏移 = 35h)[复位 = 00h]
        39. 7.6.1.39 PWM0_IR 寄存器(偏移 = 36h)[复位 = 00h]
        40. 7.6.1.40 PWM1_IR 寄存器(偏移 = 37h)[复位 = 00h]
      2. 7.6.2 SPI 寄存器
        1. 7.6.2.1  SPI_CREL 寄存器(偏移 = 1000h)[复位 = 87h]
        2. 7.6.2.2  SPI_SCRATCH 寄存器(偏移 = 1001h)[复位 = 00h]
        3. 7.6.2.3  SPI_CTRL 寄存器(偏移 = 1002h)[复位 = 00h]
        4. 7.6.2.4  SPI_CFG_0 寄存器(偏移 = 1003h)[复位 = 00h]
        5. 7.6.2.5  SPI_CFG_1 寄存器(偏移 = 1004h)[复位 = 00h]
        6. 7.6.2.6  SPI_DR_0 寄存器(偏移 = 1005h)[复位 = 00h]
        7. 7.6.2.7  SPI_DR_1 寄存器(偏移 = 1006h)[复位 = 00h]
        8. 7.6.2.8  SPI_DR_2 寄存器(偏移 = 1007h)[复位 = 00h]
        9. 7.6.2.9  SPI_DR_3 寄存器(偏移 = 1008h)[复位 = 00h]
        10. 7.6.2.10 SPI_CHAN_EN 寄存器(偏移 = 1009h)[复位 = 00h]
        11. 7.6.2.11 SPI_CS_POL 寄存器(偏移 = 100Ah)[复位 = 00h]
        12. 7.6.2.12 SPI_FIFO_CTRL 寄存器(偏移 = 100Bh)[复位 = 0h]
        13. 7.6.2.13 SPI_IE_0 寄存器(偏移 = 100Ch)[复位 = 00h]
        14. 7.6.2.14 SPI_IE_1 寄存器(偏移 = 100Dh)[复位 = 00h]
        15. 7.6.2.15 SPI_IR 寄存器(偏移 = 100Eh)[复位 = 00h]
        16. 7.6.2.16 SPI_FS 寄存器(偏移 = 100Fh)[复位 = 80h]
        17. 7.6.2.17 SPI_TX_FIFO 寄存器(偏移 =1010h)[复位 = 0000h]
        18. 7.6.2.18 SPI_RX_FIFO 寄存器(偏移 = 1010h)[复位 = 0000h]
        19. 7.6.2.19 SPI_RXFS 寄存器(偏移 = 1011h)[复位 = 00h]
        20. 7.6.2.20 SPI_TXFS 寄存器(偏移 = 1012h)[复位 = 00h]
        21. 7.6.2.21 SPI_TXES 寄存器(偏移 = 1013h)[复位 = 00h]
      3. 7.6.3 SPI 数据 FIFO
        1. 7.6.3.1 SPI 发送 FIFO(地址 = h1010)
        2. 7.6.3.2 SPI 接收 FIFO(地址 = h1010)
      4. 7.6.4 UART 寄存器
        1. 7.6.4.1  UART_CREL 寄存器(偏移 = 2000h)[复位 = 10h]
        2. 7.6.4.2  UART_SCRATCH 寄存器(偏移 = 2001h)[复位 = 00h]
        3. 7.6.4.3  UART_CTRL 寄存器(偏移 = 2002h)[复位 = 04h]
        4. 7.6.4.4  UART_BR_LSB 寄存器(偏移 = 2003h)[复位 = 00h]
        5. 7.6.4.5  UART_BR_MSB 寄存器(偏移 = 2004h)[复位 = 00h]
        6. 7.6.4.6  UART_BR_FRAC 寄存器(偏移 = 2005h)[复位 = 00h]
        7. 7.6.4.7  UART_FIFO_CTRL 寄存器(偏移 = 2006h)[复位 = 01h]
        8. 7.6.4.8  UART_IE_0 寄存器(偏移 = 2007h)[复位 = 00h]
        9. 7.6.4.9  UART_IE_1 寄存器(偏移 = 2008h)[复位 = 00h]
        10. 7.6.4.10 UART_IR 寄存器(偏移 = 2009h)[复位 = 00h]
        11. 7.6.4.11 UART_STATUS 寄存器(偏移 = 200Ah)[复位 = 60h]
        12. 7.6.4.12 UART_RXFS 寄存器(偏移 = 200Bh)[复位 = 00h]
        13. 7.6.4.13 UART_TXFS 寄存器(偏移 = 200Ch)[复位 = 00h]
        14. 7.6.4.14 UART_RX_FIFO 寄存器(偏移 = 2010h)[复位 = 00h]
        15. 7.6.4.15 UART_TX_FIFO 寄存器(偏移 = 2010h)[复位 = 00h]
        16. 7.6.4.16 UART_RX_ERR_STATUS 寄存器(偏移 = 2011h)[复位 = 00h]
      5. 7.6.5 UART 数据 FIFO
        1. 7.6.5.1 UART 发送 FIFO(地址 = h2010)
        2. 7.6.5.2 UART 接收 FIFO(地址 = h2010)
        3. 7.6.5.3 UART 接收错误状态(地址 = h2011)
      6. 7.6.6 I2C 寄存器
        1. 7.6.6.1  I2C_CREL 寄存器(偏移 = 3000h)[复位 = 10h]
        2. 7.6.6.2  I2C_SCRATCH 寄存器(偏移 = 3001h)[复位 = 00h]
        3. 7.6.6.3  I2C_CTRL 寄存器(偏移 = 3002h)[复位 = 18h]
        4. 7.6.6.4  I2C_BR 寄存器(偏移 = 3003h)[复位 = 18h]
        5. 7.6.6.5  I2C_FIFO_CTRL 寄存器(偏移 = 3004h)[复位 = 00h]
        6. 7.6.6.6  I2C_IE_0 寄存器(偏移 = 3005h)[复位 = 00h]
        7. 7.6.6.7  I2C_IE_1 寄存器(偏移 = 3006h)[复位 = 00h]
        8. 7.6.6.8  I2C_IR 寄存器(偏移 = 3007h)[复位 = 00h]
        9. 7.6.6.9  I2C_STATUS 寄存器(偏移 = 3008h)[复位 = XXh]
        10. 7.6.6.10 I2C_FS 寄存器(偏移 = 3009h)[复位 = 00h]
        11. 7.6.6.11 I2C_RXFS 寄存器(偏移 = 300Ah)[复位 = 00h]
        12. 7.6.6.12 I2C_TXFS 寄存器(偏移 = 300Bh)[复位 = 00h]
        13. 7.6.6.13 I2C_TXES 寄存器(偏移 = 300Ch)[复位 = 00h]
      7. 7.6.7 I2C 数据 FIFO
        1. 7.6.7.1 I2C 发送 FIFO(地址 = h3010)
        2. 7.6.7.2 I2C 接收 FIFO(地址 = h3010)
      8. 7.6.8 PWM0 寄存器
        1. 7.6.8.1  PWM1_ACTION 寄存器(偏移 = 4000h)[复位 = 00h]
        2. 7.6.8.2  PWM0_CTRL 寄存器(偏移 = 4000h)[复位 = 11h]
        3. 7.6.8.3  PWM0_IE0 寄存器(偏移 = 4001h)[复位 = 00h]
        4. 7.6.8.4  PWM0_IE1 寄存器(偏移 = 4002h)[复位 = 00h]
        5. 7.6.8.5  PWM0_IR 寄存器(偏移 = 4003h)[复位 = 00h]
        6. 7.6.8.6  PWM0_STATUS 寄存器(偏移 = 4004h)[复位 = 00h]
        7. 7.6.8.7  PWM0_CUR_PULSE[y] 寄存器(偏移 = 4005h + 公式)[复位 = 00000000h]
        8. 7.6.8.8  PWM0_CUR_VAL_MSB 寄存器(偏移 = 4009h)[复位 = 00h]
        9. 7.6.8.9  PWM0_CUR_VAL_LSB 寄存器(偏移 = 400Ah)[复位 = 00h]
        10. 7.6.8.10 PWM0_CONST_MSB 寄存器(偏移 = 400Bh)[复位 = 00h]
        11. 7.6.8.11 PWM0_CONST_LSB 寄存器(偏移 = 400Ch)[复位 = 00h]
        12. 7.6.8.12 PWM0_STOP_VAL_FRAC_F 寄存器(偏移 = 400Dh)[复位 = 00h]
        13. 7.6.8.13 PWM0_STOP_VAL_MSB 寄存器(偏移 = 400Eh)[复位 = 00h]
        14. 7.6.8.14 PWM0_STOP_VAL_LSB 寄存器(偏移 = 400Fh)[复位 = 00h]
        15. 7.6.8.15 PWM0_STOP_SL_MSB 寄存器(偏移 = 4010h)[复位 = 00h]
        16. 7.6.8.16 PWM0_STOP_SL_MID 寄存器(偏移 = 4011h)[复位 = 00h]
        17. 7.6.8.17 PWM0_STOP_SL_LSB 寄存器(偏移 = 4012h)[复位 = 00h]
        18. 7.6.8.18 PWM0_START_VAL_FRAC_F 寄存器(偏移 = 4013h)[复位 = 00h]
        19. 7.6.8.19 PWM0_START_VAL_MSB 寄存器(偏移 = 4014h)[复位 = 00h]
        20. 7.6.8.20 PWM0_START_VAL_LSB 寄存器(偏移 = 4015h)[复位 = 00h]
        21. 7.6.8.21 PWM0_START_SL_MSB 寄存器(偏移 = 4016h)[复位 = 00h]
        22. 7.6.8.22 PWM0_START_SL_MID 寄存器(偏移 = 4017h)[复位 = 00h]
        23. 7.6.8.23 PWM0_START_SL_LSB 寄存器(偏移 = 4018h)[复位 = 00h]
        24. 7.6.8.24 PWM0_END_VAL_CONST_FRAC_F 寄存器(偏移 = 4019h)[复位 = 00h]
        25. 7.6.8.25 PWM0_END_VAL_MSB 寄存器(偏移 = 401Ah)[复位 = 00h]
        26. 7.6.8.26 PWM0_END_VAL_LSB 寄存器(偏移 = 401Bh)[复位 = 00h]
        27. 7.6.8.27 PWM0_PULSE_STOP_RAMP[y] 寄存器(偏移 = 401Ch + 公式)[复位 = 00000000h]
        28. 7.6.8.28 PWM0_PULSE_MAX[y] 寄存器(偏移 = 4020h + 公式)[复位 = 00000000h]
        29. 7.6.8.29 PWM0_ACTION 寄存器(偏移 = 4024h)[复位 = 00h]
        30. 7.6.8.30 PWM0_IAS_CTRL 寄存器(偏移 = 4030h)[复位 = 00h]
      9. 7.6.9 PWM1 寄存器
        1. 7.6.9.1  PWM1_CTRL 寄存器(偏移 = 4100h)[复位 = 11h]
        2. 7.6.9.2  PWM1_IE0 寄存器(偏移 = 4101h)[复位 = 00h]
        3. 7.6.9.3  PWM1_IE1 寄存器(偏移 = 4102h)[复位 = 00h]
        4. 7.6.9.4  PWM1_IR 寄存器(偏移 = 4103h)[复位 = 00h]
        5. 7.6.9.5  PWM1_STATUS 寄存器(偏移 = 4104h)[复位 = 00h]
        6. 7.6.9.6  PWM1_CUR_PULSE[y] 寄存器(偏移 = 4105h + 公式)[复位 = 00000000h]
        7. 7.6.9.7  PWM1_CUR_VAL_MSB 寄存器(偏移 = 4109h)[复位 = 00h]
        8. 7.6.9.8  PWM1_CUR_VAL_LSB 寄存器(偏移 = 410Ah)[复位 = 00h]
        9. 7.6.9.9  PWM1_CONST_MSB 寄存器(偏移 = 410Bh)[复位 = 00h]
        10. 7.6.9.10 PWM1_CONST_LSB 寄存器(偏移 = 410Ch)[复位 = 00h]
        11. 7.6.9.11 PWM1_STOP_VAL_FRAC_F 寄存器(偏移 = 410Dh)[复位 = 00h]
        12. 7.6.9.12 PWM1_STOP_VAL_MSB 寄存器(偏移 = 410Eh)[复位 = 00h]
        13. 7.6.9.13 PWM1_STOP_VAL_LSB 寄存器(偏移 = 410Fh)[复位 = 00h]
        14. 7.6.9.14 PWM1_STOP_SL_MSB 寄存器(偏移 = 4110h)[复位 = 00h]
        15. 7.6.9.15 PWM1_STOP_SL_MID 寄存器(偏移 = 4111h)[复位 = 00h]
        16. 7.6.9.16 PWM1_STOP_SL_LSB 寄存器(偏移 = 4112h)[复位 = 00h]
        17. 7.6.9.17 PWM1_START_VAL_FRAC_F 寄存器(偏移 = 4113h)[复位 = 00h]
        18. 7.6.9.18 PWM1_START_VAL_MSB 寄存器(偏移 = 4114h)[复位 = 00h]
        19. 7.6.9.19 PWM1_START_VAL_LSB 寄存器(偏移 = 4115h)[复位 = 00h]
        20. 7.6.9.20 PWM1_START_SL_MSB 寄存器(偏移 = 4116h)[复位 = 00h]
        21. 7.6.9.21 PWM1_START_SL_MID 寄存器(偏移 = 4117h)[复位 = 00h]
        22. 7.6.9.22 PWM1_START_SL_LSB 寄存器(偏移 = 4118h)[复位 = 00h]
        23. 7.6.9.23 PWM1_END_VAL_CONST_FRAC_F 寄存器(偏移 = 4119h)[复位 = 00h]
        24. 7.6.9.24 PWM1_END_VAL_MSB 寄存器(偏移 = 411Ah)[复位 = 00h]
        25. 7.6.9.25 PWM1_END_VAL_LSB 寄存器(偏移 = 411Bh)[复位 = 00h]
        26. 7.6.9.26 PWM1_PULSE_STOP_RAMP[y] 寄存器(偏移 = 411Ch + 公式)[复位 = 00000000h]
        27. 7.6.9.27 PWM1_PULSE_MAX[y] 寄存器(偏移 = 4120h + 公式)[复位 = 00000000h]
        28. 7.6.9.28 PWM1_ACTION 寄存器(偏移 = 4124h)[复位 = 00h]
        29. 7.6.9.29 PWM1_IAS_CTRL 寄存器(偏移 = 4130h)[复位 = 00h]
  9. 应用和实施
    1. 8.1 应用信息
    2. 8.2 典型应用
      1. 8.2.1 设计要求
      2. 8.2.2 详细设计过程
    3. 8.3 电源相关建议
    4. 8.4 布局
      1. 8.4.1 布局指南
      2. 8.4.2 布局示例
  10. 器件和文档支持
    1. 9.1 文档支持
      1. 9.1.1 相关文档
    2. 9.2 接收文档更新通知
    3. 9.3 支持资源
    4. 9.4 商标
    5. 9.5 静电放电警告
    6. 9.6 术语表
  11. 10修订历史记录
  12. 11机械、封装和可订购信息
    1. 11.1 机械数据

频率斜坡示例

本示例为配置具有以下参数的开关频率斜坡的基础示例。

TCAN5102-Q1 PWM 开关频率斜坡示例图 7-17 PWM 开关频率斜坡示例
表 7-46 设计参数和假设
参数
开关频率 20kHz
输出分辨率 8 位
斜率标度 0b000 (1/65536)

上图所示的斜坡曲线可分解为 4 个独立的梯形斜坡。

  1. 导通斜坡:在 30 秒内从 100Hz 达到 2kHz
  2. 导通斜坡:以 300Hz/s 的速率斜升至 3kHz
  3. 导通斜坡:0.5 秒内从 2kHz 阶跃至 1kHz
  4. 关断斜坡:以 100Hz/s 的速率斜升至 500Hz

改变斜率值的目的是说明如何从绝对时间或变化率目标计算斜率值。由于本示例由 4 个独立斜坡组成,下面对每个斜坡进行详细说明。

表 7-47 斜坡 1:在 30 秒内从 100Hz 达到 2kHz
步骤 参数 示例 说明
1 起始值 40MHz / (100Hz × 28) = 1562.5 计算起始频率分频值
TRUNC(1562.5) = 1562 计算分频值的整数部分 d1562 或 0x61A
ROUND(0.5 × 128) = 64 计算分频值的小数部分 d64 或 0x40
2 停止值 40MHz / (2kHz × 28) = 78.125 计算停止频率分频值
TRUNC(78.125) = 78 计算分频值的整数部分 d78 或 0x4E
ROUND(0.125 × 128) = 16 计算分频值的小数部分 d16 或 0x10
3 斜率计算 (2kHz - 100Hz) / 30 s = 63.33Hz/s 计算斜率,以 Hz/s 为单位
63.33 × 10µs = 0.06333Hz/10µs 将斜率转换为 Hz/10µs
TRUNC(0.06333) = 0 计算斜率的整数值 d0 或 0x00
ROUND(0.06333 × 65536) = 42 根据斜率比例因子计算小数部分值。 d42 或 0x02A
表 7-48 斜坡 2:以 300Hz/s 的速率斜升至 3kHz
步骤 参数 示例 说明
1 起始值 - 无需计算,因为我们将设置“使用当前 PWM 值”标志 -
2 停止值 40MHz / (3kHz × 28) = 52.083 计算停止频率分频值
TRUNC(52.083) = 52 计算分频值的整数部分 d52 或 0x34
ROUND(0.083 × 128) = 12 计算分频值的小数部分 d12 或 0x0C
3 斜率计算 300Hz/s(已提供) 计算斜率,以 Hz/s 为单位
300 × 10µs = 0.003Hz/10µs 将斜率转换为 Hz/10µs
TRUNC(0.003) = 0 计算斜率的整数值 d0 或 0x00
ROUND(0.003 × 65536) = 197 根据斜率比例因子计算小数部分值。 d197 或 0x0C5
表 7-49 斜坡 3:在 0.5 秒内从 2kHz 斜升至 1kHz
步骤 参数 示例 说明
1 起始值 40MHz / (2kHz × 28) = 78.125 计算起始频率分频值
TRUNC(78.125) = 78 计算分频值的整数部分 d78 或 0x4E
ROUND(0.125 × 128) = 16 计算分频值的小数部分 d16 或 0x10
2 停止值 40MHz / (1kHz × 28) = 156.25 计算停止频率分频值
TRUNC(156.25) = 156 计算分频值的整数部分 d156 或 0x9C
ROUND(0.25 × 128) = 32 计算分频值的小数部分 d32 或 0x20
3 斜率计算 (2kHz - 1kHz) / 0.5s = 2000Hz/s 计算斜率,以 Hz/s 为单位
2000 × 10µs = 0.02Hz/10µs 将斜率转换为 Hz/10µs
TRUNC(0.02) = 0 计算斜率的整数值 d0 或 0x00
ROUND(0.02 × 65536) = 1311 根据斜率比例因子计算小数部分值。 d1311 或 0x51F
表 7-50 斜坡 4:以 100Hz/s 的速率斜升至 500Hz
步骤 参数 示例 说明
1 起始值 - 不用于停止斜坡。始终使用当前值。 -
2 停止值 40MHz / (500Hz × 28) = 312.5 计算停止频率分频值
TRUNC(312.5) = 312 计算分频值的整数部分 d312 或 0x138
ROUND(0.5 × 128) = 64 计算分频值的小数部分 d64 或 0x40
3 斜率计算 100Hz/s(已提供) 计算斜率,以 Hz/s 为单位
100 × 10µs = 0.001Hz/10µs 将斜率转换为 Hz/10µs
TRUNC(0.001) = 0 计算斜率的整数值 d0 或 0x00
ROUND(0.001 × 65536) = 66 根据斜率比例因子计算小数部分值。 d66 或 0x042