ZHCAB39E January   2022  – February 2022 TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S

 

  1.   商标
  2. 1引言
  3. 2PTO – PulseGen
    1. 2.1 PulseGen 实现概述
    2. 2.2 PulseGen 限制
    3. 2.3 PulseGen CLB 配置
    4. 2.4 PulseGen 输入和输出信号
  4. 3PTO – QepDiv
    1. 3.1 QepDiv 实现概述
    2. 3.2 QepDiv 限制
    3. 3.3 QepDiv 分频器设置和初始化
    4. 3.4 QepDiv CLB 配置
  5. 4PTO – Abs2Qep
    1. 4.1 Abs2Qep 芯片资源
    2. 4.2 Abs2Qep 工作原理
      1. 4.2.1 Abs2Qep 转换公式
      2. 4.2.2 Abs2Qep 转换示例
      3. 4.2.3 Abs2Qep 过零检测
    3. 4.3 Abs2Qep CLB 配置
      1. 4.3.1 Abs2Qep QEP-A/B 脉冲序列生成
      2. 4.3.2 Abs2Qep 停止锁存器
      3. 4.3.3 Abs2Qep 高级控制器 (HLC)
    4. 4.4 Abs2Qep 输入和输出信号
  6. 5PTO – QepOnClb QEP 解码器
    1. 5.1 QepOnClb 和 eQEP 的比较
    2. 5.2 QepOnClb 芯片资源
    3. 5.3 QepOnClb 工作原理
    4. 5.4 QepOnClb CLB 资源
      1. 5.4.1 QepOnClb QCLK 状态机
      2. 5.4.2 QepOnClb 方向解码
      3. 5.4.3 QepOnClb 错误检测
      4. 5.4.4 QepOnClb 仿真波形
  7. 6示例工程
    1. 6.1 硬件要求
    2. 6.2 安装 Code Composer Studio 和 C2000WARE-MOTORCONTROL-SDK™
    3. 6.3 导入并运行示例工程
    4. 6.4 PulseGen 示例
    5. 6.5 QepDiv 示例
    6. 6.6 Abs2Qep 示例
      1. 6.6.1 观察变量
      2. 6.6.2 测试信号
      3. 6.6.3 引脚用途和测试连接
    7. 6.7 QepOnClb 示例
      1. 6.7.1 观察变量
      2. 6.7.2 接头引脚连接
  8. 7库源代码和工程
    1. 7.1 查找库源代码
    2. 7.2 导入和构建库工程
    3. 7.3 PTO - PulseGen API
      1. 7.3.1 pto_pulsegen_runPulseGen
      2. 7.3.2 pto_startOperation
      3. 7.3.3 pto_pulsegen_setupPeriph
      4. 7.3.4 pto_pulsegen_reset
    4. 7.4 PTO - QepDiv API
      1. 7.4.1 pto_qepdiv_config
      2. 7.4.2 pto_startOperation
      3. 7.4.3 pto_qepdiv_setupPeriph
      4. 7.4.4 pto_qepdiv_reset
    5. 7.5 PTO - Abs2Qep API
      1. 7.5.1 Abs2Qep API 配置
      2. 7.5.2 pto_abs2qep_runPulseGen
      3. 7.5.3 pto_abs2qep_setupPeriph
      4. 7.5.4 pto_abs2qep_translatePosition
    6. 7.6 PTO - QepOnClb API
      1. 7.6.1 pto_qeponclb_setupPeriph
      2. 7.6.2 pto_qeponclb_initCLBQEP
      3. 7.6.3 pto_qeponclb_configMaxCounterPos
      4. 7.6.4 pto_qeponclb_enableCLBQEP
      5. 7.6.5 pto_qeponclb_resetCLBQEP
      6. 7.6.6 pto_qeponclb_getCounterVal
      7. 7.6.7 pto_qeponclb_getCLBQEPPos
      8. 7.6.8 pto_qeponclb_clearFIFOptr
  9. 8在工程中使用参考 API
    1. 8.1 将 PTO 支持添加到工程中
    2. 8.2 往返于 CLB 的路由
    3. 8.3 初始化步骤
      1. 8.3.1 PTO-PulseGen API 初始化
      2. 8.3.2 PTO-QepDiv API 初始化
      3. 8.3.3 PTO-Abs2Qep API 初始化
      4. 8.3.4 PTO-QepOnClb API 初始化
  10. 9参考文献
  11.   修订历史记录

将 PTO 支持添加到工程中

按照以下说明将 PTO API 添加到工程中。

注: 具体位置可能有所不同,这取决于安装 C2000Ware_MotorControl_SDK 的位置以及工程正在使用的其他库。
  1. 在应用程序中包含 PTO 头文件,即 {ProjectName}.h
    #include "pto_pulsegen.h"
    #include "pto_qepdiv.h"
    #include "pto_abs2qep.h"
    #include "pto_qeponclb.h"
  2. 在 Code Composer Studio (CCS) 中,右键点击工程,然后导航至 Project Properties → Build → C2000 Compiler → Include Options
    1. 将头文件目录添加到“#include search path”下(请参阅图 8-1

      PTO 头文件的路径为 ${SDK_ROOT}\libraries\position_sensing\pto\include

      注: ${SDK_ROOT} 是 CCS 用来指示 SDK 安装位置的变量。可在 Project Properties → Resource → Linked Resources 下查看该变量的定义。
    GUID-6F56CF03-C5DE-4EEB-84D8-24D9322C0153-low.png图 8-1 使用 PTO 参考 API 的工程的编译器包含选项
  3. 将已编译的库文件添加到工程中:
    1. 在“Project Explorer”窗口中右键点击工程名称
    2. 导航至“Project Properties → Build → C2000 Linker → File Search Path
    3. 将库目录添加到“library search path”下
    4. 将库的名称添加到“Include library file”下
    5. 点击“Apply and Close
    PTO 编译的库目标文件位于:[C2000Ware_MotorControl_SDK]\libraries\position_sensing\pto\lib

图 8-2图 8-3 中显示的示例展示了为包含 PTO API 编译的目标文件,需要对链接器选项进行哪些更改。

GUID-032CA693-CAE7-40F0-A28B-C0F877F734CD-low.png图 8-2 C2000™ 链接器选项 – PulseGen
GUID-CB6DE833-86E6-485F-BC1B-4C2C72F97837-low.png图 8-3 C2000 链接器选项 – QepDiv
注: 具体位置可能有所不同,这取决于安装 C2000Ware_MotorControl_SDK 的位置以及工程正在使用的其他库。