ZHCUD90 August   2025 F29H850TU

 

  1.   1
  2.   摘要
  3.   商标
  4. 1简介
    1. 1.1 硬件方框图
    2. 1.2 软件流程图
    3. 1.3 使用的 MCU 资源
  5. 2在 TI 硬件上运行带 QEP 的伺服驱动器
    1. 2.1 支持的硬件
    2. 2.2 硬件设置
      1. 2.2.1 LAUNCHXL-F29H85X 设置
      2. 2.2.2 DAC128S085EVM 设置(可选)
      3. 2.2.3 BOOSTXL-3PHGANINV 设置
      4. 2.2.4 BOOSTXL-LMG2100-MD 设置
      5. 2.2.5 BP-AMC0106-LMG-MD
      6. 2.2.6 电机设置
    3. 2.3 实验软件
      1. 2.3.1 软件开发环境
      2. 2.3.2 工程组织结构
      3. 2.3.3 软件配置
      4. 2.3.4 调试接口
        1. 2.3.4.1 数据日志
        2. 2.3.4.2 数模转换器
    4. 2.4 通过增量步骤测试工程
      1. 2.4.1 观察变量
      2. 2.4.2 第 1 步 硬件设置验证
        1. 2.4.2.1 构建、加载和运行工程
      3. 2.4.3 第 2 步 开环控制
        1. 2.4.3.1 构建、加载和运行工程
      4. 2.4.4 第 3 步 电流闭环
        1. 2.4.4.1 构建、加载和运行工程
      5. 2.4.5 第 4 步 速度闭环和电流闭环
        1. 2.4.5.1 构建和加载工程
  6.   参考资料

数模转换器

DAC128S 软件模块支持 节 2.2.2 中所述的 DAC EVM。该软件模块能够将最多八个软件变量转换为 12 位整数值,并通过 SPI 将该数据传输到 DAC EVM。

 DAC128S 方框图图 2-7 DAC128S 方框图

要使用 EVM 功能,请按如下步骤操作:

  1. 节 2.2.2 中所述连接硬件。
  2. 将符号 DAC128S_ENABLE 添加到工程的预定义符号中。
  3. libraries/dacs/dac128s085.h 中选择通道数。
  4. 调用 src_board/diagnostics.c 中的 setupDAC1285S() 函数:
    dac128s.ptrData[0] = &motorVars_M1.angleENC_rad;                  // CH_A
    dac128s.ptrData[1] = &motorVars_M1.senseData.I_A.value[0];        // CH_B
    dac128s.ptrData[2] = &motorVars_M1.senseData.I_A.value[1];        // CH_C
    dac128s.ptrData[3] = &motorVars_M1.senseData.I_A.value[2];        // CH_D
    1. 可以修改此函数来输出不同的信号。对于此工程,您可以监测角度和检测到的电流值,如此处所示。
  5. 发送数据。
    // Write the variables data value to DAC128S085 through the SPI
    DAC128S_writeData(dac128sHandle);
    1. 在执行 src_control/motor1_drive.c 中的控制中断 (motor1ctrlISR()) 期间,代码会定期发送数据。
    2. 发送的 DAC 输出路数取决于 dac128s085.h 中的配置。

该 EVM 具有一个八通道 12 位数模转换器 (DAC)。根据提供的信息,输出路数设置为 4,因为大多数示波器只有四个探头。更多的输出会消耗转换和传输数据的时间,这可能会影响其他任务可用的时间。不过,用户可以通过更改 libraries/dacs/dac128s085.h 文件中的定义,将输出路数设置为 1 到 8 之间。