SPRAC77E
January 2022 – February 2022
TMS320F28379D
,
TMS320F28379D-Q1
,
TMS320F28379S
Trademarks
1
Introduction
2
PTO – PulseGen
2.1
PulseGen Implementation Overview
2.2
PulseGen Limitations
2.3
PulseGen CLB Configuration
2.4
PulseGen Input and Output Signals
3
PTO – QepDiv
3.1
QepDiv Implementation Overview
3.2
QepDiv Limitations
3.3
QepDiv Divider Settings and Initialization
3.4
QepDiv CLB Configuration
4
PTO – Abs2Qep
4.1
Abs2Qep Chip resources
4.2
Abs2Qep Theory of Operation
4.2.1
Abs2Qep Translation Equations
4.2.2
Abs2Qep Translation Example
4.2.3
Abs2Qep Zero Cross Detection
4.3
Abs2Qep CLB Configuration
4.3.1
Abs2Qep QEP-A/B Pulse Train Generation
4.3.2
Abs2Qep Halt Latch
4.3.3
Abs2Qep High Level Controller (HLC)
4.4
Abs2Qep Input and Output Signals
5
PTO – QepOnClb QEP Decoder
5.1
QepOnClb and eQEP Comparison
5.2
QepOnClb Chip resources
5.3
QepOnClb Theory of Operation
5.4
QepOnClb CLB Resources
5.4.1
QepOnClb QCLK State Machine
5.4.2
QepOnClb Direction Decode
5.4.3
QepOnClb Error Detection
5.4.4
QepOnClb Simulation Waveforms
6
Example Projects
6.1
Hardware Requirements
6.2
Installing Code Composer Studio and C2000WARE-MOTORCONTROL-SDK™
6.3
Import and Run Example Project
6.4
PulseGen Example
6.5
QepDiv Example
6.6
Abs2Qep Example
6.6.1
Watch Variables
6.6.2
Test Signals
6.6.3
Pin Usage and Test Connections
6.7
QepOnClb Example
6.7.1
Watch Variables
6.7.2
Header Pin Connections
7
Library Source and Projects
7.1
Locating the Library Source Code
7.2
Import and Build the Library Project
7.3
PTO - PulseGen API
7.3.1
pto_pulsegen_runPulseGen
7.3.2
pto_startOperation
7.3.3
pto_pulsegen_setupPeriph
7.3.4
pto_pulsegen_reset
7.4
PTO - QepDiv API
7.4.1
pto_qepdiv_config
7.4.2
pto_startOperation
7.4.3
pto_qepdiv_setupPeriph
7.4.4
pto_qepdiv_reset
7.5
PTO - Abs2Qep API
7.5.1
Abs2Qep API Configuration
7.5.2
pto_abs2qep_runPulseGen
7.5.3
pto_abs2qep_setupPeriph
7.5.4
pto_abs2qep_translatePosition
7.6
PTO - QepOnClb API
7.6.1
pto_qeponclb_setupPeriph
7.6.2
pto_qeponclb_initCLBQEP
7.6.3
pto_qeponclb_configMaxCounterPos
7.6.4
pto_qeponclb_enableCLBQEP
7.6.5
pto_qeponclb_resetCLBQEP
7.6.6
pto_qeponclb_getCounterVal
7.6.7
pto_qeponclb_getCLBQEPPos
7.6.8
pto_qeponclb_clearFIFOptr
8
Using the Reference APIs in Projects
8.1
Adding PTO Support to a Project
8.2
Routing To and From the CLB
8.3
Initialization Steps
8.3.1
PTO-PulseGen API Initalization
8.3.2
PTO-QepDiv API Initialization
8.3.3
PTO-Abs2Qep API Initialization
8.3.4
PTO-QepOnClb API Initialization
9
References
Revision History
6.3
Import and Run Example Project
In CCS or higher: click '
Project -> Import CCS Projects…
'.
Navigate to the device-specific PTO solutions CCS directory. The path is shown in
Table 6-1
.
Select the projectspec of choice and click '
Finish
'.
Build the project:
Right-click on the project name in the project manager window
Select '
Rebuild Project
'
Observe the Console window for any errors or successful completion of the build.
Once the build completes, without errors, execute the project by selecting '
Run –>Debug
'.
Run the code by pressing the Run button.
Monitor the signals and variables as described in the following, example-specific, sections.