AM263x MCU+ SDK  08.03.00
etpwm.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2021 Texas Instruments Incorporated
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  *
8  * Redistributions of source code must retain the above copyright
9  * notice, this list of conditions and the following disclaimer.
10  *
11  * Redistributions in binary form must reproduce the above copyright
12  * notice, this list of conditions and the following disclaimer in the
13  * documentation and/or other materials provided with the
14  * distribution.
15  *
16  * Neither the name of Texas Instruments Incorporated nor the names of
17  * its contributors may be used to endorse or promote products derived
18  * from this software without specific prior written permission.
19  *
20  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
24  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
25  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
26  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
27  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
28  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
29  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31  */
32 
42 #ifndef EPWM_V1_H_
43 #define EPWM_V1_H_
44 
45 //*****************************************************************************
46 //
47 // If building with a C++ compiler, make all of the definitions in this header
48 // have a C binding.
49 //
50 //*****************************************************************************
51 #ifdef __cplusplus
52 extern "C"
53 {
54 #endif
55 
56 //*****************************************************************************
57 //
58 // Header Files
59 //
60 //*****************************************************************************
61 #include <stdbool.h>
62 #include <stdint.h>
63 #include <drivers/hw_include/hw_types.h>
64 #include <drivers/hw_include/cslr_soc.h>
65 #include <kernel/dpl/DebugP.h>
66 #include <drivers/hw_include/cslr_epwm.h>
67 
68 //*****************************************************************************
69 //
70 // Defines for the API.
71 //
72 //*****************************************************************************
73 //*****************************************************************************
74 //
75 // Define to specify mask for source parameter for
76 // EPWM_enableSyncOutPulseSource() & EPWM_disableSyncOutPulseSource()
77 //
78 //*****************************************************************************
79 #define EPWM_SYNC_OUT_SOURCE_M ((uint16_t)CSL_EPWM_EPWMSYNCOUTEN_SWEN_MASK |\
80  (uint16_t)CSL_EPWM_EPWMSYNCOUTEN_ZEROEN_MASK |\
81  (uint16_t)CSL_EPWM_EPWMSYNCOUTEN_CMPBEN_MASK |\
82  (uint16_t)CSL_EPWM_EPWMSYNCOUTEN_CMPCEN_MASK |\
83  (uint16_t)CSL_EPWM_EPWMSYNCOUTEN_CMPDEN_MASK |\
84  (uint16_t)CSL_EPWM_EPWMSYNCOUTEN_DCAEVT1EN_MASK |\
85  (uint16_t)CSL_EPWM_EPWMSYNCOUTEN_DCBEVT1EN_MASK)
86 
87 //*****************************************************************************
88 //
89 // Values that can be passed to EPWM_enableSyncOutPulseSource() &
90 // EPWM_disableSyncOutPulseSource() as the \e mode parameter.
91 //
92 //*****************************************************************************
94 #define EPWM_SYNC_OUT_PULSE_ON_SOFTWARE CSL_EPWM_EPWMSYNCOUTEN_SWEN_MASK
95 #define EPWM_SYNC_OUT_PULSE_ON_CNTR_ZERO CSL_EPWM_EPWMSYNCOUTEN_ZEROEN_MASK
97 #define EPWM_SYNC_OUT_PULSE_ON_CNTR_COMPARE_B CSL_EPWM_EPWMSYNCOUTEN_CMPBEN_MASK
99 #define EPWM_SYNC_OUT_PULSE_ON_CNTR_COMPARE_C CSL_EPWM_EPWMSYNCOUTEN_CMPCEN_MASK
101 #define EPWM_SYNC_OUT_PULSE_ON_CNTR_COMPARE_D CSL_EPWM_EPWMSYNCOUTEN_CMPDEN_MASK
103 #define EPWM_SYNC_OUT_PULSE_ON_DCA_EVT1_SYNC CSL_EPWM_EPWMSYNCOUTEN_DCAEVT1EN_MASK
105 #define EPWM_SYNC_OUT_PULSE_ON_DCB_EVT1_SYNC CSL_EPWM_EPWMSYNCOUTEN_DCBEVT1EN_MASK
107 #define EPWM_SYNC_OUT_PULSE_ON_ALL EPWM_SYNC_OUT_SOURCE_M
109 
110 //
111 // Time Base Module
112 //
113 //*****************************************************************************
114 //
117 //
118 //*****************************************************************************
119 typedef enum
120 {
128 
129 //*****************************************************************************
130 //
133 //
134 //*****************************************************************************
135 typedef enum
136 {
140 
141 //*****************************************************************************
142 //
145 //
146 //*****************************************************************************
147 typedef enum
148 {
158 
159 //*****************************************************************************
160 //
163 //
164 //*****************************************************************************
165 typedef enum
166 {
176 
177 //*****************************************************************************
178 //
181 //
182 //*****************************************************************************
183 typedef enum
184 {
312 
313 //*****************************************************************************
314 //
317 //
318 //*****************************************************************************
319 typedef enum
320 {
324 
325 //*****************************************************************************
326 //
329 //
330 //*****************************************************************************
331 typedef enum
332 {
338 
339 //*****************************************************************************
340 //
343 //
344 //*****************************************************************************
345 typedef enum
346 {
352 
353 //*****************************************************************************
354 //
357 //
358 //*****************************************************************************
359 typedef enum
360 {
369 
370 //*****************************************************************************
371 //
372 // Values that can be returned by the EPWM_getTimeBaseCounterDirection()
373 //
374 //*****************************************************************************
376 #define EPWM_TIME_BASE_STATUS_COUNT_DOWN (0U)
377 #define EPWM_TIME_BASE_STATUS_COUNT_UP (1U)
379 
380 //*****************************************************************************
381 //
384 //
385 //*****************************************************************************
386 typedef enum
387 {
421 
422 //*****************************************************************************
423 //
426 //
427 //*****************************************************************************
428 typedef enum
429 {
438  EPWM_LINK_XLOAD = 2
440 
441 //
442 // Counter Compare Module
443 //
444 //*****************************************************************************
445 //
450 //
451 //*****************************************************************************
452 typedef enum
453 {
459 
460 //*****************************************************************************
461 //
464 //
465 //*****************************************************************************
466 typedef enum
467 {
485 
486 //
487 // Action Qualifier Module
488 //
489 //*****************************************************************************
490 //
493 //
494 //*****************************************************************************
495 typedef enum
496 {
500 
501 //*****************************************************************************
502 //
505 //
506 //*****************************************************************************
507 typedef enum
508 {
526 
527 //*****************************************************************************
528 //
531 //
532 //*****************************************************************************
533 typedef enum
534 {
545 
546 //*****************************************************************************
547 //
550 //
551 //*****************************************************************************
552 typedef enum
553 {
575 
576 //*****************************************************************************
577 //
580 //
581 //*****************************************************************************
582 typedef enum
583 {
589 
590 //*****************************************************************************
591 //
594 //
595 //*****************************************************************************
596 typedef enum
597 {
602 
603 //*****************************************************************************
604 //
607 //
608 //*****************************************************************************
609 typedef enum
610 {
660 
661 //*****************************************************************************
662 //
666 //
667 //*****************************************************************************
668 typedef enum
669 {
703 
704 //*****************************************************************************
705 //
711 //
712 //*****************************************************************************
713 typedef enum
714 {
716  EPWM_AQ_OUTPUT_B = 4
718 
719 //*****************************************************************************
720 //
723 //
724 //*****************************************************************************
725 typedef enum
726 {
736 
737 //*****************************************************************************
738 //
741 //
742 //*****************************************************************************
743 typedef enum
744 {
746  EPWM_DB_OUTPUT_B = 1
748 
749 //*****************************************************************************
750 //
753 //
754 //*****************************************************************************
755 typedef enum
756 {
758  EPWM_DB_FED = 0
760 
761 //*****************************************************************************
762 //
765 //
766 //*****************************************************************************
767 typedef enum
768 {
772 
773 //*****************************************************************************
774 //
775 // Values that can be passed to EPWM_setRisingEdgeDeadBandDelayInput(),
776 // EPWM_setFallingEdgeDeadBandDelayInput() as the input parameter.
777 //
778 //*****************************************************************************
780 #define EPWM_DB_INPUT_EPWMA (0U)
781 #define EPWM_DB_INPUT_EPWMB (1U)
783 #define EPWM_DB_INPUT_DB_RED (2U)
785 
786 //*****************************************************************************
787 //
790 //
791 //*****************************************************************************
792 typedef enum
793 {
803 
804 //*****************************************************************************
805 //
808 //
809 //*****************************************************************************
810 typedef enum
811 {
821 
822 //*****************************************************************************
823 //
826 //
827 //*****************************************************************************
828 typedef enum
829 {
839 
840 //*****************************************************************************
841 //
844 //
845 //*****************************************************************************
846 typedef enum
847 {
853 
854 //
855 // Trip Zone
856 //
857 //*****************************************************************************
858 //
859 // Values that can be passed to EPWM_enableTripZoneSignals() and
860 // EPWM_disableTripZoneSignals() as the tzSignal parameter.
861 //
862 //*****************************************************************************
864 #define EPWM_TZ_SIGNAL_CBC1 (0x1U)
865 #define EPWM_TZ_SIGNAL_CBC2 (0x2U)
867 #define EPWM_TZ_SIGNAL_CBC3 (0x4U)
869 #define EPWM_TZ_SIGNAL_CBC4 (0x8U)
871 #define EPWM_TZ_SIGNAL_CBC5 (0x10U)
873 #define EPWM_TZ_SIGNAL_CBC6 (0x20U)
875 #define EPWM_TZ_SIGNAL_DCAEVT2 (0x40U)
877 #define EPWM_TZ_SIGNAL_DCBEVT2 (0x80U)
879 #define EPWM_TZ_SIGNAL_OSHT1 (0x100U)
881 #define EPWM_TZ_SIGNAL_OSHT2 (0x200U)
883 #define EPWM_TZ_SIGNAL_OSHT3 (0x400U)
885 #define EPWM_TZ_SIGNAL_OSHT4 (0x800U)
887 #define EPWM_TZ_SIGNAL_OSHT5 (0x1000U)
889 #define EPWM_TZ_SIGNAL_OSHT6 (0x2000U)
891 #define EPWM_TZ_SIGNAL_DCAEVT1 (0x4000U)
893 #define EPWM_TZ_SIGNAL_DCBEVT1 (0x8000U)
895 #define EPWM_TZ_SIGNAL_CAPEVT_OST (0x10000U)
897 #define EPWM_TZ_SIGNAL_CAPEVT_CBC (0x1000000U)
899 
900 //*****************************************************************************
901 //
904 //
905 //*****************************************************************************
906 typedef enum
907 {
913 
914 //*****************************************************************************
915 //
918 //
919 //*****************************************************************************
920 typedef enum
921 {
929 
930 //*****************************************************************************
931 //
934 //
935 //*****************************************************************************
936 typedef enum
937 {
945 
946 //*****************************************************************************
947 //
950 //
951 //*****************************************************************************
952 typedef enum
953 {
959 
960 //*****************************************************************************
961 //
964 //
965 //*****************************************************************************
966 typedef enum
967 {
977 
978 //*****************************************************************************
979 //
983 //
984 //*****************************************************************************
985 typedef enum
986 {
993 
994 //*****************************************************************************
995 //
999 //
1000 //*****************************************************************************
1001 typedef enum
1002 {
1012 
1013 //*****************************************************************************
1014 //
1015 // Values that can be passed to EPWM_enableTripZoneInterrupt()and
1016 // EPWM_disableTripZoneInterrupt() as the tzInterrupt parameter .
1017 //
1018 //*****************************************************************************
1020 #define EPWM_TZ_INTERRUPT_CBC (0x2U)
1021 #define EPWM_TZ_INTERRUPT_OST (0x4U)
1023 #define EPWM_TZ_INTERRUPT_DCAEVT1 (0x8U)
1025 #define EPWM_TZ_INTERRUPT_DCAEVT2 (0x10U)
1027 #define EPWM_TZ_INTERRUPT_DCBEVT1 (0x20U)
1029 #define EPWM_TZ_INTERRUPT_DCBEVT2 (0x40U)
1031 #define EPWM_TZ_INTERRUPT_CAPEVT (0x80U)
1033 
1034 //*****************************************************************************
1035 //
1036 // Values that can be returned by EPWM_getTripZoneFlagStatus() .
1037 //
1038 //*****************************************************************************
1040 #define EPWM_TZ_FLAG_CBC (0x2U)
1041 #define EPWM_TZ_FLAG_OST (0x4U)
1043 #define EPWM_TZ_FLAG_DCAEVT1 (0x8U)
1045 #define EPWM_TZ_FLAG_DCAEVT2 (0x10U)
1047 #define EPWM_TZ_FLAG_DCBEVT1 (0x20U)
1049 #define EPWM_TZ_FLAG_DCBEVT2 (0x40U)
1051 #define EPWM_TZ_FLAG_CAPEVT (0x80U)
1053 
1054 //*****************************************************************************
1055 //
1056 // Value can be passed to EPWM_clearTripZoneFlag() as the
1057 // tzInterrupt parameter and returned by EPWM_getTripZoneFlagStatus().
1058 //
1059 //*****************************************************************************
1061 #define EPWM_TZ_INTERRUPT (0x1U)
1062 
1063 //*****************************************************************************
1064 //
1065 // Values that can be passed to EPWM_clearCycleByCycleTripZoneFlag()
1066 // as the tzCbcFlag parameter and returned by
1067 // EPWM_getCycleByCycleTripZoneFlagStatus().
1068 //
1069 //*****************************************************************************
1071 #define EPWM_TZ_CBC_FLAG_1 (0x1U)
1072 #define EPWM_TZ_CBC_FLAG_2 (0x2U)
1074 #define EPWM_TZ_CBC_FLAG_3 (0x4U)
1076 #define EPWM_TZ_CBC_FLAG_4 (0x8U)
1078 #define EPWM_TZ_CBC_FLAG_5 (0x10U)
1080 #define EPWM_TZ_CBC_FLAG_6 (0x20U)
1082 #define EPWM_TZ_CBC_FLAG_DCAEVT2 (0x40U)
1084 #define EPWM_TZ_CBC_FLAG_DCBEVT2 (0x80U)
1086 #define EPWM_TZ_CBC_FLAG_CAPEVT (0x100U)
1088 
1089 //*****************************************************************************
1090 //
1091 // Values that can be passed to EPWM_clearOneShotTripZoneFlag() as
1092 // the tzCbcFlag parameter and returned by the
1093 // EPWM_getOneShotTripZoneFlagStatus() .
1094 //
1095 //*****************************************************************************
1097 #define EPWM_TZ_OST_FLAG_OST1 (0x1U)
1098 #define EPWM_TZ_OST_FLAG_OST2 (0x2U)
1100 #define EPWM_TZ_OST_FLAG_OST3 (0x4U)
1102 #define EPWM_TZ_OST_FLAG_OST4 (0x8U)
1104 #define EPWM_TZ_OST_FLAG_OST5 (0x10U)
1106 #define EPWM_TZ_OST_FLAG_OST6 (0x20U)
1108 #define EPWM_TZ_OST_FLAG_DCAEVT1 (0x40U)
1110 #define EPWM_TZ_OST_FLAG_DCBEVT1 (0x80U)
1112 #define EPWM_TZ_OST_FLAG_CAPEVT (0x100U)
1114 
1115 //*****************************************************************************
1116 //
1119 //
1120 //*****************************************************************************
1121 typedef enum
1122 {
1130 
1131 //*****************************************************************************
1132 //
1133 // Values that can be passed to EPWM_forceTripZoneEvent() as the
1134 // tzForceEvent parameter.
1135 //
1136 //*****************************************************************************
1138 #define EPWM_TZ_FORCE_EVENT_CBC (0x2U)
1139 #define EPWM_TZ_FORCE_EVENT_OST (0x4U)
1141 #define EPWM_TZ_FORCE_EVENT_DCAEVT1 (0x8U)
1143 #define EPWM_TZ_FORCE_EVENT_DCAEVT2 (0x10U)
1145 #define EPWM_TZ_FORCE_EVENT_DCBEVT1 (0x20U)
1147 #define EPWM_TZ_FORCE_EVENT_DCBEVT2 (0x40U)
1149 #define EPWM_TZ_FORCE_EVENT_CAPEVT (0x80U)
1151 
1152 //*****************************************************************************
1153 //
1154 // Values that can be passed to EPWM_enableTripZoneOutput() and
1155 // EPWM_disableTripZoneOutput as the tzOutput parameter.
1156 //
1157 //*****************************************************************************
1159 #define EPWM_TZ_SELECT_TRIPOUT_OST (0x1)
1160 #define EPWM_TZ_SELECT_TRIPOUT_CBC (0x2)
1162 #define EPWM_TZ_SELECT_TRIPOUT_TZ1 (0x4)
1164 #define EPWM_TZ_SELECT_TRIPOUT_TZ2 (0x8)
1166 #define EPWM_TZ_SELECT_TRIPOUT_TZ3 (0x10)
1168 #define EPWM_TZ_SELECT_TRIPOUT_TZ4 (0x20)
1170 #define EPWM_TZ_SELECT_TRIPOUT_TZ5 (0x40)
1172 #define EPWM_TZ_SELECT_TRIPOUT_TZ6 (0x80)
1174 #define EPWM_TZ_SELECT_TRIPOUT_DCAEVT1 (0x100)
1176 #define EPWM_TZ_SELECT_TRIPOUT_DCAEVT2 (0x200)
1178 #define EPWM_TZ_SELECT_TRIPOUT_DCBEVT1 (0x400)
1180 #define EPWM_TZ_SELECT_TRIPOUT_DCBEVT2 (0x800)
1182 #define EPWM_TZ_SELECT_TRIPOUT_CAPEVT (0x1000)
1184 
1185 //*****************************************************************************
1186 //
1187 // Values that can be passed to EPWM_setInterruptSource() as the
1188 // interruptSource parameter.
1189 //
1190 //*****************************************************************************
1192 #define EPWM_INT_TBCTR_ZERO (1U)
1193 #define EPWM_INT_TBCTR_PERIOD (2U)
1195 #define EPWM_INT_TBCTR_ETINTMIX (3U)
1197 #define EPWM_INT_TBCTR_U_CMPA (4U)
1199 #define EPWM_INT_TBCTR_U_CMPC (8U)
1201 #define EPWM_INT_TBCTR_D_CMPA (5U)
1203 #define EPWM_INT_TBCTR_D_CMPC (10U)
1205 #define EPWM_INT_TBCTR_U_CMPB (6U)
1207 #define EPWM_INT_TBCTR_U_CMPD (12U)
1209 #define EPWM_INT_TBCTR_D_CMPB (7U)
1211 #define EPWM_INT_TBCTR_D_CMPD (14U)
1213 
1214 //*****************************************************************************
1215 //
1216 // Values that can be passed to EPWM_setInterruptSource() and
1217 // EPWM_setADCTriggerSource() as the mixedSource parameter.
1218 //
1219 //*****************************************************************************
1221 #define EPWM_INT_MIX_TBCTR_ZERO (0x1)
1222 #define EPWM_INT_MIX_TBCTR_PERIOD (0x2)
1224 #define EPWM_INT_MIX_TBCTR_U_CMPA (0x4)
1226 #define EPWM_INT_MIX_TBCTR_D_CMPA (0x8)
1228 #define EPWM_INT_MIX_TBCTR_U_CMPB (0x10)
1230 #define EPWM_INT_MIX_TBCTR_D_CMPB (0x20)
1232 #define EPWM_INT_MIX_TBCTR_U_CMPC (0x40)
1234 #define EPWM_INT_MIX_TBCTR_D_CMPC (0x80)
1236 #define EPWM_INT_MIX_TBCTR_U_CMPD (0x100)
1238 #define EPWM_INT_MIX_TBCTR_D_CMPD (0x200)
1240 #define EPWM_INT_MIX_DCAEVT1 (0x400)
1242 
1243 
1244 //*****************************************************************************
1245 //
1253 //
1254 //*****************************************************************************
1255 typedef enum
1256 {
1258  EPWM_SOC_B = 1
1260 
1261 //*****************************************************************************
1262 //
1265 //
1266 //*****************************************************************************
1267 typedef enum
1268 {
1294 
1295 //
1296 // Digital Compare Module
1297 //
1298 //*****************************************************************************
1299 //
1304 //
1305 //*****************************************************************************
1306 typedef enum
1307 {
1311  EPWM_DC_TYPE_DCBL = 3
1313 
1314 //*****************************************************************************
1315 //
1318 //
1319 //*****************************************************************************
1320 typedef enum
1321 {
1339 
1340 //*****************************************************************************
1341 //
1342 // Values that can be passed to EPWM_enableDigitalCompareTripCombinationInput()
1343 // EPWM_disableDigitalCompareTripCombinationInput() as the tripInput
1344 // parameter.
1345 //
1346 //*****************************************************************************
1348 #define EPWM_DC_COMBINATIONAL_TRIPIN1 (0x1U)
1349 #define EPWM_DC_COMBINATIONAL_TRIPIN2 (0x2U)
1351 #define EPWM_DC_COMBINATIONAL_TRIPIN3 (0x4U)
1353 #define EPWM_DC_COMBINATIONAL_TRIPIN4 (0x8U)
1355 #define EPWM_DC_COMBINATIONAL_TRIPIN5 (0x10U)
1357 #define EPWM_DC_COMBINATIONAL_TRIPIN6 (0x20U)
1359 #define EPWM_DC_COMBINATIONAL_TRIPIN7 (0x40U)
1361 #define EPWM_DC_COMBINATIONAL_TRIPIN8 (0x80U)
1363 #define EPWM_DC_COMBINATIONAL_TRIPIN9 (0x100U)
1365 #define EPWM_DC_COMBINATIONAL_TRIPIN10 (0x200U)
1367 #define EPWM_DC_COMBINATIONAL_TRIPIN11 (0x400U)
1369 #define EPWM_DC_COMBINATIONAL_TRIPIN12 (0x800U)
1371 #define EPWM_DC_COMBINATIONAL_TRIPIN13 (0x1000U)
1373 #define EPWM_DC_COMBINATIONAL_TRIPIN14 (0x2000U)
1375 #define EPWM_DC_COMBINATIONAL_TRIPIN15 (0x4000U)
1377 
1378 //*****************************************************************************
1379 //
1382 //
1383 //*****************************************************************************
1384 typedef enum
1385 {
1395 
1396 //*****************************************************************************
1397 //
1398 // Values that can be passed to EPWM_setDigitalCompareBlankingEvent()
1399 // as the mixedSource parameter.
1400 //
1401 //*****************************************************************************
1403 #define EPWM_DC_TBCTR_ZERO (0x1)
1404 #define EPWM_DC_TBCTR_PERIOD (0x2)
1406 #define EPWM_DC_TBCTR_U_CMPA (0x4)
1408 #define EPWM_DC_TBCTR_D_CMPA (0x8)
1410 #define EPWM_DC_TBCTR_U_CMPB (0x10)
1412 #define EPWM_DC_TBCTR_D_CMPB (0x20)
1414 #define EPWM_DC_TBCTR_U_CMPC (0x40)
1416 #define EPWM_DC_TBCTR_D_CMPC (0x80)
1418 #define EPWM_DC_TBCTR_U_CMPD (0x100)
1420 #define EPWM_DC_TBCTR_D_CMPD (0x200)
1422 
1423 //*****************************************************************************
1424 //
1427 //
1428 //*****************************************************************************
1429 typedef enum
1430 {
1436 
1437 //*****************************************************************************
1438 //
1445 //
1446 //*****************************************************************************
1447 typedef enum
1448 {
1450  EPWM_DC_MODULE_B = 1
1452 
1453 //*****************************************************************************
1454 //
1460 //
1461 //*****************************************************************************
1462 typedef enum
1463 {
1465  EPWM_DC_EVENT_2 = 1
1467 
1468 //*****************************************************************************
1469 //
1472 //
1473 //*****************************************************************************
1474 typedef enum
1475 {
1481 
1482 //*****************************************************************************
1483 //
1486 //
1487 //*****************************************************************************
1488 typedef enum
1489 {
1495 
1496 //*****************************************************************************
1497 //
1500 //
1501 //*****************************************************************************
1502 typedef enum
1503 {
1509 
1510 //*****************************************************************************
1511 //
1514 //
1515 //*****************************************************************************
1516 typedef enum
1517 {
1525 
1526 //*****************************************************************************
1527 //
1530 //
1531 //*****************************************************************************
1532 typedef enum
1533 {
1559 
1560 //*****************************************************************************
1561 //
1562 // Values that can be passed to EPWM_enableGlobalLoadRegisters(),
1563 // EPWM_disableGlobalLoadRegisters() as theloadRegister parameter.
1564 //
1565 //*****************************************************************************
1567 #define EPWM_GL_REGISTER_TBPRD_TBPRDHR (0x1U)
1568 #define EPWM_GL_REGISTER_CMPA_CMPAHR (0x2U)
1570 #define EPWM_GL_REGISTER_CMPB_CMPBHR (0x4U)
1572 #define EPWM_GL_REGISTER_CMPC (0x8U)
1574 #define EPWM_GL_REGISTER_CMPD (0x10U)
1576 #define EPWM_GL_REGISTER_DBRED_DBREDHR (0x20U)
1578 #define EPWM_GL_REGISTER_DBFED_DBFEDHR (0x40U)
1580 #define EPWM_GL_REGISTER_DBCTL (0x80U)
1582 #define EPWM_GL_REGISTER_AQCTLA_AQCTLA2 (0x100U)
1584 #define EPWM_GL_REGISTER_AQCTLB_AQCTLB2 (0x200U)
1586 #define EPWM_GL_REGISTER_AQCSFRC (0x400U)
1588 
1589 //*****************************************************************************
1590 //
1593 //
1594 //*****************************************************************************
1595 typedef enum
1596 {
1614 
1615 //*****************************************************************************
1616 //
1619 //
1620 //*****************************************************************************
1621 typedef enum
1622 {
1626 
1627 //*****************************************************************************
1628 //
1631 //
1632 //*****************************************************************************
1633 typedef enum
1634 {
1650 
1651 //
1652 // DC Edge Filter
1653 //
1654 //*****************************************************************************
1655 //
1658 //
1659 //*****************************************************************************
1660 typedef enum
1661 {
1669 
1670 //*****************************************************************************
1671 //
1674 //
1675 //*****************************************************************************
1676 typedef enum
1677 {
1695 
1696 //*****************************************************************************
1697 //
1700 //
1701 //*****************************************************************************
1702 typedef enum
1703 {
1710 
1711 //
1712 // Minimum Dead Band
1713 //
1714 //*****************************************************************************
1715 //
1717 //
1718 //*****************************************************************************
1720 #define EPWM_MINDB_BLOCK_A (0x0)
1721 #define EPWM_MINDB_BLOCK_B (0x1)
1723 
1724 //*****************************************************************************
1725 //
1727 //
1728 //*****************************************************************************
1730 #define EPWM_MINDB_NO_INVERT (0x0)
1731 #define EPWM_MINDB_INVERT (0x1)
1733 
1734 //*****************************************************************************
1735 //
1737 //
1738 //*****************************************************************************
1740 #define EPWM_MINDB_INVERT_LOGICAL_AND (0x0)
1741 #define EPWM_MINDB_LOGICAL_OR (0x1)
1743 
1744 //*****************************************************************************
1745 //
1747 //
1748 //*****************************************************************************
1750 #define EPWM_MINDB_PWMB (0x0)
1751 #define EPWM_MINDB_PWM_OUTXBAR_OUT1 (0x1)
1753 #define EPWM_MINDB_PWM_OUTXBAR_OUT2 (0x2)
1755 #define EPWM_MINDB_PWM_OUTXBAR_OUT3 (0x3)
1757 #define EPWM_MINDB_PWM_OUTXBAR_OUT4 (0x4)
1759 #define EPWM_MINDB_PWM_OUTXBAR_OUT5 (0x5)
1761 #define EPWM_MINDB_PWM_OUTXBAR_OUT6 (0x6)
1763 #define EPWM_MINDB_PWM_OUTXBAR_OUT7 (0x7)
1765 #define EPWM_MINDB_PWM_OUTXBAR_OUT8 (0x8)
1767 #define EPWM_MINDB_PWM_OUTXBAR_OUT9 (0x9)
1769 #define EPWM_MINDB_PWM_OUTXBAR_OUT10 (0xA)
1771 #define EPWM_MINDB_PWM_OUTXBAR_OUT11 (0xB)
1773 #define EPWM_MINDB_PWM_OUTXBAR_OUT12 (0xC)
1775 #define EPWM_MINDB_PWM_OUTXBAR_OUT13 (0xD)
1777 #define EPWM_MINDB_PWM_OUTXBAR_OUT14 (0xE)
1779 #define EPWM_MINDB_PWM_OUTXBAR_OUT15 (0xF)
1781 
1782 //*****************************************************************************
1783 //
1785 //
1786 //*****************************************************************************
1788 #define EPWM_MINDB_BLOCKING_SIGNAL_SAME (0x0)
1789 #define EPWM_MINDB_BLOCKING_SIGNAL_DIFF (0x1)
1791 
1792 //*****************************************************************************
1793 //
1795 //
1796 //*****************************************************************************
1798 #define EPWM_MINDB_ICSS_XBAR_OUT0 (0x0)
1799 #define EPWM_MINDB_ICSS_XBAR_OUT1 (0x1)
1801 #define EPWM_MINDB_ICSS_XBAR_OUT2 (0x2)
1803 #define EPWM_MINDB_ICSS_XBAR_OUT3 (0x3)
1805 #define EPWM_MINDB_ICSS_XBAR_OUT4 (0x4)
1807 #define EPWM_MINDB_ICSS_XBAR_OUT5 (0x5)
1809 #define EPWM_MINDB_ICSS_XBAR_OUT6 (0x6)
1811 #define EPWM_MINDB_ICSS_XBAR_OUT7 (0x7)
1813 #define EPWM_MINDB_ICSS_XBAR_OUT8 (0x8)
1815 #define EPWM_MINDB_ICSS_XBAR_OUT9 (0x9)
1817 #define EPWM_MINDB_ICSS_XBAR_OUT10 (0xA)
1819 #define EPWM_MINDB_ICSS_XBAR_OUT11 (0xB)
1821 #define EPWM_MINDB_ICSS_XBAR_OUT12 (0xC)
1823 #define EPWM_MINDB_ICSS_XBAR_OUT13 (0xD)
1825 #define EPWM_MINDB_ICSS_XBAR_OUT14 (0xE)
1827 #define EPWM_MINDB_ICSS_XBAR_OUT15 (0xF)
1829 
1830 //*****************************************************************************
1831 //
1835 //
1836 //*****************************************************************************
1837 typedef enum
1838 {
1840  HRPWM_CHANNEL_B = 8
1842 
1843 //*****************************************************************************
1844 //
1847 //
1848 //*****************************************************************************
1849 typedef enum
1850 {
1860 
1861 //*****************************************************************************
1862 //
1865 //
1866 //*****************************************************************************
1867 typedef enum
1868 {
1874 
1875 //*****************************************************************************
1876 //
1880 //
1881 //*****************************************************************************
1882 typedef enum
1883 {
1893 
1894 //*****************************************************************************
1895 //
1898 //
1899 //*****************************************************************************
1900 typedef enum
1901 {
1907 
1908 //*****************************************************************************
1909 //
1912 //
1913 //*****************************************************************************
1914 typedef enum
1915 {
1929 
1930 //*****************************************************************************
1931 //
1934 //
1935 //*****************************************************************************
1936 typedef enum
1937 {
1941 
1942 //*****************************************************************************
1943 //
1946 //
1947 //*****************************************************************************
1948 typedef enum
1949 {
1959 
1960 //
1963 //
1964 //*****************************************************************************
1966 #define EPWM_XCMP_ACTIVE (0x0)
1967 #define EPWM_XCMP_SHADOW1 (0x1)
1969 #define EPWM_XCMP_SHADOW2 (0x2)
1971 #define EPWM_XCMP_SHADOW3 (0x3)
1973 
1974 //*****************************************************************************
1975 //
1978 //
1979 //*****************************************************************************
1980 typedef enum
1981 {
2002 
2023 
2044 
2064  EPWM_XMINMAX_SHADOW3 = 452
2065 
2067 
2068 //*****************************************************************************
2069 //
2071 //
2072 //*****************************************************************************
2073 typedef enum
2074 {
2092 
2093 //*****************************************************************************
2094 //
2096 //
2097 //*****************************************************************************
2098 
2099 typedef enum
2100 {
2118  EPWM_XCMP_8_CMPA = 8
2120 
2121 //*****************************************************************************
2122 //
2124 //
2125 //*****************************************************************************
2126 
2127 typedef enum
2128 {
2136  EPWM_XCMP_4_CMPB = 8
2138 
2139 //*****************************************************************************
2140 //
2143 //
2144 //*****************************************************************************
2145 typedef enum
2146 {
2152 
2153 //*****************************************************************************
2154 //
2157 //
2158 //*****************************************************************************
2159 
2160 typedef enum
2161 {
2171 
2172 //*****************************************************************************
2173 //
2176 //
2177 //*****************************************************************************
2178 
2179 typedef enum
2180 {
2190 
2191 //
2192 // Diode Emulation Logic
2193 //
2194 //*****************************************************************************
2195 //
2198 //
2199 //*****************************************************************************
2200 typedef enum{
2206 
2207 
2208 //*****************************************************************************
2209 //
2212 //
2213 //*****************************************************************************
2214 typedef enum{
2320 
2321 
2322 typedef enum{
2323 
2329  EPWM_DE_LOW = 0x10,
2331  EPWM_DE_HIGH = 0x11
2333 //*****************************************************************************
2334 //
2337 //
2338 //*****************************************************************************
2340 #define EPWM_DE_CHANNEL_A (0x0)
2341 #define EPWM_DE_CHANNEL_B (0x1)
2343 
2344 //*****************************************************************************
2345 //
2347 //
2348 //*****************************************************************************
2349 
2351 #define EPWM_DE_COUNT_UP (0x0)
2352 #define EPWM_DE_COUNT_DOWN (0x1)
2354 
2355 //*****************************************************************************
2356 //
2358 //
2359 //*****************************************************************************
2360 
2362 #define EPWM_DE_TRIPL (0x1)
2363 #define EPWM_DE_TRIPH (0x0)
2365 
2366 
2367 
2368 //*****************************************************************************
2369 //
2371 //
2372 //*****************************************************************************
2373 #define EPWM_DCxCTL_STEP (CSL_EPWM_DCBCTL - CSL_EPWM_DCACTL)
2374 #define EPWM_DCxxTRIPSEL (CSL_EPWM_DCALTRIPSEL - CSL_EPWM_DCAHTRIPSEL)
2375 #define EPWM_XREGSHDWxSTS_STEP (CSL_EPWM_XREGSHDW2STS-CSL_EPWM_XREGSHDW1STS)
2376 #define EPWM_XCMPx_ACTIVE_STEP (CSL_EPWM_XCMP2_ACTIVE-CSL_EPWM_XCMP1_ACTIVE)
2377 #define EPWM_XCMPx_STEP (CSL_EPWM_XCMP1_SHDW2-CSL_EPWM_XCMP1_SHDW1)
2378 #define EPWM_XCMPx_SHDWx_STEP (CSL_EPWM_XCMP2_SHDW1-CSL_EPWM_XCMP1_SHDW1)
2379 #define EPWM_LOCK_KEY (0xA5A50000U)
2380 
2381 //*****************************************************************************
2382 //
2385 //
2386 //*****************************************************************************
2387 typedef struct
2388 {
2389  Float32 freqInHz;
2390  Float32 dutyValA;
2391  Float32 dutyValB;
2393  Float32 sysClkInHz;
2398 
2399 //
2400 // Time Base Sub Module related APIs
2401 //
2402 //*****************************************************************************
2403 //
2412 //
2413 //*****************************************************************************
2414 static inline void
2415 EPWM_setTimeBaseCounter(uint32_t base, uint16_t count)
2416 {
2417  //
2418  // Write to TBCTR register
2419  //
2420  HW_WR_REG16(base + CSL_EPWM_TBCTR, count);
2421 }
2422 
2423 //*****************************************************************************
2424 //
2437 //
2438 //*****************************************************************************
2439 static inline void
2441 {
2442  if(mode == EPWM_COUNT_MODE_UP_AFTER_SYNC)
2443  {
2444  //
2445  // Set PHSDIR bit
2446  //
2447  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2448  (HW_RD_REG16(base + CSL_EPWM_TBCTL) |
2449  CSL_EPWM_TBCTL_PHSDIR_MASK));
2450  }
2451  else
2452  {
2453  //
2454  // Clear PHSDIR bit
2455  //
2456  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2457  (HW_RD_REG16(base + CSL_EPWM_TBCTL) &
2458  ~CSL_EPWM_TBCTL_PHSDIR_MASK));
2459  }
2460 }
2461 
2462 //*****************************************************************************
2463 //
2483 //
2484 //*****************************************************************************
2485 static inline void
2487  EPWM_HSClockDivider highSpeedPrescaler)
2488 {
2489  //
2490  // Write to CLKDIV and HSPCLKDIV bit
2491  //
2492  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2493  ((HW_RD_REG16(base + CSL_EPWM_TBCTL) &
2494  ~(CSL_EPWM_TBCTL_CLKDIV_MASK | CSL_EPWM_TBCTL_HSPCLKDIV_MASK)) |
2495  (((uint16_t)prescaler << CSL_EPWM_TBCTL_CLKDIV_SHIFT) |
2496  ((uint16_t)highSpeedPrescaler << CSL_EPWM_TBCTL_HSPCLKDIV_SHIFT))));
2497 }
2498 
2499 //*****************************************************************************
2500 //
2510 //
2511 //*****************************************************************************
2512 static inline void
2513 EPWM_forceSyncPulse(uint32_t base)
2514 {
2515  //
2516  // Set SWFSYNC bit
2517  //
2518  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2519  HW_RD_REG16(base + CSL_EPWM_TBCTL) | CSL_EPWM_TBCTL_SWFSYNC_MASK);
2520 }
2521 
2522 //*****************************************************************************
2523 //
2550 //
2551 //*****************************************************************************
2552 static inline void
2554 {
2555  //
2556  // Set EPWM Sync-In Source Mode.
2557  //
2558  HW_WR_REG16(base + CSL_EPWM_EPWMSYNCINSEL,
2559  ((HW_RD_REG16(base + CSL_EPWM_EPWMSYNCINSEL) &
2560  (~CSL_EPWM_EPWMSYNCINSEL_SEL_MASK)) |
2561  ((uint16_t)source & CSL_EPWM_EPWMSYNCINSEL_SEL_MASK)));
2562 }
2563 
2564 //*****************************************************************************
2565 //
2597 //
2598 //*****************************************************************************
2599 static inline void
2600 EPWM_enableSyncOutPulseSource(uint32_t base, uint16_t source)
2601 {
2602  //
2603  // Check the arguments
2604  //
2606 
2607  //
2608  // Enable selected EPWM Sync-Out Sources.
2609  //
2610  HW_WR_REG16(base + CSL_EPWM_EPWMSYNCOUTEN,
2611  (HW_RD_REG16(base + CSL_EPWM_EPWMSYNCOUTEN) |
2612  (uint16_t)source));
2613 }
2614 
2615 //*****************************************************************************
2616 //
2642 //
2643 //*****************************************************************************
2644 static inline void
2645 EPWM_disableSyncOutPulseSource(uint32_t base, uint16_t source)
2646 {
2647  //
2648  // Check the arguments
2649  //
2651 
2652  //
2653  // Disable EPWM Sync-Out Sources.
2654  //
2655  HW_WR_REG16(base + CSL_EPWM_EPWMSYNCOUTEN,
2656  (HW_RD_REG16(base + CSL_EPWM_EPWMSYNCOUTEN) &
2657  ~((uint16_t)source)));
2658 }
2659 
2660 //*****************************************************************************
2661 //
2675 //
2676 //*****************************************************************************
2677 static inline void
2680 {
2681  //
2682  // Set source for One-Shot Sync-Out Pulse.
2683  //
2684  HW_WR_REG16(base + CSL_EPWM_TBCTL3,
2685  ((HW_RD_REG16(base + CSL_EPWM_TBCTL3) &
2686  ~(CSL_EPWM_TBCTL3_OSSFRCEN_MASK)) |
2687  (uint16_t)trigger));
2688 }
2689 
2690 //*****************************************************************************
2691 //
2704 //
2705 //*****************************************************************************
2706 static inline void
2708 {
2709  if(loadMode == EPWM_PERIOD_SHADOW_LOAD)
2710  {
2711  //
2712  // Clear PRDLD
2713  //
2714  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2715  (HW_RD_REG16(base + CSL_EPWM_TBCTL) & ~CSL_EPWM_TBCTL_PRDLD_MASK));
2716  }
2717  else
2718  {
2719  //
2720  // Set PRDLD
2721  //
2722  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2723  (HW_RD_REG16(base + CSL_EPWM_TBCTL) | CSL_EPWM_TBCTL_PRDLD_MASK));
2724  }
2725 }
2726 
2727 //*****************************************************************************
2728 //
2737 //
2738 //*****************************************************************************
2739 static inline void
2741 {
2742  //
2743  // Set PHSEN bit
2744  //
2745  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2746  (HW_RD_REG16(base + CSL_EPWM_TBCTL) | CSL_EPWM_TBCTL_PHSEN_MASK));
2747 }
2748 
2749 //*****************************************************************************
2750 //
2758 //
2759 //*****************************************************************************
2760 static inline void
2762 {
2763  //
2764  // Clear PHSEN bit
2765  //
2766  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2767  (HW_RD_REG16(base + CSL_EPWM_TBCTL) & ~CSL_EPWM_TBCTL_PHSEN_MASK));
2768 }
2769 
2770 //*****************************************************************************
2771 //
2785 //
2786 //*****************************************************************************
2787 static inline void
2789 {
2790  //
2791  // Write to CTRMODE bit
2792  //
2793  HW_WR_REG16(base + CSL_EPWM_TBCTL,
2794  ((HW_RD_REG16(base + CSL_EPWM_TBCTL) &
2795  ~(CSL_EPWM_TBCTL_CTRMODE_MASK)) | ((uint16_t)counterMode)));
2796 }
2797 
2798 //*****************************************************************************
2799 //
2816 //
2817 //*****************************************************************************
2818 static inline void
2820  EPWM_PeriodShadowLoadMode shadowLoadMode)
2821 {
2822  //
2823  // Write to PRDLDSYNC bit
2824  //
2825  HW_WR_REG16(base + CSL_EPWM_TBCTL2,
2826  ((HW_RD_REG16(base + CSL_EPWM_TBCTL2) &
2827  ~(CSL_EPWM_TBCTL2_PRDLDSYNC_MASK)) |
2828  ((uint16_t)shadowLoadMode << CSL_EPWM_TBCTL2_PRDLDSYNC_SHIFT)));
2829 }
2830 //*****************************************************************************
2831 //
2839 //
2840 //*****************************************************************************
2841 static inline void
2843 {
2844  //
2845  // Set OSHTSYNCMODE bit
2846  //
2847  HW_WR_REG16(base + CSL_EPWM_TBCTL2,
2848  (HW_RD_REG16(base + CSL_EPWM_TBCTL2) |
2849  CSL_EPWM_TBCTL2_OSHTSYNCMODE_MASK));
2850 }
2851 
2852 //*****************************************************************************
2853 //
2861 //
2862 //*****************************************************************************
2863 static inline void
2865 {
2866  //
2867  // Clear OSHTSYNCMODE bit
2868  //
2869  HW_WR_REG16(base + CSL_EPWM_TBCTL2,
2870  (HW_RD_REG16(base + CSL_EPWM_TBCTL2) &
2871  ~CSL_EPWM_TBCTL2_OSHTSYNCMODE_MASK));
2872 }
2873 
2874 //*****************************************************************************
2875 //
2883 //
2884 //*****************************************************************************
2885 static inline void
2887 {
2888  //
2889  // Set OSHTSYNC bit
2890  //
2891  HW_WR_REG16(base + CSL_EPWM_TBCTL2,
2892  (HW_RD_REG16(base + CSL_EPWM_TBCTL2) | CSL_EPWM_TBCTL2_OSHTSYNC_MASK));
2893 }
2894 
2895 //*****************************************************************************
2896 //
2904 //
2905 //*****************************************************************************
2906 static inline uint16_t
2908 {
2909  //
2910  // Returns TBCTR value
2911  //
2912  return(HW_RD_REG16(base + CSL_EPWM_TBCTR));
2913 }
2914 
2915 //*****************************************************************************
2916 //
2925 //
2926 //*****************************************************************************
2927 static inline bool
2929 {
2930  //
2931  // Return true if CTRMAX bit is set, false otherwise
2932  //
2933  return(((HW_RD_REG16(base + CSL_EPWM_TBSTS) &
2934  CSL_EPWM_TBSTS_CTRMAX_MASK) ==
2935  CSL_EPWM_TBSTS_CTRMAX_MASK) ? true : false);
2936 }
2937 
2938 //*****************************************************************************
2939 //
2948 //
2949 //*****************************************************************************
2950 static inline void
2952 {
2953  //
2954  // Set CTRMAX bit
2955  //
2956  HW_WR_REG16(base + CSL_EPWM_TBSTS,
2957  (HW_RD_REG16(base + CSL_EPWM_TBSTS) | CSL_EPWM_TBSTS_CTRMAX_MASK));
2958 }
2959 
2960 //*****************************************************************************
2961 //
2970 //
2971 //*****************************************************************************
2972 static inline bool
2973 EPWM_getSyncStatus(uint32_t base)
2974 {
2975  //
2976  // Return true if SYNCI bit is set, false otherwise
2977  //
2978  return(((HW_RD_REG16(base + CSL_EPWM_TBSTS) & CSL_EPWM_TBSTS_SYNCI_MASK) ==
2979  CSL_EPWM_TBSTS_SYNCI_MASK) ? true : false);
2980 }
2981 
2982 //*****************************************************************************
2983 //
2991 //
2992 //*****************************************************************************
2993 static inline void
2994 EPWM_clearSyncEvent(uint32_t base)
2995 {
2996  //
2997  // Set SYNCI bit
2998  //
2999  HW_WR_REG16(base + CSL_EPWM_TBSTS,
3000  (HW_RD_REG16(base + CSL_EPWM_TBSTS) | CSL_EPWM_TBSTS_SYNCI_MASK));
3001 }
3002 
3003 //*****************************************************************************
3004 //
3014 //
3015 //*****************************************************************************
3016 static inline uint16_t
3018 {
3019  //
3020  // Return CTRDIR bit
3021  //
3022  return(HW_RD_REG16(base + CSL_EPWM_TBSTS) & CSL_EPWM_TBSTS_CTRDIR_MASK);
3023 }
3024 
3025 //*****************************************************************************
3026 //
3038 //
3039 //*****************************************************************************
3040 static inline void
3041 EPWM_setPhaseShift(uint32_t base, uint16_t phaseCount)
3042 {
3043  //
3044  // Write to TBPHS bit
3045  //
3046  HW_WR_REG32(base + CSL_EPWM_TBPHS,
3047  ((HW_RD_REG32(base + CSL_EPWM_TBPHS) &
3048  ~((uint32_t)CSL_EPWM_TBPHS_TBPHS_MASK)) |
3049  ((uint32_t)phaseCount << CSL_EPWM_TBPHS_TBPHS_SHIFT)));
3050 }
3051 
3052 //*****************************************************************************
3053 //
3067 //
3068 //*****************************************************************************
3069 static inline void
3070 EPWM_setTimeBasePeriod(uint32_t base, uint16_t periodCount)
3071 {
3072  //
3073  // Write to TBPRD bit
3074  //
3075  HW_WR_REG16(base + CSL_EPWM_TBPRD, periodCount);
3076 }
3077 
3078 //*****************************************************************************
3079 //
3087 //
3088 //*****************************************************************************
3089 static inline uint16_t
3091 {
3092  //
3093  // Read from TBPRD bit
3094  //
3095  return(HW_RD_REG16(base + CSL_EPWM_TBPRD));
3096 }
3097 
3098 //*****************************************************************************
3099 //
3160 //
3161 //*****************************************************************************
3162 static inline void
3163 EPWM_setupEPWMLinks(uint32_t base, EPWM_CurrentLink epwmLink,
3164  EPWM_LinkComponent linkComp)
3165 {
3166  uint32_t registerOffset;
3167 
3168  if((linkComp == EPWM_LINK_DBRED) || (linkComp == EPWM_LINK_DBFED))
3169  {
3170  registerOffset = base + CSL_EPWM_EPWMXLINK2;
3171  linkComp = (EPWM_LinkComponent) (linkComp - 1);
3172  }
3173  else if (linkComp == EPWM_LINK_XLOAD)
3174  {
3175  registerOffset = base + CSL_EPWM_EPWMXLINKXLOAD;
3176  linkComp = (EPWM_LinkComponent) (linkComp - 2);
3177  }
3178  else
3179  {
3180  registerOffset = base + CSL_EPWM_EPWMXLINK;
3181  }
3182 
3183  //
3184  // Configure EPWM links
3185  //
3186  HW_WR_REG32(registerOffset,
3187  ((HW_RD_REG32(registerOffset) &
3188  ~((uint32_t)CSL_EPWM_EPWMXLINK_TBPRDLINK_MASK << linkComp)) |
3189  ((uint32_t)epwmLink << linkComp)));
3190 }
3191 
3192 //*****************************************************************************
3193 //
3220 //
3221 //*****************************************************************************
3222 static inline void
3224  EPWM_CounterCompareModule compModule,
3225  EPWM_CounterCompareLoadMode loadMode)
3226 {
3227  uint16_t syncModeOffset;
3228  uint16_t loadModeOffset;
3229  uint16_t shadowModeOffset;
3230  uint32_t registerOffset;
3231 
3232  if((compModule == EPWM_COUNTER_COMPARE_A) ||
3233  (compModule == EPWM_COUNTER_COMPARE_C))
3234  {
3235  syncModeOffset = CSL_EPWM_CMPCTL_LOADASYNC_SHIFT;
3236  loadModeOffset = CSL_EPWM_CMPCTL_LOADAMODE_SHIFT;
3237  shadowModeOffset = CSL_EPWM_CMPCTL_SHDWAMODE_SHIFT;
3238  }
3239  else
3240  {
3241  syncModeOffset = CSL_EPWM_CMPCTL_LOADBSYNC_SHIFT;
3242  loadModeOffset = CSL_EPWM_CMPCTL_LOADBMODE_SHIFT;
3243  shadowModeOffset = CSL_EPWM_CMPCTL_SHDWBMODE_SHIFT;
3244  }
3245 
3246  //
3247  // Get the register offset. CSL_EPWM_CMPCTL for A&B or
3248  // CSL_EPWM_CMPCTL2 for C&D
3249  //
3250  if((compModule == EPWM_COUNTER_COMPARE_A) ||
3251  (compModule == EPWM_COUNTER_COMPARE_B))
3252  {
3253  registerOffset = base + CSL_EPWM_CMPCTL;
3254  }
3255  else
3256  {
3257  registerOffset = base + CSL_EPWM_CMPCTL2;
3258  }
3259 
3260  //
3261  // Set the appropriate sync and load mode bits and also enable shadow
3262  // load mode. Shadow to active load can also be frozen.
3263  //
3264  HW_WR_REG16(registerOffset,
3265  ((HW_RD_REG16(registerOffset) &
3266  ~((CSL_EPWM_CMPCTL_LOADASYNC_MAX << syncModeOffset) |
3267  (CSL_EPWM_CMPCTL_LOADAMODE_MAX << loadModeOffset) |
3268  (CSL_EPWM_CMPCTL_SHDWAMODE_MAX << shadowModeOffset))) |
3269  ((((uint16_t)loadMode >> 2U) << syncModeOffset) |
3270  (((uint16_t)loadMode & CSL_EPWM_CMPCTL_LOADASYNC_MAX) <<
3271  loadModeOffset))));
3272 }
3273 
3274 //*****************************************************************************
3275 //
3290 //
3291 //*****************************************************************************
3292 static inline void
3294  EPWM_CounterCompareModule compModule)
3295 {
3296  uint16_t shadowModeOffset;
3297  uint32_t registerOffset;
3298 
3299  if((compModule == EPWM_COUNTER_COMPARE_A) ||
3300  (compModule == EPWM_COUNTER_COMPARE_C))
3301  {
3302  shadowModeOffset = CSL_EPWM_CMPCTL_SHDWAMODE_SHIFT;
3303  }
3304  else
3305  {
3306  shadowModeOffset = CSL_EPWM_CMPCTL_SHDWBMODE_SHIFT;
3307  }
3308 
3309  //
3310  // Get the register offset. CSL_EPWM_CMPCTL for A&B or
3311  // CSL_EPWM_CMPCTL2 for C&D
3312  //
3313  if((compModule == EPWM_COUNTER_COMPARE_A) ||
3314  (compModule == EPWM_COUNTER_COMPARE_B))
3315  {
3316  registerOffset = base + CSL_EPWM_CMPCTL;
3317  }
3318  else
3319  {
3320  registerOffset = base + CSL_EPWM_CMPCTL2;
3321  }
3322 
3323  //
3324  // Disable shadow load mode.
3325  //
3326  HW_WR_REG16(registerOffset,
3327  (HW_RD_REG16(registerOffset) |
3328  (CSL_EPWM_CMPCTL_SHDWAMODE_MAX << shadowModeOffset)));
3329 }
3330 
3331 //*****************************************************************************
3332 //
3348 //
3349 //*****************************************************************************
3350 static inline void
3352  uint16_t compCount)
3353 {
3354  uint32_t registerOffset;
3355 
3356  //
3357  // Get the register offset for the Counter compare
3358  //
3359  registerOffset = base + CSL_EPWM_CMPA + (uint16_t)compModule;
3360 
3361  //
3362  // Write to the counter compare registers.
3363  //
3364  if((compModule == EPWM_COUNTER_COMPARE_A) ||
3365  (compModule == EPWM_COUNTER_COMPARE_B))
3366  {
3367  //
3368  // Write to COMPA or COMPB bits
3369  //
3370  HW_WR_REG16(registerOffset + 0x2U, compCount);
3371  }
3372  else
3373  {
3374  //
3375  // Write to COMPC or COMPD bits
3376  //
3377  HW_WR_REG16(registerOffset, compCount);
3378  }
3379 }
3380 
3381 //*****************************************************************************
3382 //
3396 //
3397 //*****************************************************************************
3398 static inline uint16_t
3400 {
3401  uint32_t registerOffset;
3402  uint16_t compCount;
3403 
3404  //
3405  // Get the register offset for the Counter compare
3406  //
3407  registerOffset = base + CSL_EPWM_CMPA + (uint16_t)compModule;
3408 
3409  //
3410  // Read from the counter compare registers.
3411  //
3412  if((compModule == EPWM_COUNTER_COMPARE_A) ||
3413  (compModule == EPWM_COUNTER_COMPARE_B))
3414  {
3415  //
3416  // Read COMPA or COMPB bits
3417  //
3418  compCount = (uint16_t)((HW_RD_REG32(registerOffset) &
3419  (uint32_t)CSL_EPWM_CMPA_CMPA_MASK) >>
3420  CSL_EPWM_CMPA_CMPA_SHIFT);
3421  }
3422  else
3423  {
3424  //
3425  // Read COMPC or COMPD bits
3426  //
3427  compCount = HW_RD_REG16(registerOffset);
3428  }
3429  return(compCount);
3430 }
3431 
3432 //*****************************************************************************
3433 //
3446 //
3447 //*****************************************************************************
3448 static inline bool
3450  EPWM_CounterCompareModule compModule)
3451 {
3452  //
3453  // Check the arguments
3454  //
3455  DebugP_assert((compModule == EPWM_COUNTER_COMPARE_A) ||
3456  (compModule == EPWM_COUNTER_COMPARE_B));
3457 
3458  //
3459  // Read the value of SHDWAFULL or SHDWBFULL bit
3460  //
3461  return((((HW_RD_REG32(base + CSL_EPWM_CMPCTL) >>
3462  ((((uint16_t)compModule >> 1U) & 0x2U) +
3463  CSL_EPWM_CMPCTL_SHDWAFULL_SHIFT)) &
3464  0x1U) == 0x1U) ? true:false);
3465 }
3466 
3467 //
3468 // Action Qualifier module related APIs
3469 //
3470 //*****************************************************************************
3471 //
3498 //
3499 //*****************************************************************************
3500 static inline void
3502  EPWM_ActionQualifierModule aqModule,
3504 {
3505  uint16_t syncModeOffset;
3506  uint16_t shadowModeOffset;
3507 
3508  syncModeOffset = CSL_EPWM_AQCTL_LDAQASYNC_SHIFT + (uint16_t)aqModule;
3509  shadowModeOffset = CSL_EPWM_AQCTL_SHDWAQAMODE_SHIFT + (uint16_t)aqModule;
3510 
3511  //
3512  // Set the appropriate sync and load mode bits and also enable shadow
3513  // load mode. Shadow to active load can also be frozen.
3514  //
3515  HW_WR_REG16(base + CSL_EPWM_AQCTL,
3516  ((HW_RD_REG16(base + CSL_EPWM_AQCTL) &
3517  (~((CSL_EPWM_AQCTL_LDAQAMODE_MASK << (uint16_t)aqModule) |
3518  (CSL_EPWM_AQCTL_LDAQASYNC_MAX << (uint16_t)syncModeOffset))) |
3519  (CSL_EPWM_AQCTL_SHDWAQAMODE_MAX << shadowModeOffset)) |
3520  ((((uint16_t)loadMode >> 2U) << syncModeOffset) |
3521  (((uint16_t)loadMode & CSL_EPWM_AQCTL_LDAQAMODE_MASK) <<
3522  (uint16_t)aqModule))));
3523 }
3524 
3525 //*****************************************************************************
3526 //
3539 //
3540 //*****************************************************************************
3541 static inline void
3543  EPWM_ActionQualifierModule aqModule)
3544 {
3545  uint16_t shadowModeOffset;
3546 
3547  shadowModeOffset = CSL_EPWM_AQCTL_SHDWAQAMODE_SHIFT + (uint16_t)aqModule;
3548 
3549  //
3550  // Disable shadow load mode. Action qualifier is loaded on
3551  // immediate mode only.
3552  //
3553  HW_WR_REG16(base + CSL_EPWM_AQCTL,
3554  (HW_RD_REG16(base + CSL_EPWM_AQCTL) &
3555  ~(CSL_EPWM_AQCTL_SHDWAQAMODE_MAX << shadowModeOffset)));
3556 }
3557 
3558 //*****************************************************************************
3559 //
3578 //
3579 //*****************************************************************************
3580 static inline void
3583 {
3584  //
3585  // Set T1 trigger source
3586  //
3587  HW_WR_REG16(base + CSL_EPWM_AQTSRCSEL,
3588  ((HW_RD_REG16(base + CSL_EPWM_AQTSRCSEL) &
3589  (~CSL_EPWM_AQTSRCSEL_T1SEL_MASK)) |
3590  ((uint16_t)trigger)));
3591 }
3592 
3593 //*****************************************************************************
3594 //
3613 //
3614 //*****************************************************************************
3615 static inline void
3618 {
3619  //
3620  // Set T2 trigger source
3621  //
3622  HW_WR_REG16(base + CSL_EPWM_AQTSRCSEL,
3623  ((HW_RD_REG16(base + CSL_EPWM_AQTSRCSEL) &
3624  (~CSL_EPWM_AQTSRCSEL_T2SEL_MASK)) |
3625  ((uint16_t)trigger << CSL_EPWM_AQTSRCSEL_T2SEL_SHIFT)));
3626 }
3627 
3628 //*****************************************************************************
3629 //
3668 //
3669 //*****************************************************************************
3670 static inline void
3675 {
3676  uint32_t registerOffset;
3677  uint32_t registerTOffset;
3678 
3679  //
3680  // Get the register offset
3681  //
3682  registerOffset = CSL_EPWM_AQCTLA + (uint16_t)epwmOutput;
3683  registerTOffset = CSL_EPWM_AQCTLA2 + (uint16_t)epwmOutput;
3684 
3685  //
3686  // If the event occurs on T1 or T2 events
3687  //
3688  if(((uint16_t)event & 0x1U) == 1U)
3689  {
3690  //
3691  // Write to T1U,T1D,T2U or T2D of AQCTLA2 register
3692  //
3693  HW_WR_REG16(base + registerTOffset,
3694  ((HW_RD_REG16(base + registerTOffset) &
3695  ~(CSL_EPWM_AQCTLA_ZRO_MAX << ((uint16_t)event - 1U))) |
3696  ((uint16_t)output << ((uint16_t)event - 1U))));
3697  }
3698  else
3699  {
3700  //
3701  // Write to ZRO,PRD,CAU,CAD,CBU or CBD bits of AQCTLA register
3702  //
3703  HW_WR_REG16(base + registerOffset,
3704  ((HW_RD_REG16(base + registerOffset) &
3705  ~(CSL_EPWM_AQCTLA_ZRO_MAX << (uint16_t)event)) |
3706  ((uint16_t)output << (uint16_t)event)));
3707  }
3708 }
3709 
3710 //*****************************************************************************
3711 //
3792 //
3793 //*****************************************************************************
3794 static inline void
3798 {
3799  uint32_t registerOffset;
3800 
3801  //
3802  // Get the register offset
3803  //
3804  registerOffset = CSL_EPWM_AQCTLA + (uint16_t)epwmOutput;
3805 
3806  //
3807  // Write to ZRO, PRD, CAU, CAD, CBU or CBD bits of AQCTLA register
3808  //
3809  HW_WR_REG16(base + registerOffset, action);
3810 }
3811 
3812 //*****************************************************************************
3813 //
3871 //
3872 //*****************************************************************************
3873 static inline void
3877 {
3878  uint32_t registerTOffset;
3879 
3880  //
3881  // Get the register offset
3882  //
3883  registerTOffset = CSL_EPWM_AQCTLA2 + (uint16_t)epwmOutput;
3884 
3885  //
3886  // Write to T1U, T1D, T2U or T2D of AQCTLA2 register
3887  //
3888  HW_WR_REG16(base + registerTOffset, action);
3889 }
3890 
3891 //*****************************************************************************
3892 //
3911 //
3912 //*****************************************************************************
3913 static inline void
3916 {
3917  //
3918  // Set the Action qualifier software action reload mode.
3919  // Write to RLDCSF bit
3920  //
3921  HW_WR_REG16(base + CSL_EPWM_AQSFRC,
3922  ((HW_RD_REG16(base + CSL_EPWM_AQSFRC) &
3923  ~CSL_EPWM_AQSFRC_RLDCSF_MASK) |
3924  ((uint16_t)mode << CSL_EPWM_AQSFRC_RLDCSF_SHIFT)));
3925 }
3926 
3927 //*****************************************************************************
3928 //
3947 //
3948 //*****************************************************************************
3949 static inline void
3953 {
3954  //
3955  // Initiate a continuous software forced output
3956  //
3957  if(epwmOutput == EPWM_AQ_OUTPUT_A)
3958  {
3959  HW_WR_REG16(base + CSL_EPWM_AQCSFRC,
3960  ((HW_RD_REG16(base + CSL_EPWM_AQCSFRC) &
3961  ~CSL_EPWM_AQCSFRC_CSFA_MASK) |
3962  ((uint16_t)output)));
3963  }
3964  else
3965  {
3966  HW_WR_REG16(base + CSL_EPWM_AQCSFRC,
3967  ((HW_RD_REG16(base + CSL_EPWM_AQCSFRC) &
3968  ~CSL_EPWM_AQCSFRC_CSFB_MASK) |
3969  ((uint16_t)output << CSL_EPWM_AQCSFRC_CSFB_SHIFT)));
3970  }
3971 }
3972 
3973 //*****************************************************************************
3974 //
3995 //
3996 //*****************************************************************************
3997 static inline void
4001 {
4002  //
4003  // Set the one time software forced action
4004  //
4005  if(epwmOutput == EPWM_AQ_OUTPUT_A)
4006  {
4007  HW_WR_REG16(base + CSL_EPWM_AQSFRC,
4008  ((HW_RD_REG16(base + CSL_EPWM_AQSFRC) &
4009  ~CSL_EPWM_AQSFRC_ACTSFA_MASK) |
4010  ((uint16_t)output)));
4011  }
4012  else
4013  {
4014  HW_WR_REG16(base + CSL_EPWM_AQSFRC,
4015  ((HW_RD_REG16(base + CSL_EPWM_AQSFRC) &
4016  ~CSL_EPWM_AQSFRC_ACTSFB_MASK) |
4017  ((uint16_t)output << CSL_EPWM_AQSFRC_ACTSFB_SHIFT)));
4018  }
4019 }
4020 
4021 //*****************************************************************************
4022 //
4035 //
4036 //*****************************************************************************
4037 static inline void
4040 {
4041  //
4042  // Initiate a software forced event
4043  //
4044  if(epwmOutput == EPWM_AQ_OUTPUT_A)
4045  {
4046  HW_WR_REG16(base + CSL_EPWM_AQSFRC,
4047  (HW_RD_REG16(base + CSL_EPWM_AQSFRC) |
4048  CSL_EPWM_AQSFRC_OTSFA_MASK));
4049  }
4050  else
4051  {
4052  HW_WR_REG16(base + CSL_EPWM_AQSFRC,
4053  (HW_RD_REG16(base + CSL_EPWM_AQSFRC) |
4054  CSL_EPWM_AQSFRC_OTSFB_MASK));
4055  }
4056 }
4057 
4058 //
4059 // Dead Band Module related APIs
4060 //
4061 //*****************************************************************************
4062 //
4081 //
4082 //*****************************************************************************
4083 static inline void
4085  bool enableSwapMode)
4086 {
4087  uint16_t mask;
4088 
4089  mask = (uint16_t)1U << ((uint16_t)output + CSL_EPWM_DBCTL_OUTSWAP_SHIFT);
4090 
4091  if(enableSwapMode)
4092  {
4093  //
4094  // Set the appropriate outswap bit to swap output
4095  //
4096  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4097  (HW_RD_REG16(base + CSL_EPWM_DBCTL) | mask));
4098  }
4099  else
4100  {
4101  //
4102  // Clear the appropriate outswap bit to disable output swap
4103  //
4104  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4105  (HW_RD_REG16(base + CSL_EPWM_DBCTL) & ~mask));
4106  }
4107 }
4108 
4109 //*****************************************************************************
4110 //
4129 //
4130 //*****************************************************************************
4131 static inline void
4133  bool enableDelayMode)
4134 {
4135  uint16_t mask;
4136 
4137  mask = 1U << ((uint16_t)(delayMode + CSL_EPWM_DBCTL_OUT_MODE_SHIFT));
4138 
4139  if(enableDelayMode)
4140  {
4141  //
4142  // Set the appropriate outmode bit to enable Dead Band delay
4143  //
4144  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4145  (HW_RD_REG16(base + CSL_EPWM_DBCTL) | mask));
4146  }
4147  else
4148  {
4149  //
4150  // Clear the appropriate outswap bit to disable output swap
4151  //
4152  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4153  (HW_RD_REG16(base + CSL_EPWM_DBCTL) & ~mask));
4154  }
4155 }
4156 
4157 //*****************************************************************************
4158 //
4176 //
4177 //*****************************************************************************
4178 static inline void
4180  EPWM_DeadBandDelayMode delayMode,
4181  EPWM_DeadBandPolarity polarity)
4182 {
4183  uint16_t shift;
4184 
4185  shift = (((uint16_t)delayMode ^ 0x1U) + CSL_EPWM_DBCTL_POLSEL_SHIFT);
4186 
4187  //
4188  // Set the appropriate polsel bits for dead band polarity
4189  //
4190  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4191  ((HW_RD_REG16(base + CSL_EPWM_DBCTL) & ~ (1U << shift)) |
4192  ((uint16_t)polarity << shift)));
4193 }
4194 
4195 //*****************************************************************************
4196 //
4210 //
4211 //*****************************************************************************
4212 static inline void
4213 EPWM_setRisingEdgeDeadBandDelayInput(uint32_t base, uint16_t input)
4214 {
4215  //
4216  // Check the arguments
4217  //
4218  DebugP_assert((input == EPWM_DB_INPUT_EPWMA) ||
4219  (input == EPWM_DB_INPUT_EPWMB));
4220 
4221  //
4222  // Set the Rising Edge Delay input
4223  //
4224  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4225  ((HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4226  ~(1U << (CSL_EPWM_DBCTL_IN_MODE_SHIFT))) |
4227  (input << CSL_EPWM_DBCTL_IN_MODE_SHIFT)));
4228 }
4229 
4230 //*****************************************************************************
4231 //
4248 //
4249 //*****************************************************************************
4250 static inline void
4251 EPWM_setFallingEdgeDeadBandDelayInput(uint32_t base, uint16_t input)
4252 {
4253  //
4254  // Check the arguments
4255  //
4256  DebugP_assert((input == EPWM_DB_INPUT_EPWMA) ||
4257  (input == EPWM_DB_INPUT_EPWMB) ||
4258  (input == EPWM_DB_INPUT_DB_RED));
4259 
4260  if(input == EPWM_DB_INPUT_DB_RED)
4261  {
4262  //
4263  // Set the Falling Edge Delay input
4264  //
4265  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4266  (HW_RD_REG16(base + CSL_EPWM_DBCTL) |
4267  CSL_EPWM_DBCTL_DEDB_MODE_MASK));
4268  }
4269  else
4270  {
4271  //
4272  // Set the Falling Edge Delay input
4273  //
4274  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4275  (HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4276  ~CSL_EPWM_DBCTL_DEDB_MODE_MASK));
4277 
4278  //
4279  // Set the Rising Edge Delay input
4280  //
4281  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4282  ((HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4283  ~(1U << (CSL_EPWM_DBCTL_IN_MODE_SHIFT + 1U))) |
4284  (input << (CSL_EPWM_DBCTL_IN_MODE_SHIFT + 1U))));
4285  }
4286 }
4287 
4288 //*****************************************************************************
4289 //
4305 //
4306 //*****************************************************************************
4307 static inline void
4310 {
4311  //
4312  // Enable the shadow mode and setup the load event
4313  //
4314  HW_WR_REG16(base + CSL_EPWM_DBCTL2,
4315  ((HW_RD_REG16(base + CSL_EPWM_DBCTL2) &
4316  ~CSL_EPWM_DBCTL2_LOADDBCTLMODE_MASK) |
4317  (CSL_EPWM_DBCTL2_LOADDBCTLMODE_MASK | (uint16_t)loadMode)));
4318 }
4319 
4320 //*****************************************************************************
4321 //
4330 //
4331 //*****************************************************************************
4332 static inline void
4334 {
4335  //
4336  // Disable the shadow load mode. Only immediate load mode only.
4337  //
4338  HW_WR_REG16(base + CSL_EPWM_DBCTL2,
4339  (HW_RD_REG16(base + CSL_EPWM_DBCTL2) &
4340  ~CSL_EPWM_DBCTL2_SHDWDBCTLMODE_MASK));
4341 }
4342 
4343 //*****************************************************************************
4344 //
4359 //
4360 //*****************************************************************************
4361 static inline void
4364 {
4365  //
4366  // Enable the shadow mode. Set-up the load mode
4367  //
4368  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4369  ((HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4370  ~CSL_EPWM_DBCTL_LOADREDMODE_MASK) |
4371  ((uint16_t)CSL_EPWM_DBCTL_SHDWDBREDMODE_MASK |
4372  ((uint16_t)loadMode << CSL_EPWM_DBCTL_LOADREDMODE_SHIFT))));
4373 
4374 }
4375 
4376 //*****************************************************************************
4377 //
4385 //
4386 //*****************************************************************************
4387 static inline void
4389 {
4390  //
4391  // Disable the shadow mode.
4392  //
4393  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4394  (HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4395  ~CSL_EPWM_DBCTL_SHDWDBREDMODE_MASK));
4396 }
4397 
4398 //*****************************************************************************
4399 //
4414 //
4415 //*****************************************************************************
4416 static inline void
4419 {
4420  //
4421  // Enable the shadow mode. Setup the load mode.
4422  //
4423  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4424  ((HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4425  ~CSL_EPWM_DBCTL_LOADFEDMODE_MASK) |
4426  (CSL_EPWM_DBCTL_SHDWDBFEDMODE_MASK |
4427  ((uint16_t)loadMode << CSL_EPWM_DBCTL_LOADFEDMODE_SHIFT))));
4428 }
4429 
4430 //*****************************************************************************
4431 //
4440 //
4441 //*****************************************************************************
4442 static inline void
4444 {
4445  //
4446  // Disable the shadow mode.
4447  //
4448  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4449  (HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4450  ~CSL_EPWM_DBCTL_SHDWDBFEDMODE_MASK));
4451 }
4452 
4453 //*****************************************************************************
4454 //
4469 //
4470 //*****************************************************************************
4471 static inline void
4473  EPWM_DeadBandClockMode clockMode)
4474 {
4475  //
4476  // Set the DB clock mode
4477  //
4478  HW_WR_REG16(base + CSL_EPWM_DBCTL,
4479  ((HW_RD_REG16(base + CSL_EPWM_DBCTL) &
4480  ~CSL_EPWM_DBCTL_HALFCYCLE_MASK) |
4481  ((uint16_t)clockMode << CSL_EPWM_DBCTL_HALFCYCLE_SHIFT)));
4482 }
4483 
4484 //*****************************************************************************
4485 //
4495 //
4496 //*****************************************************************************
4497 static inline void
4498 EPWM_setRisingEdgeDelayCount(uint32_t base, uint16_t redCount)
4499 {
4500  //
4501  // Check the arguments
4502  //
4503  DebugP_assert(redCount <= CSL_EPWM_DBRED_DBRED_MAX);
4504 
4505  //
4506  // Set the RED (Rising Edge Delay) count
4507  //
4508  HW_WR_REG16(base + CSL_EPWM_DBRED, redCount);
4509 }
4510 
4511 //*****************************************************************************
4512 //
4522 //
4523 //*****************************************************************************
4524 static inline void
4525 EPWM_setFallingEdgeDelayCount(uint32_t base, uint16_t fedCount)
4526 {
4527  //
4528  // Check the arguments
4529  //
4530  DebugP_assert(fedCount <= CSL_EPWM_DBFED_DBFED_MAX);
4531 
4532  //
4533  // Set the FED (Falling Edge Delay) count
4534  //
4535  HW_WR_REG16(base + CSL_EPWM_DBFED, fedCount);
4536 }
4537 
4538 //
4539 // Chopper module related APIs
4540 //
4541 //*****************************************************************************
4542 //
4550 //
4551 //*****************************************************************************
4552 static inline void
4553 EPWM_enableChopper(uint32_t base)
4554 {
4555  //
4556  // Set CHPEN bit. Enable Chopper
4557  //
4558  HW_WR_REG16(base + CSL_EPWM_PCCTL,
4559  (HW_RD_REG16(base + CSL_EPWM_PCCTL) | CSL_EPWM_PCCTL_CHPEN_MASK));
4560 }
4561 
4562 //*****************************************************************************
4563 //
4571 //
4572 //*****************************************************************************
4573 static inline void
4574 EPWM_disableChopper(uint32_t base)
4575 {
4576  //
4577  // Clear CHPEN bit. Disable Chopper
4578  //
4579  HW_WR_REG16(base + CSL_EPWM_PCCTL,
4580  (HW_RD_REG16(base + CSL_EPWM_PCCTL) & ~CSL_EPWM_PCCTL_CHPEN_MASK));
4581 }
4582 
4583 //*****************************************************************************
4584 //
4596 //
4597 //*****************************************************************************
4598 static inline void
4599 EPWM_setChopperDutyCycle(uint32_t base, uint16_t dutyCycleCount)
4600 {
4601  //
4602  // Check the arguments
4603  //
4604  DebugP_assert(dutyCycleCount < CSL_EPWM_PCCTL_CHPDUTY_MAX);
4605 
4606  //
4607  // Set the chopper duty cycle
4608  //
4609  HW_WR_REG16(base + CSL_EPWM_PCCTL,
4610  ((HW_RD_REG16(base + CSL_EPWM_PCCTL) & ~CSL_EPWM_PCCTL_CHPDUTY_MASK) |
4611  (dutyCycleCount << CSL_EPWM_PCCTL_CHPDUTY_SHIFT)));
4612 }
4613 
4614 //*****************************************************************************
4615 //
4627 //
4628 //*****************************************************************************
4629 static inline void
4630 EPWM_setChopperFreq(uint32_t base, uint16_t freqDiv)
4631 {
4632  //
4633  // Check the arguments
4634  //
4635  DebugP_assert(freqDiv <= CSL_EPWM_PCCTL_CHPFREQ_MAX);
4636 
4637  //
4638  // Set the chopper clock
4639  //
4640  HW_WR_REG16(base + CSL_EPWM_PCCTL,
4641  ((HW_RD_REG16(base + CSL_EPWM_PCCTL) &
4642  ~(uint16_t)CSL_EPWM_PCCTL_CHPFREQ_MASK) |
4643  (freqDiv << CSL_EPWM_PCCTL_CHPFREQ_SHIFT)));
4644 }
4645 
4646 //*****************************************************************************
4647 //
4659 //
4660 //*****************************************************************************
4661 static inline void
4662 EPWM_setChopperFirstPulseWidth(uint32_t base, uint16_t firstPulseWidth)
4663 {
4664  //
4665  // Check the arguments
4666  //
4667  DebugP_assert(firstPulseWidth <= CSL_EPWM_PCCTL_OSHTWTH_MAX);
4668 
4669  //
4670  // Set the chopper clock
4671  //
4672  HW_WR_REG16(base + CSL_EPWM_PCCTL,
4673  ((HW_RD_REG16(base + CSL_EPWM_PCCTL) &
4674  ~(uint16_t)CSL_EPWM_PCCTL_OSHTWTH_MASK) |
4675  (firstPulseWidth << CSL_EPWM_PCCTL_OSHTWTH_SHIFT)));
4676 }
4677 
4678 //
4679 // Trip Zone module related APIs
4680 //
4681 //*****************************************************************************
4682 //
4712 //
4713 //*****************************************************************************
4714 static inline void
4715 EPWM_enableTripZoneSignals(uint32_t base, uint32_t tzSignal)
4716 {
4717  //
4718  // Set the trip zone bits
4719  //
4720  HW_WR_REG32(base + CSL_EPWM_TZSEL,
4721  (HW_RD_REG32(base + CSL_EPWM_TZSEL) | tzSignal));
4722 }
4723 
4724 //*****************************************************************************
4725 //
4755 //
4756 //*****************************************************************************
4757 static inline void
4758 EPWM_disableTripZoneSignals(uint32_t base, uint32_t tzSignal)
4759 {
4760  //
4761  // Clear the trip zone bits
4762  //
4763  HW_WR_REG32(base + CSL_EPWM_TZSEL,
4764  (HW_RD_REG32(base + CSL_EPWM_TZSEL) & ~tzSignal));
4765 }
4766 
4767 //*****************************************************************************
4768 //
4797 //
4798 //*****************************************************************************
4799 static inline void
4803 {
4804  //
4805  // Set Digital Compare Events conditions that cause a Digital Compare trip
4806  //
4807  HW_WR_REG16(base + CSL_EPWM_TZDCSEL,
4808  ((HW_RD_REG16(base + CSL_EPWM_TZDCSEL) &
4809  ~(CSL_EPWM_TZDCSEL_DCAEVT1_MASK << (uint16_t)dcType)) |
4810  ((uint16_t)dcEvent << (uint16_t)dcType)));
4811 }
4812 
4813 //*****************************************************************************
4814 //
4824 //
4825 //*****************************************************************************
4826 static inline void
4828 {
4829  //
4830  // Enable Advanced feature. Set ETZE bit
4831  //
4832  HW_WR_REG16(base + CSL_EPWM_TZCTL2,
4833  (HW_RD_REG16(base + CSL_EPWM_TZCTL2) | CSL_EPWM_TZCTL2_ETZE_MASK));
4834 }
4835 
4836 //*****************************************************************************
4837 //
4845 //
4846 //*****************************************************************************
4847 static inline void
4849 {
4850  //
4851  // Disable Advanced feature. clear ETZE bit
4852  //
4853  HW_WR_REG16(base + CSL_EPWM_TZCTL2,
4854  (HW_RD_REG16(base + CSL_EPWM_TZCTL2) & ~CSL_EPWM_TZCTL2_ETZE_MASK));
4855 }
4856 
4857 //*****************************************************************************
4858 //
4887 //
4888 //*****************************************************************************
4889 static inline void
4891  EPWM_TripZoneAction tzAction)
4892 {
4893  //
4894  // Set the Action for Trip Zone events
4895  //
4896  HW_WR_REG16(base + CSL_EPWM_TZCTL,
4897  ((HW_RD_REG16(base + CSL_EPWM_TZCTL) &
4898  ~(CSL_EPWM_TZCTL_TZA_MASK << (uint16_t)tzEvent)) |
4899  ((uint16_t)tzAction << (uint16_t)tzEvent)));
4900 }
4901 
4902 //*****************************************************************************
4903 //
4938 //
4939 //*****************************************************************************
4940 static inline void
4942  EPWM_TripZoneAdvancedAction tzAdvAction)
4943 {
4944  //
4945  // Set the Advanced Action for Trip Zone events
4946  //
4947  HW_WR_REG16(base + CSL_EPWM_TZCTL2,
4948  ((HW_RD_REG16(base + CSL_EPWM_TZCTL2) &
4949  ~(CSL_EPWM_TZCTL2_TZAU_MASK << (uint16_t)tzAdvEvent)) |
4950  ((uint16_t)tzAdvAction << (uint16_t)tzAdvEvent)));
4951 
4952  HW_WR_REG16(base + CSL_EPWM_TZCTL2,
4953  (HW_RD_REG16(base + CSL_EPWM_TZCTL2) | CSL_EPWM_TZCTL2_ETZE_MASK));
4954 }
4955 
4956 //*****************************************************************************
4957 //
4989 //
4990 //*****************************************************************************
4991 static inline void
4994  EPWM_TripZoneAdvancedAction tzAdvDCAction)
4995 {
4996  //
4997  // Set the Advanced Action for Trip Zone events
4998  //
4999  HW_WR_REG16(base + CSL_EPWM_TZCTLDCA,
5000  ((HW_RD_REG16(base + CSL_EPWM_TZCTLDCA) &
5001  ~(CSL_EPWM_TZCTLDCA_DCAEVT1U_MASK << (uint16_t)tzAdvDCEvent)) |
5002  ((uint16_t)tzAdvDCAction << (uint16_t)tzAdvDCEvent)));
5003 
5004  HW_WR_REG16(base + CSL_EPWM_TZCTL2,
5005  (HW_RD_REG16(base + CSL_EPWM_TZCTL2) | CSL_EPWM_TZCTL2_ETZE_MASK));
5006 }
5007 
5008 //*****************************************************************************
5009 //
5041 //
5042 //*****************************************************************************
5043 static inline void EPWM_setTripZoneAdvDigitalCompareActionB(uint32_t base,
5045  EPWM_TripZoneAdvancedAction tzAdvDCAction)
5046 {
5047  //
5048  // Set the Advanced Action for Trip Zone events
5049  //
5050  HW_WR_REG16(base + CSL_EPWM_TZCTLDCB,
5051  ((HW_RD_REG16(base + CSL_EPWM_TZCTLDCB) &
5052  ~(CSL_EPWM_TZCTLDCB_DCBEVT1U_MASK << (uint16_t)tzAdvDCEvent)) |
5053  ((uint16_t)tzAdvDCAction << (uint16_t)tzAdvDCEvent)));
5054 
5055  HW_WR_REG16(base + CSL_EPWM_TZCTL2,
5056  (HW_RD_REG16(base + CSL_EPWM_TZCTL2) | CSL_EPWM_TZCTL2_ETZE_MASK));
5057 }
5058 
5059 //*****************************************************************************
5060 //
5079 //
5080 //*****************************************************************************
5081 static inline void
5082 EPWM_enableTripZoneInterrupt(uint32_t base, uint16_t tzInterrupt)
5083 {
5084  //
5085  // Check the arguments
5086  //
5087  DebugP_assert((tzInterrupt >= 0U) && (tzInterrupt < 0x80U));
5088 
5089  //
5090  // Enable Trip zone interrupts
5091  //
5092  HW_WR_REG16(base + CSL_EPWM_TZEINT,
5093  (HW_RD_REG16(base + CSL_EPWM_TZEINT) | tzInterrupt));
5094 }
5095 
5096 //*****************************************************************************
5097 //
5116 //
5117 //***************************************************************************
5118 static inline void
5119 EPWM_disableTripZoneInterrupt(uint32_t base, uint16_t tzInterrupt)
5120 {
5121  //
5122  // Check the arguments
5123  //
5124  DebugP_assert((tzInterrupt > 0U) && (tzInterrupt < 0x80U));
5125 
5126  //
5127  // Disable Trip zone interrupts
5128  //
5129  HW_WR_REG16(base + CSL_EPWM_TZEINT,
5130  (HW_RD_REG16(base + CSL_EPWM_TZEINT) & ~tzInterrupt));
5131 }
5132 
5133 //*****************************************************************************
5134 //
5151 //
5152 //***************************************************************************
5153 static inline uint16_t
5155 {
5156  //
5157  // Return the Trip zone flag status
5158  //
5159  return(HW_RD_REG16(base + CSL_EPWM_TZFLG) & 0xFFU);
5160 }
5161 
5162 //*****************************************************************************
5163 //
5183 //
5184 //***************************************************************************
5185 static inline uint16_t
5187 {
5188  //
5189  // Return the Cycle By Cycle Trip zone flag status
5190  //
5191  return(HW_RD_REG16(base + CSL_EPWM_TZCBCFLG) & 0x1FFU);
5192 }
5193 
5194 //*****************************************************************************
5195 //
5213 //
5214 //***************************************************************************
5215 static inline uint16_t
5217 {
5218  //
5219  // Return the One Shot Trip zone flag status
5220  //
5221  return(HW_RD_REG16(base + CSL_EPWM_TZOSTFLG) & 0x1FFU);
5222 }
5223 
5224 //*****************************************************************************
5225 //
5242 //
5243 //**************************************************************************
5244 static inline void
5247 {
5248  //
5249  // Set the Cycle by Cycle Trip Latch mode
5250  //
5251  HW_WR_REG16(base + CSL_EPWM_TZCLR,
5252  ((HW_RD_REG16(base + CSL_EPWM_TZCLR) &
5253  ~CSL_EPWM_TZCLR_CBCPULSE_MASK) |
5254  ((uint16_t)clearEvent << CSL_EPWM_TZCLR_CBCPULSE_SHIFT)));
5255 }
5256 
5257 //*****************************************************************************
5258 //
5278 //
5279 //***************************************************************************
5280 static inline void
5281 EPWM_clearTripZoneFlag(uint32_t base, uint16_t tzFlags)
5282 {
5283  //
5284  // Check the arguments
5285  //
5286  DebugP_assert((tzFlags < 0x80U) && (tzFlags >= 0x1U));
5287 
5288  //
5289  // Clear Trip zone event flag
5290  //
5291  HW_WR_REG16(base + CSL_EPWM_TZCLR,
5292  (HW_RD_REG16(base + CSL_EPWM_TZCLR) | tzFlags));
5293 }
5294 
5295 //*****************************************************************************
5296 //
5316 //
5317 //***************************************************************************
5318 static inline void
5319 EPWM_clearCycleByCycleTripZoneFlag(uint32_t base, uint16_t tzCBCFlags)
5320 {
5321  //
5322  // Check the arguments
5323  //
5324  DebugP_assert(tzCBCFlags < 0x200U);
5325 
5326  //
5327  // Clear the Cycle By Cycle Trip zone flag
5328  //
5329  HW_WR_REG16(base + CSL_EPWM_TZCBCCLR,
5330  (HW_RD_REG16(base + CSL_EPWM_TZCBCCLR) | tzCBCFlags));
5331 }
5332 
5333 //*****************************************************************************
5334 //
5353 //
5354 //***************************************************************************
5355 static inline void
5356 EPWM_clearOneShotTripZoneFlag(uint32_t base, uint16_t tzOSTFlags)
5357 {
5358  //
5359  // Check the arguments
5360  //
5361  DebugP_assert(tzOSTFlags < 0x200U);
5362 
5363  //
5364  // Clear the Cycle By Cycle Trip zone flag
5365  //
5366  HW_WR_REG16(base + CSL_EPWM_TZOSTCLR,
5367  (HW_RD_REG16(base + CSL_EPWM_TZOSTCLR) | tzOSTFlags));
5368 }
5369 
5370 //*****************************************************************************
5371 //
5387 //
5388 //***************************************************************************
5389 static inline void
5390 EPWM_forceTripZoneEvent(uint32_t base, uint16_t tzForceEvent)
5391 {
5392  //
5393  // Check the arguments
5394  //
5395  DebugP_assert((tzForceEvent & 0xFF01U)== 0U);
5396 
5397  //
5398  // Force a Trip Zone event
5399  //
5400  HW_WR_REG16(base + CSL_EPWM_TZFRC,
5401  (HW_RD_REG16(base + CSL_EPWM_TZFRC) | tzForceEvent));
5402 }
5403 
5404 //*****************************************************************************
5405 //
5419 //
5420 //***************************************************************************
5421 static inline void
5422 EPWM_enableTripZoneOutput(uint32_t base, uint16_t tzOutput)
5423 {
5424  //
5425  // Enable the Trip Zone signals as output
5426  //
5427  HW_WR_REG16(base + CSL_EPWM_TZTRIPOUTSEL,
5428  (HW_RD_REG16(base + CSL_EPWM_TZTRIPOUTSEL) | tzOutput));
5429 }
5430 
5431 //*****************************************************************************
5432 //
5446 //
5447 //***************************************************************************
5448 static inline void
5449 EPWM_disableTripZoneOutput(uint32_t base, uint16_t tzOutput)
5450 {
5451  //
5452  // Disable the Trip Zone signals as output
5453  //
5454  HW_WR_REG16(base + CSL_EPWM_TZTRIPOUTSEL,
5455  (HW_RD_REG16(base + CSL_EPWM_TZTRIPOUTSEL) & ~tzOutput));
5456 }
5457 
5458 //
5459 // Event Trigger related APIs
5460 //
5461 //*****************************************************************************
5462 //
5470 //
5471 //*****************************************************************************
5472 static inline void
5473 EPWM_enableInterrupt(uint32_t base)
5474 {
5475  //
5476  // Enable ePWM interrupt
5477  //
5478  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5479  (HW_RD_REG16(base + CSL_EPWM_ETSEL) | CSL_EPWM_ETSEL_INTEN_MASK));
5480 }
5481 
5482 //*****************************************************************************
5483 //
5491 //
5492 //*****************************************************************************
5493 static inline void
5495 {
5496  //
5497  // Disable ePWM interrupt
5498  //
5499  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5500  (HW_RD_REG16(base + CSL_EPWM_ETSEL) & ~CSL_EPWM_ETSEL_INTEN_MASK));
5501 }
5502 
5503 //*****************************************************************************
5504 //
5527 //
5528 //*****************************************************************************
5529 static inline void
5530 EPWM_setInterruptSource(uint32_t base, uint16_t interruptSource,
5531  uint16_t mixedSource)
5532 {
5533  uint16_t intSource;
5534 
5535  //
5536  // Check the arguments
5537  //
5538  DebugP_assert(((interruptSource > 0U) && (interruptSource < 9U)) ||
5539  (interruptSource == 10U) || (interruptSource == 12U) ||
5540  (interruptSource == 14U));
5541 
5542  if((interruptSource == EPWM_INT_TBCTR_U_CMPC) ||
5543  (interruptSource == EPWM_INT_TBCTR_U_CMPD) ||
5544  (interruptSource == EPWM_INT_TBCTR_D_CMPC) ||
5545  (interruptSource == EPWM_INT_TBCTR_D_CMPD))
5546  {
5547  //
5548  // Shift the interrupt source by 1
5549  //
5550  intSource = interruptSource >> 1U;
5551 
5552  //
5553  // Enable events based on comp C or comp D
5554  //
5555  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5556  (HW_RD_REG16(base + CSL_EPWM_ETSEL) |
5557  CSL_EPWM_ETSEL_INTSELCMP_MASK));
5558  }
5559  else if((interruptSource == EPWM_INT_TBCTR_U_CMPA) ||
5560  (interruptSource == EPWM_INT_TBCTR_U_CMPB) ||
5561  (interruptSource == EPWM_INT_TBCTR_D_CMPA) ||
5562  (interruptSource == EPWM_INT_TBCTR_D_CMPB))
5563  {
5564  intSource = interruptSource;
5565 
5566  //
5567  // Enable events based on comp A or comp B
5568  //
5569  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5570  (HW_RD_REG16(base + CSL_EPWM_ETSEL) &
5571  ~CSL_EPWM_ETSEL_INTSELCMP_MASK));
5572  }
5573  else if(interruptSource == EPWM_INT_TBCTR_ETINTMIX)
5574  {
5575  intSource = interruptSource;
5576 
5577  //
5578  // Enable mixed events
5579  //
5580  HW_WR_REG16(base + CSL_EPWM_ETINTMIXEN, mixedSource);
5581  }
5582  else
5583  {
5584  intSource = interruptSource;
5585  }
5586 
5587  //
5588  // Set the interrupt source
5589  //
5590  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5591  ((HW_RD_REG16(base + CSL_EPWM_ETSEL) &
5592  ~CSL_EPWM_ETSEL_INTSEL_MASK) | intSource));
5593 }
5594 
5595 //*****************************************************************************
5596 //
5607 //
5608 //*****************************************************************************
5609 static inline void
5610 EPWM_setInterruptEventCount(uint32_t base, uint16_t eventCount)
5611 {
5612  //
5613  // Check the arguments
5614  //
5615  DebugP_assert(eventCount <= CSL_EPWM_ETINTPS_INTPRD2_MAX);
5616 
5617  //
5618  // Enable advanced feature of interrupt every up to 15 events
5619  //
5620  HW_WR_REG16(base + CSL_EPWM_ETPS,
5621  (HW_RD_REG16(base + CSL_EPWM_ETPS) | CSL_EPWM_ETPS_INTPSSEL_MASK));
5622 
5623  HW_WR_REG16(base + CSL_EPWM_ETINTPS,
5624  ((HW_RD_REG16(base + CSL_EPWM_ETINTPS) &
5625  ~CSL_EPWM_ETINTPS_INTPRD2_MASK) | eventCount));
5626 }
5627 
5628 //*****************************************************************************
5629 //
5639 //
5640 //*****************************************************************************
5641 static inline bool
5643 {
5644  //
5645  // Return INT bit of ETFLG register
5646  //
5647  return(((HW_RD_REG16(base + CSL_EPWM_ETFLG) & 0x1U) ==
5648  0x1U) ? true : false);
5649 }
5650 
5651 //*****************************************************************************
5652 //
5660 //
5661 //*****************************************************************************
5662 static inline void
5664 {
5665  //
5666  // Clear INT bit of ETCLR register
5667  //
5668  HW_WR_REG16(base + CSL_EPWM_ETCLR,
5669  (HW_RD_REG16(base + CSL_EPWM_ETCLR) | CSL_EPWM_ETCLR_INT_MASK));
5670 }
5671 
5672 //*****************************************************************************
5673 //
5684 //
5685 //*****************************************************************************
5686 static inline void
5688 {
5689  //
5690  // Enable interrupt event count initializing/loading
5691  //
5692  HW_WR_REG16(base + CSL_EPWM_ETCNTINITCTL,
5693  (HW_RD_REG16(base + CSL_EPWM_ETCNTINITCTL) |
5694  CSL_EPWM_ETCNTINITCTL_INTINITEN_MASK));
5695 }
5696 
5697 //*****************************************************************************
5698 //
5707 //
5708 //*****************************************************************************
5709 static inline void
5711 {
5712  //
5713  // Disable interrupt event count initializing/loading
5714  //
5715  HW_WR_REG16(base + CSL_EPWM_ETCNTINITCTL,
5716  (HW_RD_REG16(base + CSL_EPWM_ETCNTINITCTL) &
5717  ~CSL_EPWM_ETCNTINITCTL_INTINITEN_MASK));
5718 }
5719 
5720 //*****************************************************************************
5721 //
5733 //
5734 //*****************************************************************************
5735 static inline void
5737 {
5738  //
5739  // Load the Interrupt Event counter value
5740  //
5741  HW_WR_REG16(base + CSL_EPWM_ETCNTINITCTL,
5742  (HW_RD_REG16(base + CSL_EPWM_ETCNTINITCTL) |
5743  CSL_EPWM_ETCNTINITCTL_INTINITFRC_MASK));
5744 }
5745 
5746 //*****************************************************************************
5747 //
5758 //
5759 //*****************************************************************************
5760 static inline void
5761 EPWM_setInterruptEventCountInitValue(uint32_t base, uint16_t eventCount)
5762 {
5763  //
5764  // Check the arguments
5765  //
5766  DebugP_assert(eventCount <= CSL_EPWM_ETCNTINIT_INTINIT_MAX);
5767 
5768  //
5769  // Set the Pre-interrupt event count
5770  //
5771  HW_WR_REG16(base + CSL_EPWM_ETCNTINIT,
5772  ((HW_RD_REG16(base + CSL_EPWM_ETCNTINIT) &
5773  ~CSL_EPWM_ETCNTINIT_INTINIT_MASK) |
5774  (uint16_t)(eventCount & CSL_EPWM_ETCNTINIT_INTINIT_MASK)));
5775 }
5776 
5777 //*****************************************************************************
5778 //
5786 //
5787 //*****************************************************************************
5788 static inline uint16_t
5790 {
5791  //
5792  // Return the interrupt event count
5793  //
5794  return(((HW_RD_REG16(base + CSL_EPWM_ETINTPS) &
5795  CSL_EPWM_ETINTPS_INTCNT2_MASK) >>
5796  CSL_EPWM_ETINTPS_INTCNT2_SHIFT));
5797 }
5798 
5799 //*****************************************************************************
5800 //
5808 //
5809 //*****************************************************************************
5810 static inline void
5812 {
5813  //
5814  // Set INT bit of ETFRC register
5815  //
5816  HW_WR_REG16(base + CSL_EPWM_ETFRC,
5817  (HW_RD_REG16(base + CSL_EPWM_ETFRC) | CSL_EPWM_ETFRC_INT_MASK));
5818 }
5819 
5820 //
5821 // ADC SOC configuration related APIs
5822 //
5823 //*****************************************************************************
5824 //
5836 //
5837 //*****************************************************************************
5838 static inline void
5840 {
5841  //
5842  // Enable an SOC
5843  //
5844  if(adcSOCType == EPWM_SOC_A)
5845  {
5846  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5847  (HW_RD_REG16(base + CSL_EPWM_ETSEL) | CSL_EPWM_ETSEL_SOCAEN_MASK));
5848  }
5849  else
5850  {
5851  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5852  (HW_RD_REG16(base + CSL_EPWM_ETSEL) | CSL_EPWM_ETSEL_SOCBEN_MASK));
5853  }
5854 }
5855 
5856 //*****************************************************************************
5857 //
5869 //
5870 //*****************************************************************************
5871 static inline void
5873 {
5874  //
5875  // Disable an SOC
5876  //
5877  if(adcSOCType == EPWM_SOC_A)
5878  {
5879  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5880  (HW_RD_REG16(base + CSL_EPWM_ETSEL) & ~CSL_EPWM_ETSEL_SOCAEN_MASK));
5881  }
5882  else
5883  {
5884  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5885  (HW_RD_REG16(base + CSL_EPWM_ETSEL) & ~CSL_EPWM_ETSEL_SOCBEN_MASK));
5886  }
5887 }
5888 
5889 //*****************************************************************************
5890 //
5919 //
5920 //*****************************************************************************
5921 static inline void
5923  EPWM_ADCStartOfConversionType adcSOCType,
5925  uint16_t mixedSource)
5926 {
5927  uint16_t source;
5928 
5929  if((socSource == EPWM_SOC_TBCTR_U_CMPC) ||
5930  (socSource == EPWM_SOC_TBCTR_U_CMPD) ||
5931  (socSource == EPWM_SOC_TBCTR_D_CMPC) ||
5932  (socSource == EPWM_SOC_TBCTR_D_CMPD))
5933  {
5934  source = (uint16_t)socSource >> 1U;
5935  }
5936  else
5937  {
5938  source = (uint16_t)socSource;
5939  }
5940 
5941  if(adcSOCType == EPWM_SOC_A)
5942  {
5943  //
5944  // Set the SOC source
5945  //
5946  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5947  ((HW_RD_REG16(base + CSL_EPWM_ETSEL) &
5948  ~CSL_EPWM_ETSEL_SOCASEL_MASK) |
5949  (source << CSL_EPWM_ETSEL_SOCASEL_SHIFT)));
5950 
5951  //
5952  // Enable the comparator selection
5953  //
5954  if((socSource == EPWM_SOC_TBCTR_U_CMPA) ||
5955  (socSource == EPWM_SOC_TBCTR_U_CMPB) ||
5956  (socSource == EPWM_SOC_TBCTR_D_CMPA) ||
5957  (socSource == EPWM_SOC_TBCTR_D_CMPB))
5958  {
5959  //
5960  // Enable events based on comp A or comp B
5961  //
5962  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5963  (HW_RD_REG16(base + CSL_EPWM_ETSEL) &
5964  ~CSL_EPWM_ETSEL_SOCASELCMP_MASK));
5965  }
5966  else if((socSource == EPWM_SOC_TBCTR_U_CMPC) ||
5967  (socSource == EPWM_SOC_TBCTR_U_CMPD) ||
5968  (socSource == EPWM_SOC_TBCTR_D_CMPC) ||
5969  (socSource == EPWM_SOC_TBCTR_D_CMPD))
5970  {
5971  //
5972  // Enable events based on comp C or comp D
5973  //
5974  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5975  (HW_RD_REG16(base + CSL_EPWM_ETSEL) |
5976  CSL_EPWM_ETSEL_SOCASELCMP_MASK));
5977  }
5978  else if(socSource == EPWM_SOC_TBCTR_MIXED_EVENT)
5979  {
5980  //
5981  // Enable mixed events
5982  //
5983  HW_WR_REG16(base + CSL_EPWM_ETSOCAMIXEN, mixedSource);
5984  }
5985  else
5986  {
5987  //
5988  // No action required for the other socSource options
5989  //
5990  }
5991  }
5992  else
5993  {
5994  //
5995  // Enable the comparator selection
5996  //
5997  HW_WR_REG16(base + CSL_EPWM_ETSEL,
5998  ((HW_RD_REG16(base + CSL_EPWM_ETSEL) &
5999  ~CSL_EPWM_ETSEL_SOCBSEL_MASK) |
6000  (source << CSL_EPWM_ETSEL_SOCBSEL_SHIFT)));
6001 
6002  //
6003  // Enable the comparator selection
6004  //
6005  if((socSource == EPWM_SOC_TBCTR_U_CMPA) ||
6006  (socSource == EPWM_SOC_TBCTR_U_CMPB) ||
6007  (socSource == EPWM_SOC_TBCTR_D_CMPA) ||
6008  (socSource == EPWM_SOC_TBCTR_D_CMPB))
6009  {
6010  //
6011  // Enable events based on comp A or comp B
6012  //
6013  HW_WR_REG16(base + CSL_EPWM_ETSEL,
6014  (HW_RD_REG16(base + CSL_EPWM_ETSEL) &
6015  ~CSL_EPWM_ETSEL_SOCBSELCMP_MASK));
6016  }
6017  else if((socSource == EPWM_SOC_TBCTR_U_CMPC) ||
6018  (socSource == EPWM_SOC_TBCTR_U_CMPD) ||
6019  (socSource == EPWM_SOC_TBCTR_D_CMPC) ||
6020  (socSource == EPWM_SOC_TBCTR_D_CMPD))
6021  {
6022  //
6023  // Enable events based on comp C or comp D
6024  //
6025  HW_WR_REG16(base + CSL_EPWM_ETSEL,
6026  (HW_RD_REG16(base + CSL_EPWM_ETSEL) |
6027  CSL_EPWM_ETSEL_SOCBSELCMP_MASK));
6028  }
6029  else if(socSource == EPWM_SOC_TBCTR_MIXED_EVENT)
6030  {
6031  //
6032  // Enable mixed events
6033  //
6034  HW_WR_REG16(base + CSL_EPWM_ETSOCBMIXEN, mixedSource);
6035  }
6036  else
6037  {
6038  //
6039  // No action required for the other socSource options
6040  //
6041  }
6042  }
6043 }
6044 
6045 //*****************************************************************************
6046 //
6066 //
6067 //*****************************************************************************
6068 static inline void
6070  EPWM_ADCStartOfConversionType adcSOCType,
6071  uint16_t preScaleCount)
6072 {
6073  //
6074  // Check the arguments
6075  //
6076  DebugP_assert(preScaleCount <= CSL_EPWM_ETSOCPS_SOCAPRD2_MAX);
6077 
6078  //
6079  // Enable advanced feature of SOC every up to 15 events
6080  //
6081  HW_WR_REG16(base + CSL_EPWM_ETPS,
6082  (HW_RD_REG16(base + CSL_EPWM_ETPS) |
6083  CSL_EPWM_ETPS_SOCPSSEL_MASK));
6084 
6085  if(adcSOCType == EPWM_SOC_A)
6086  {
6087  //
6088  // Set the count for SOC A
6089  //
6090  HW_WR_REG16(base + CSL_EPWM_ETSOCPS,
6091  ((HW_RD_REG16(base + CSL_EPWM_ETSOCPS) &
6092  ~CSL_EPWM_ETSOCPS_SOCAPRD2_MASK) |
6093  preScaleCount));
6094  }
6095  else
6096  {
6097  //
6098  // Set the count for SOC B
6099  //
6100  HW_WR_REG16(base + CSL_EPWM_ETSOCPS,
6101  ((HW_RD_REG16(base + CSL_EPWM_ETSOCPS) &
6102  ~CSL_EPWM_ETSOCPS_SOCBPRD2_MASK) |
6103  (preScaleCount << CSL_EPWM_ETSOCPS_SOCBPRD2_SHIFT)));
6104  }
6105 }
6106 
6107 //*****************************************************************************
6108 //
6121 //
6122 //*****************************************************************************
6123 static inline bool
6125  EPWM_ADCStartOfConversionType adcSOCType)
6126 {
6127  //
6128  // Return the SOC A/ B status
6129  //
6130  return((((HW_RD_REG16(base + CSL_EPWM_ETFLG) >>
6131  ((uint16_t)adcSOCType + CSL_EPWM_ETFLG_SOCA_SHIFT)) &
6132  0x1U) == 0x1U) ? true : false);
6133 }
6134 
6135 //*****************************************************************************
6136 //
6148 //
6149 //*****************************************************************************
6150 static inline void
6152  EPWM_ADCStartOfConversionType adcSOCType)
6153 {
6154  //
6155  // Clear SOC A/B bit of ETCLR register
6156  //
6157  HW_WR_REG16(base + CSL_EPWM_ETCLR,
6158  (HW_RD_REG16(base + CSL_EPWM_ETCLR) |
6159  1U << ((uint16_t)adcSOCType + CSL_EPWM_ETCLR_SOCA_SHIFT)));
6160 }
6161 
6162 //*****************************************************************************
6163 //
6179 //
6180 //*****************************************************************************
6181 static inline void
6183  EPWM_ADCStartOfConversionType adcSOCType)
6184 {
6185  //
6186  // Enable SOC event count initializing/loading
6187  //
6188  HW_WR_REG16(base + CSL_EPWM_ETCNTINITCTL,
6189  (HW_RD_REG16(base + CSL_EPWM_ETCNTINITCTL) | 1U <<
6190  ((uint16_t)adcSOCType + CSL_EPWM_ETCNTINITCTL_SOCAINITEN_SHIFT)));
6191 }
6192 
6193 //*****************************************************************************
6194 //
6209 //
6210 //*****************************************************************************
6211 static inline void
6213  EPWM_ADCStartOfConversionType adcSOCType)
6214 {
6215  //
6216  // Disable SOC event count initializing/loading
6217  //
6218  HW_WR_REG16(base + CSL_EPWM_ETCNTINITCTL,
6219  (HW_RD_REG16(base + CSL_EPWM_ETCNTINITCTL) &
6220  ~(1U << ((uint16_t)adcSOCType +
6221  CSL_EPWM_ETCNTINITCTL_SOCAINITEN_SHIFT))));
6222 }
6223 
6224 //*****************************************************************************
6225 //
6238 //
6239 //*****************************************************************************
6240 static inline void
6242  EPWM_ADCStartOfConversionType adcSOCType)
6243 {
6244  //
6245  // Load the Interrupt Event counter value
6246  //
6247  HW_WR_REG16(base + CSL_EPWM_ETCNTINITCTL,
6248  (HW_RD_REG16(base + CSL_EPWM_ETCNTINITCTL) |
6249  1U << ((uint16_t)adcSOCType +
6250  CSL_EPWM_ETCNTINITCTL_SOCAINITFRC_SHIFT)));
6251 }
6252 
6253 //*****************************************************************************
6254 //
6268 //
6269 //*****************************************************************************
6270 static inline void
6272  EPWM_ADCStartOfConversionType adcSOCType,
6273  uint16_t eventCount)
6274 {
6275  //
6276  // Check the arguments
6277  //
6278  DebugP_assert(eventCount <= CSL_EPWM_ETCNTINIT_SOCAINIT_MAX);
6279 
6280  //
6281  // Set the ADC Trigger event count
6282  //
6283  if(adcSOCType == EPWM_SOC_A)
6284  {
6285  HW_WR_REG16(base + CSL_EPWM_ETCNTINIT,
6286  ((HW_RD_REG16(base + CSL_EPWM_ETCNTINIT) &
6287  ~CSL_EPWM_ETCNTINIT_SOCAINIT_MASK) |
6288  (uint16_t)(eventCount << CSL_EPWM_ETCNTINIT_SOCAINIT_SHIFT)));
6289  }
6290  else
6291  {
6292  HW_WR_REG16(base + CSL_EPWM_ETCNTINIT,
6293  ((HW_RD_REG16(base + CSL_EPWM_ETCNTINIT) &
6294  ~CSL_EPWM_ETCNTINIT_SOCBINIT_MASK) |
6295  (eventCount << CSL_EPWM_ETCNTINIT_SOCBINIT_SHIFT)));
6296  }
6297 }
6298 
6299 //*****************************************************************************
6300 //
6312 //
6313 //*****************************************************************************
6314 static inline uint16_t
6316  EPWM_ADCStartOfConversionType adcSOCType)
6317 {
6318  uint16_t eventCount;
6319 
6320  //
6321  // Return the SOC event count
6322  //
6323  if(adcSOCType == EPWM_SOC_A)
6324  {
6325  eventCount = (HW_RD_REG16(base + CSL_EPWM_ETSOCPS) >>
6326  CSL_EPWM_ETSOCPS_SOCACNT2_SHIFT) &
6327  CSL_EPWM_ETSOCPS_SOCACNT2_MAX;
6328  }
6329  else
6330  {
6331  eventCount = (HW_RD_REG16(base + CSL_EPWM_ETSOCPS) >>
6332  CSL_EPWM_ETSOCPS_SOCBCNT2_SHIFT) &
6333  CSL_EPWM_ETSOCPS_SOCBCNT2_MAX;
6334  }
6335 
6336  return(eventCount);
6337 }
6338 
6339 //*****************************************************************************
6340 //
6352 //
6353 //*****************************************************************************
6354 static inline void
6356 {
6357  //
6358  // Set SOC A/B bit of ETFRC register
6359  //
6360  HW_WR_REG16(base + CSL_EPWM_ETFRC,
6361  (HW_RD_REG16(base + CSL_EPWM_ETFRC) |
6362  1U << ((uint16_t)adcSOCType + CSL_EPWM_ETFRC_SOCA_SHIFT)));
6363 }
6364 
6365 //
6366 // Digital Compare module related APIs
6367 //
6368 //*****************************************************************************
6369 //
6391 //
6392 //*****************************************************************************
6393 static inline void
6395  EPWM_DigitalCompareTripInput tripSource,
6396  EPWM_DigitalCompareType dcType)
6397 {
6398  //
6399  // Set the DC trip input
6400  //
6401  HW_WR_REG16(base + CSL_EPWM_DCTRIPSEL,
6402  ((HW_RD_REG16(base + CSL_EPWM_DCTRIPSEL) &
6403  ~(CSL_EPWM_DCTRIPSEL_DCAHCOMPSEL_MASK <<
6404  ((uint16_t)dcType << 2U))) |
6405  ((uint16_t)tripSource << ((uint16_t)dcType << 2U))));
6406 }
6407 
6408 //
6409 // DCFILT
6410 //
6411 //*****************************************************************************
6412 //
6420 //
6421 //*****************************************************************************
6422 static inline void
6424 {
6425  //
6426  // Enable DC filter blanking window
6427  //
6428  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6429  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) | CSL_EPWM_DCFCTL_BLANKE_MASK));
6430 }
6431 
6432 //*****************************************************************************
6433 //
6441 //
6442 //*****************************************************************************
6443 static inline void
6445 {
6446  //
6447  // Disable DC filter blanking window
6448  //
6449  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6450  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) & ~CSL_EPWM_DCFCTL_BLANKE_MASK));
6451 }
6452 
6453 //*****************************************************************************
6454 //
6463 //
6464 //*****************************************************************************
6465 static inline void
6467 {
6468  //
6469  // Enable DC window inverse mode.
6470  //
6471  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6472  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) | CSL_EPWM_DCFCTL_BLANKINV_MASK));
6473 }
6474 
6475 //*****************************************************************************
6476 //
6484 //
6485 //*****************************************************************************
6486 static inline void
6488 {
6489  //
6490  // Disable DC window inverse mode.
6491  //
6492  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6493  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6494  ~CSL_EPWM_DCFCTL_BLANKINV_MASK));
6495 }
6496 
6497 //*****************************************************************************
6498 //
6514 //
6515 //*****************************************************************************
6516 static inline void
6518  EPWM_DigitalCompareBlankingPulse blankingPulse,
6519  uint16_t mixedSource)
6520 {
6521  if(blankingPulse == EPWM_DC_WINDOW_START_TBCTR_BLANK_PULSE_MIX)
6522  {
6523  //
6524  // Enable mixed events
6525  //
6526  HW_WR_REG16(base + CSL_EPWM_BLANKPULSEMIXSEL, mixedSource);
6527  }
6528 
6529  //
6530  // Set DC blanking event
6531  //
6532  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6533  ((HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6534  ~CSL_EPWM_DCFCTL_PULSESEL_MASK) |
6535  ((uint16_t)((uint32_t)blankingPulse <<
6536  CSL_EPWM_DCFCTL_PULSESEL_SHIFT))));
6537 }
6538 
6539 //*****************************************************************************
6540 //
6555 //
6556 //*****************************************************************************
6557 static inline void
6559  EPWM_DigitalCompareFilterInput filterInput)
6560 {
6561  //
6562  // Set the signal source that will be filtered
6563  //
6564  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6565  ((HW_RD_REG16(base + CSL_EPWM_DCFCTL) & ~CSL_EPWM_DCFCTL_SRCSEL_MASK) |
6566  ((uint16_t)filterInput)));
6567 }
6568 
6569 //
6570 // DC Edge Filter
6571 //
6572 //*****************************************************************************
6573 //
6582 //
6583 //*****************************************************************************
6584 static inline void
6586 {
6587  //
6588  // Enable DC Edge Filter
6589  //
6590  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6591  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) |
6592  CSL_EPWM_DCFCTL_EDGEFILTSEL_MASK));
6593 }
6594 
6595 //*****************************************************************************
6596 //
6604 //
6605 //*****************************************************************************
6606 static inline void
6608 {
6609  //
6610  // Disable DC Edge Filter
6611  //
6612  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6613  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6614  ~CSL_EPWM_DCFCTL_EDGEFILTSEL_MASK));
6615 }
6616 
6617 //*****************************************************************************
6618 //
6631 //
6632 //*****************************************************************************
6633 static inline void
6636 {
6637  //
6638  // Set DC Edge filter mode
6639  //
6640  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6641  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6642  ~CSL_EPWM_DCFCTL_EDGEMODE_MASK) |
6643  (edgeMode << CSL_EPWM_DCFCTL_EDGEMODE_SHIFT));
6644 }
6645 
6646 //*****************************************************************************
6647 //
6665 //
6666 //*****************************************************************************
6667 static inline void
6670 {
6671  //
6672  // Set DC Edge filter edge count
6673  //
6674  HW_WR_REG16(base + CSL_EPWM_DCFCTL,
6675  (HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6676  ~CSL_EPWM_DCFCTL_EDGECOUNT_MASK) |
6677  (edgeCount << CSL_EPWM_DCFCTL_EDGECOUNT_SHIFT));
6678 }
6679 
6680 //*****************************************************************************
6681 //
6690 //
6691 //*****************************************************************************
6692 static inline uint16_t
6694 {
6695  //
6696  // Return configured DC edge filter edge count
6697  //
6698  return((HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6699  CSL_EPWM_DCFCTL_EDGECOUNT_MASK) >>
6700  CSL_EPWM_DCFCTL_EDGECOUNT_SHIFT);
6701 }
6702 
6703 //*****************************************************************************
6704 //
6713 //
6714 //*****************************************************************************
6715 static inline uint16_t
6717 {
6718  //
6719  // Return captured edge count by DC Edge filter
6720  //
6721  return((HW_RD_REG16(base + CSL_EPWM_DCFCTL) &
6722  CSL_EPWM_DCFCTL_EDGESTATUS_MASK) >>
6723  CSL_EPWM_DCFCTL_EDGESTATUS_SHIFT);
6724 }
6725 
6726 //*****************************************************************************
6727 //
6738 //
6739 //*****************************************************************************
6740 static inline void
6741 EPWM_setDigitalCompareWindowOffset(uint32_t base, uint16_t windowOffsetCount)
6742 {
6743  //
6744  // Set the blanking window offset in TBCLK counts
6745  //
6746  HW_WR_REG16(base + CSL_EPWM_DCFOFFSET, windowOffsetCount);
6747 }
6748 
6749 //*****************************************************************************
6750 //
6760 //
6761 //*****************************************************************************
6762 static inline void
6763 EPWM_setDigitalCompareWindowLength(uint32_t base, uint16_t windowLengthCount)
6764 {
6765  //
6766  // Set the blanking window length in TBCLK counts
6767  //
6768  HW_WR_REG16(base + CSL_EPWM_DCFWINDOW, windowLengthCount);
6769 }
6770 
6771 //*****************************************************************************
6772 //
6780 //
6781 //*****************************************************************************
6782 static inline uint16_t
6784 {
6785  //
6786  // Return the Blanking Window Offset count
6787  //
6788  return(HW_RD_REG16(base + CSL_EPWM_DCFOFFSETCNT));
6789 }
6790 
6791 //*****************************************************************************
6792 //
6800 //
6801 //*****************************************************************************
6802 static inline uint16_t
6804 {
6805  //
6806  // Return the Blanking Window Length count
6807  //
6808  return(HW_RD_REG16(base + CSL_EPWM_DCFWINDOWCNT));
6809 }
6810 
6811 //*****************************************************************************
6812 //
6838 //
6839 //*****************************************************************************
6840 static inline void
6842  EPWM_DigitalCompareModule dcModule,
6843  EPWM_DigitalCompareEvent dcEvent,
6844  EPWM_DigitalCompareEventSource dcEventSource)
6845 {
6846  uint32_t registerOffset;
6847 
6848  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
6849 
6850  //
6851  // Set the DC event 1 source source
6852  //
6853  if(dcEvent == EPWM_DC_EVENT_1)
6854  {
6855  HW_WR_REG16(base + registerOffset,
6856  ((HW_RD_REG16(base + registerOffset) &
6857  ~CSL_EPWM_DCACTL_EVT1SRCSEL_MASK) |
6858  (uint16_t)dcEventSource));
6859  }
6860  else
6861  {
6862  HW_WR_REG16(base + registerOffset,
6863  ((HW_RD_REG16(base + registerOffset) &
6864  ~CSL_EPWM_DCACTL_EVT2SRCSEL_MASK) |
6865  ((uint16_t)dcEventSource << CSL_EPWM_DCACTL_EVT2SRCSEL_SHIFT)));
6866  }
6867 }
6868 
6869 //*****************************************************************************
6870 //
6893 //
6894 //*****************************************************************************
6895 static inline void
6897  EPWM_DigitalCompareModule dcModule,
6898  EPWM_DigitalCompareEvent dcEvent,
6899  EPWM_DigitalCompareSyncMode syncMode)
6900 {
6901  uint32_t registerOffset;
6902 
6903  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
6904 
6905  //
6906  // Set the DC event sync mode
6907  //
6908  if(dcEvent == EPWM_DC_EVENT_1)
6909  {
6910  HW_WR_REG16(base + registerOffset,
6911  ((HW_RD_REG16(base + registerOffset) &
6912  ~CSL_EPWM_DCACTL_EVT1FRCSYNCSEL_MASK) |
6913  ((uint16_t)syncMode << CSL_EPWM_DCACTL_EVT1FRCSYNCSEL_SHIFT)));
6914  }
6915  else
6916  {
6917  HW_WR_REG16(base + registerOffset,
6918  ((HW_RD_REG16(base + registerOffset) &
6919  ~CSL_EPWM_DCACTL_EVT2FRCSYNCSEL_MASK) |
6920  ((uint16_t)syncMode << CSL_EPWM_DCACTL_EVT2FRCSYNCSEL_SHIFT)));
6921  }
6922 }
6923 
6924 //*****************************************************************************
6925 //
6938 //
6939 //*****************************************************************************
6940 static inline void
6942  EPWM_DigitalCompareModule dcModule)
6943 {
6944  uint32_t registerOffset;
6945 
6946  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
6947 
6948  //
6949  // Enable Digital Compare start of conversion generation
6950  //
6951  HW_WR_REG16(base + registerOffset,
6952  (HW_RD_REG16(base + registerOffset) | CSL_EPWM_DCACTL_EVT1SOCE_MASK));
6953 }
6954 
6955 //*****************************************************************************
6956 //
6969 //
6970 //*****************************************************************************
6971 static inline void
6973  EPWM_DigitalCompareModule dcModule)
6974 {
6975  uint32_t registerOffset;
6976 
6977  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
6978 
6979  //
6980  // Disable Digital Compare start of conversion generation
6981  //
6982  HW_WR_REG16(base + registerOffset,
6983  (HW_RD_REG16(base + registerOffset) & ~CSL_EPWM_DCACTL_EVT1SOCE_MASK));
6984 }
6985 
6986 //*****************************************************************************
6987 //
7000 //
7001 //*****************************************************************************
7002 static inline void
7004  EPWM_DigitalCompareModule dcModule)
7005 {
7006  uint32_t registerOffset;
7007 
7008  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
7009 
7010  //
7011  // Enable Digital Compare sync out pulse generation
7012  //
7013  HW_WR_REG16(base + registerOffset,
7014  (HW_RD_REG16(base + registerOffset) | CSL_EPWM_DCACTL_EVT1SYNCE_MASK));
7015 }
7016 
7017 //*****************************************************************************
7018 //
7031 //
7032 //*****************************************************************************
7033 static inline void
7035  EPWM_DigitalCompareModule dcModule)
7036 {
7037  uint32_t registerOffset;
7038 
7039  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
7040 
7041  //
7042  // Disable Digital Compare sync out pulse generation
7043  //
7044  HW_WR_REG16(base + registerOffset,
7045  (HW_RD_REG16(base + registerOffset) &
7046  ~CSL_EPWM_DCACTL_EVT1SYNCE_MASK));
7047 }
7048 
7049 //*****************************************************************************
7050 //
7071 //
7072 //*****************************************************************************
7073 static inline void
7075  EPWM_DigitalCompareModule dcModule,
7076  EPWM_DigitalCompareEvent dcEvent,
7078 {
7079  uint32_t registerOffset;
7080 
7081  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
7082 
7083  //
7084  // Set the DC CBC Latch Mode
7085  //
7086  if(dcEvent == EPWM_DC_EVENT_1)
7087  {
7088  HW_WR_REG16(base + registerOffset,
7089  ((HW_RD_REG16(base + registerOffset) &
7090  ~CSL_EPWM_DCACTL_EVT1LATSEL_MASK) |
7091  ((uint16_t)latchMode << CSL_EPWM_DCACTL_EVT1LATSEL_SHIFT)));
7092  }
7093  else
7094  {
7095  HW_WR_REG16(base + registerOffset,
7096  ((HW_RD_REG16(base + registerOffset) &
7097  ~CSL_EPWM_DCACTL_EVT2LATSEL_MASK) |
7098  ((uint16_t)latchMode << CSL_EPWM_DCACTL_EVT2LATSEL_SHIFT)));
7099  }
7100 }
7101 
7102 //*****************************************************************************
7103 //
7129 //
7130 //*****************************************************************************
7131 static inline void
7133  EPWM_DigitalCompareModule dcModule,
7134  EPWM_DigitalCompareEvent dcEvent,
7136 {
7137  uint32_t registerOffset;
7138 
7139  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
7140 
7141  //
7142  // Set the DC CBC Latch Clear Event
7143  //
7144  if(dcEvent == EPWM_DC_EVENT_1)
7145  {
7146  HW_WR_REG16(base + registerOffset,
7147  ((HW_RD_REG16(base + registerOffset) &
7148  ~CSL_EPWM_DCACTL_EVT1LATCLRSEL_MASK) |
7149  ((uint16_t)clearEvent << CSL_EPWM_DCACTL_EVT1LATCLRSEL_SHIFT)));
7150  }
7151  else
7152  {
7153  HW_WR_REG16(base + registerOffset,
7154  ((HW_RD_REG16(base + registerOffset) &
7155  ~CSL_EPWM_DCACTL_EVT2LATCLRSEL_MASK) |
7156  ((uint16_t)clearEvent << CSL_EPWM_DCACTL_EVT2LATCLRSEL_SHIFT)));
7157  }
7158 }
7159 
7160 //*****************************************************************************
7161 //
7181 //
7182 //*****************************************************************************
7183 static inline bool
7185  EPWM_DigitalCompareModule dcModule,
7186  EPWM_DigitalCompareEvent dcEvent)
7187 {
7188  uint32_t registerOffset;
7189  uint16_t status;
7190 
7191  registerOffset = CSL_EPWM_DCACTL + (uint16_t)dcModule * EPWM_DCxCTL_STEP;
7192 
7193  //
7194  // Get DC CBC Latch Clear Event
7195  //
7196  if(dcEvent == EPWM_DC_EVENT_1)
7197  {
7198  status = HW_RD_REG16(base + registerOffset) &
7199  CSL_EPWM_DCACTL_EVT1LAT_MASK;
7200  }
7201  else
7202  {
7203  status = HW_RD_REG16(base + registerOffset) &
7204  CSL_EPWM_DCACTL_EVT2LAT_MASK;
7205  }
7206 
7207  return(status != 0U);
7208 }
7209 
7210 //
7211 // DC capture mode
7212 //
7213 //*****************************************************************************
7214 //
7222 //
7223 //*****************************************************************************
7224 static inline void
7226 {
7227  //
7228  // Enable Time base counter capture
7229  //
7230  HW_WR_REG16(base + CSL_EPWM_DCCAPCTL,
7231  (HW_RD_REG16(base + CSL_EPWM_DCCAPCTL) | CSL_EPWM_DCCAPCTL_CAPE_MASK));
7232 }
7233 
7234 //*****************************************************************************
7235 //
7243 //
7244 //*****************************************************************************
7245 static inline void
7247 {
7248  //
7249  // Disable Time base counter capture
7250  //
7251  HW_WR_REG16(base + CSL_EPWM_DCCAPCTL,
7252  (HW_RD_REG16(base + CSL_EPWM_DCCAPCTL) &
7253  ~CSL_EPWM_DCCAPCTL_CAPE_MASK));
7254 }
7255 
7256 //*****************************************************************************
7257 //
7269 //
7270 //*****************************************************************************
7271 static inline void
7272 EPWM_setDigitalCompareCounterShadowMode(uint32_t base, bool enableShadowMode)
7273 {
7274  if(enableShadowMode)
7275  {
7276  //
7277  // Enable DC counter shadow mode
7278  //
7279  HW_WR_REG16(base + CSL_EPWM_DCCAPCTL,
7280  (HW_RD_REG16(base + CSL_EPWM_DCCAPCTL) &
7281  ~CSL_EPWM_DCCAPCTL_SHDWMODE_MASK));
7282  }
7283  else
7284  {
7285  //
7286  // Disable DC counter shadow mode
7287  //
7288  HW_WR_REG16(base + CSL_EPWM_DCCAPCTL,
7289  (HW_RD_REG16(base + CSL_EPWM_DCCAPCTL) |
7290  CSL_EPWM_DCCAPCTL_SHDWMODE_MASK));
7291  }
7292 }
7293 
7294 //*****************************************************************************
7295 //
7306 //
7307 //*****************************************************************************
7308 static inline bool
7310 {
7311  //
7312  // Return the DC compare status
7313  //
7314  return((HW_RD_REG16(base + CSL_EPWM_DCCAPCTL) &
7315  CSL_EPWM_DCCAPCTL_CAPSTS_MASK) == CSL_EPWM_DCCAPCTL_CAPSTS_MASK);
7316 }
7317 
7318 //*****************************************************************************
7319 //
7329 //
7330 //*****************************************************************************
7331 static inline uint16_t
7333 {
7334  //
7335  // Return the DC Time Base Counter Capture count value
7336  //
7337  return(HW_RD_REG16(base + CSL_EPWM_DCCAP));
7338 }
7339 
7340 //*****************************************************************************
7341 //
7359 //
7360 //*****************************************************************************
7361 static inline void
7363  uint16_t tripInput,
7364  EPWM_DigitalCompareType dcType)
7365 {
7366  uint32_t registerOffset;
7367 
7368  //
7369  // Get the DCAHTRIPSEL, DCALTRIPSEL, DCBHTRIPSEL, DCBLTRIPSEL register
7370  // offset with respect to DCAHTRIPSEL
7371  //
7372  registerOffset = CSL_EPWM_DCAHTRIPSEL +
7373  (uint16_t)dcType * EPWM_DCxxTRIPSEL;
7374 
7375  //
7376  // Set the DC trip input
7377  //
7378  HW_WR_REG16(base + registerOffset,
7379  (HW_RD_REG16(base + registerOffset) | tripInput));
7380 
7381  //
7382  // Enable the combination input
7383  //
7384  HW_WR_REG16(base + CSL_EPWM_DCTRIPSEL,
7385  (HW_RD_REG16(base + CSL_EPWM_DCTRIPSEL) |
7386  (CSL_EPWM_DCTRIPSEL_DCAHCOMPSEL_MASK << ((uint16_t)dcType << 2U))));
7387 }
7388 
7389 //*****************************************************************************
7390 //
7408 //
7409 //*****************************************************************************
7410 static inline void
7412  uint16_t tripInput,
7413  EPWM_DigitalCompareType dcType)
7414 {
7415  uint32_t registerOffset;
7416 
7417  //
7418  // Get the DCAHTRIPSEL, DCALTRIPSEL, DCBHTRIPSEL, DCBLTRIPSEL register
7419  // offset with respect to DCAHTRIPSEL
7420  //
7421  registerOffset = CSL_EPWM_DCAHTRIPSEL +
7422  (uint16_t)dcType * EPWM_DCxxTRIPSEL;
7423 
7424  //
7425  // Set the DC trip input
7426  //
7427  HW_WR_REG16(base + registerOffset,
7428  (HW_RD_REG16(base + registerOffset) & ~tripInput));
7429 }
7430 
7431 //
7432 // Valley switching
7433 //
7434 //*****************************************************************************
7435 //
7443 //
7444 //*****************************************************************************
7445 static inline void
7447 {
7448  //
7449  // Set VCAPE bit
7450  //
7451  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7452  (HW_RD_REG16(base + CSL_EPWM_VCAPCTL) | CSL_EPWM_VCAPCTL_VCAPE_MASK));
7453 }
7454 
7455 //*****************************************************************************
7456 //
7464 //
7465 //*****************************************************************************
7466 static inline void
7468 {
7469  //
7470  // Clear VCAPE bit
7471  //
7472  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7473  (HW_RD_REG16(base + CSL_EPWM_VCAPCTL) & ~CSL_EPWM_VCAPCTL_VCAPE_MASK));
7474 }
7475 
7476 //*****************************************************************************
7477 //
7489 //
7490 //*****************************************************************************
7491 static inline void
7493 {
7494  //
7495  // Set VCAPSTART bit
7496  //
7497  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7498  (HW_RD_REG16(base + CSL_EPWM_VCAPCTL) |
7499  CSL_EPWM_VCAPCTL_VCAPSTART_MASK));
7500 }
7501 
7502 //*****************************************************************************
7503 //
7515 //
7516 //*****************************************************************************
7517 static inline void
7519 {
7520  //
7521  // Write to TRIGSEL bits
7522  //
7523  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7524  ((HW_RD_REG16(base + CSL_EPWM_VCAPCTL) &
7525  ~CSL_EPWM_VCAPCTL_TRIGSEL_MASK) |
7526  ((uint16_t)trigger << CSL_EPWM_VCAPCTL_TRIGSEL_SHIFT)));
7527 }
7528 
7529 //*****************************************************************************
7530 //
7547 //
7548 //*****************************************************************************
7549 static inline void
7550 EPWM_setValleyTriggerEdgeCounts(uint32_t base, uint16_t startCount,
7551  uint16_t stopCount)
7552 {
7553  //
7554  // Check the arguments
7555  //
7556  DebugP_assert((startCount < 16U) && (stopCount < 16U));
7557 
7558  //
7559  // Write to STARTEDGE and STOPEDGE bits
7560  //
7561  HW_WR_REG16(base + CSL_EPWM_VCNTCFG,
7562  ((HW_RD_REG16(base + CSL_EPWM_VCNTCFG) &
7563  ~(CSL_EPWM_VCNTCFG_STARTEDGE_MASK | CSL_EPWM_VCNTCFG_STOPEDGE_MASK)) |
7564  (startCount | (stopCount << CSL_EPWM_VCNTCFG_STOPEDGE_SHIFT))));
7565 }
7566 
7567 //*****************************************************************************
7568 //
7576 //
7577 //*****************************************************************************
7578 static inline void
7580 {
7581  //
7582  // Set EDGEFILTDLYSEL bit
7583  //
7584  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7585  (HW_RD_REG16(base + CSL_EPWM_VCAPCTL) |
7586  CSL_EPWM_VCAPCTL_EDGEFILTDLYSEL_MASK));
7587 }
7588 
7589 //*****************************************************************************
7590 //
7598 //
7599 //*****************************************************************************
7600 static inline void
7602 {
7603  //
7604  // Clear EDGEFILTDLYSEL bit
7605  //
7606  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7607  (HW_RD_REG16(base + CSL_EPWM_VCAPCTL) &
7608  ~CSL_EPWM_VCAPCTL_EDGEFILTDLYSEL_MASK));
7609 }
7610 
7611 //*****************************************************************************
7612 //
7621 //
7622 //*****************************************************************************
7623 static inline void
7624 EPWM_setValleySWDelayValue(uint32_t base, uint16_t delayOffsetValue)
7625 {
7626  //
7627  // Write to SWVDELVAL bits
7628  //
7629  HW_WR_REG16(base + CSL_EPWM_SWVDELVAL, delayOffsetValue);
7630 }
7631 
7632 //*****************************************************************************
7633 //
7642 //
7643 //*****************************************************************************
7644 static inline void
7646 {
7647  //
7648  // Write to VDELAYDIV bits
7649  //
7650  HW_WR_REG16(base + CSL_EPWM_VCAPCTL,
7651  ((HW_RD_REG16(base + CSL_EPWM_VCAPCTL) &
7652  ~CSL_EPWM_VCAPCTL_VDELAYDIV_MASK) |
7653  ((uint16_t)delayMode << CSL_EPWM_VCAPCTL_VDELAYDIV_SHIFT)));
7654 }
7655 
7656 //*****************************************************************************
7657 //
7670 //
7671 //*****************************************************************************
7672 static inline bool
7674 {
7675  if(edge == EPWM_VALLEY_COUNT_START_EDGE)
7676  {
7677  //
7678  // Returns STARTEDGESTS status
7679  //
7680  return(((HW_RD_REG16(base + CSL_EPWM_VCNTCFG) &
7681  CSL_EPWM_VCNTCFG_STARTEDGESTS_MASK) ==
7682  CSL_EPWM_VCNTCFG_STARTEDGESTS_MASK) ? true : false);
7683  }
7684  else
7685  {
7686  //
7687  // Returns STOPEDGESTS status
7688  //
7689  return(((HW_RD_REG16(base + CSL_EPWM_VCNTCFG) &
7690  CSL_EPWM_VCNTCFG_STOPEDGESTS_MASK) ==
7691  CSL_EPWM_VCNTCFG_STOPEDGESTS_MASK) ? true : false);
7692  }
7693 }
7694 
7695 //*****************************************************************************
7696 //
7707 //
7708 //*****************************************************************************
7709 static inline uint16_t
7710 EPWM_getValleyCount(uint32_t base)
7711 {
7712  //
7713  // Read VCNTVAL register
7714  //
7715  return(HW_RD_REG16(base + CSL_EPWM_VCNTVAL));
7716 }
7717 
7718 //*****************************************************************************
7719 //
7727 //
7728 //*****************************************************************************
7729 static inline uint16_t
7731 {
7732  //
7733  // Read HWVDELVAL register
7734  //
7735  return(HW_RD_REG16(base + CSL_EPWM_HWVDELVAL));
7736 }
7737 
7738 //*****************************************************************************
7739 //
7749 //
7750 //*****************************************************************************
7751 static inline void
7753 {
7754  //
7755  // Shadow to active load is controlled globally
7756  //
7757  HW_WR_REG16(base + CSL_EPWM_GLDCTL,
7758  (HW_RD_REG16(base + CSL_EPWM_GLDCTL) | CSL_EPWM_GLDCTL_GLD_MASK));
7759 }
7760 
7761 //*****************************************************************************
7762 //
7771 //
7772 //*****************************************************************************
7773 static inline void
7775 {
7776  //
7777  // Shadow to active load is controlled individually
7778  //
7779  HW_WR_REG16(base + CSL_EPWM_GLDCTL,
7780  (HW_RD_REG16(base + CSL_EPWM_GLDCTL) & ~CSL_EPWM_GLDCTL_GLD_MASK));
7781 }
7782 
7783 //*****************************************************************************
7784 //
7810 //
7811 //*****************************************************************************
7812 static inline void
7814 {
7815  //
7816  // Set the Global shadow to active load pulse
7817  //
7818  HW_WR_REG16(base + CSL_EPWM_GLDCTL,
7819  ((HW_RD_REG16(base + CSL_EPWM_GLDCTL) &
7820  ~CSL_EPWM_GLDCTL_GLDMODE_MASK) |
7821  ((uint16_t)loadTrigger << CSL_EPWM_GLDCTL_GLDMODE_SHIFT)));
7822 }
7823 
7824 //*****************************************************************************
7825 //
7837 //
7838 //*****************************************************************************
7839 static inline void
7840 EPWM_setGlobalLoadEventPrescale(uint32_t base, uint16_t prescalePulseCount)
7841 {
7842  //
7843  // Check the arguments
7844  //
7845  DebugP_assert(prescalePulseCount < 8U);
7846 
7847  //
7848  // Set the number of counts that have to occur before
7849  // a load strobe is issued
7850  //
7851  HW_WR_REG16(base + CSL_EPWM_GLDCTL,
7852  ((HW_RD_REG16(base + CSL_EPWM_GLDCTL) & ~CSL_EPWM_GLDCTL_GLDPRD_MASK) |
7853  (prescalePulseCount << CSL_EPWM_GLDCTL_GLDPRD_SHIFT)));
7854 }
7855 
7856 //*****************************************************************************
7857 //
7867 //
7868 //*****************************************************************************
7869 static inline uint16_t
7871 {
7872  //
7873  // Return the number of events that have occurred
7874  //
7875  return((HW_RD_REG16(base + CSL_EPWM_GLDCTL) >>
7876  CSL_EPWM_GLDCTL_GLDCNT_SHIFT) & CSL_EPWM_GLDCTL_GLDCNT_MAX);
7877 }
7878 
7879 //*****************************************************************************
7880 //
7890 //
7891 //*****************************************************************************
7892 static inline void
7894 {
7895  //
7896  // Enable global continuous shadow to active load
7897  //
7898  HW_WR_REG16(base + CSL_EPWM_GLDCTL,
7899  (HW_RD_REG16(base + CSL_EPWM_GLDCTL) &
7900  ~CSL_EPWM_GLDCTL_OSHTMODE_MASK));
7901 }
7902 
7903 //*****************************************************************************
7904 //
7914 //
7915 //*****************************************************************************
7916 static inline void
7918 {
7919  //
7920  // Enable global continuous shadow to active load
7921  //
7922  HW_WR_REG16(base + CSL_EPWM_GLDCTL,
7923  (HW_RD_REG16(base + CSL_EPWM_GLDCTL) | CSL_EPWM_GLDCTL_OSHTMODE_MASK));
7924 }
7925 
7926 //*****************************************************************************
7927 //
7937 //
7938 //*****************************************************************************
7939 static inline void
7941 {
7942  //
7943  // Set a one shot Global shadow load pulse.
7944  //
7945  HW_WR_REG16(base + CSL_EPWM_GLDCTL2,
7946  (HW_RD_REG16(base + CSL_EPWM_GLDCTL2) | CSL_EPWM_GLDCTL2_OSHTLD_MASK));
7947 }
7948 
7949 //*****************************************************************************
7950 //
7959 //
7960 //*****************************************************************************
7961 static inline void
7963 {
7964  //
7965  // Force a Software Global shadow load pulse
7966  //
7967  HW_WR_REG16(base + CSL_EPWM_GLDCTL2,
7968  (HW_RD_REG16(base + CSL_EPWM_GLDCTL2) | CSL_EPWM_GLDCTL2_GFRCLD_MASK));
7969 }
7970 
7971 //*****************************************************************************
7972 //
7994 //
7995 //*****************************************************************************
7996 static inline void
7997 EPWM_enableGlobalLoadRegisters(uint32_t base, uint16_t loadRegister)
7998 {
7999  //
8000  // Check the arguments
8001  //
8002  DebugP_assert((loadRegister > 0x0000U) && (loadRegister < 0x0800U));
8003 
8004  //
8005  // The register specified by loadRegister is loaded globally
8006  //
8007  HW_WR_REG16(base + CSL_EPWM_GLDCFG,
8008  (HW_RD_REG16(base + CSL_EPWM_GLDCFG) | loadRegister));
8009 }
8010 
8011 //*****************************************************************************
8012 //
8035 //
8036 //*****************************************************************************
8037 static inline void
8038 EPWM_disableGlobalLoadRegisters(uint32_t base, uint16_t loadRegister)
8039 {
8040  //
8041  // Check the arguments
8042  //
8043  DebugP_assert((loadRegister > 0x0000U) && (loadRegister < 0x0800U));
8044 
8045  //
8046  // The register specified by loadRegister is loaded by individual
8047  // register configuration setting
8048  //
8049  HW_WR_REG16(base + CSL_EPWM_GLDCFG,
8050  (HW_RD_REG16(base + CSL_EPWM_GLDCFG) & ~loadRegister));
8051 }
8052 
8053 //*****************************************************************************
8054 //
8064 //
8065 //*****************************************************************************
8066 static inline void
8067 EPWM_lockRegisters(uint32_t base, EPWM_LockRegisterGroup registerGroup)
8068 {
8069  //
8070  // Write the Key to EPWMLOCK register
8071  //
8072  HW_WR_REG32(base + CSL_EPWM_EPWMLOCK,
8073  ((uint32_t)EPWM_LOCK_KEY | ((uint32_t)registerGroup)));
8074 }
8075 
8076 //
8077 // Minimum Dead Band
8078 //
8079 //*****************************************************************************
8080 //
8089 //
8090 //*****************************************************************************
8091 static inline void
8092 EPWM_enableMinimumDeadBand(uint32_t base, uint32_t block)
8093 {
8094  if(block == EPWM_MINDB_BLOCK_A)
8095  {
8096  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8097  (HW_RD_REG32(base + CSL_EPWM_MINDBCFG) |
8098  CSL_EPWM_MINDBCFG_ENABLEA_MASK));
8099  }
8100  else
8101  {
8102  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8103  (HW_RD_REG32(base + CSL_EPWM_MINDBCFG) |
8104  CSL_EPWM_MINDBCFG_ENABLEB_MASK));
8105  }
8106 }
8107 
8108 //*****************************************************************************
8109 //
8118 //
8119 //*****************************************************************************
8120 static inline void
8121 EPWM_disableMinimumDeadBand(uint32_t base, uint32_t block)
8122 {
8123  if(block == EPWM_MINDB_BLOCK_A)
8124  {
8125  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8126  (HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8127  ~CSL_EPWM_MINDBCFG_ENABLEA_MASK));
8128  }
8129  else
8130  {
8131  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8132  (HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8133  ~CSL_EPWM_MINDBCFG_ENABLEB_MASK));
8134  }
8135 }
8136 
8137 //*****************************************************************************
8138 //
8149 //
8150 //*****************************************************************************
8151 static inline void
8152 EPWM_invertMinimumDeadBandSignal(uint32_t base, uint32_t block,
8153  uint32_t invert)
8154 {
8155  if(block == EPWM_MINDB_BLOCK_A)
8156  {
8157  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8158  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8159  ~CSL_EPWM_MINDBCFG_INVERTA_MASK) |
8160  (invert<<CSL_EPWM_MINDBCFG_INVERTA_SHIFT)));
8161  }
8162  else
8163  {
8164  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8165  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8166  ~CSL_EPWM_MINDBCFG_INVERTB_MASK) |
8167  (invert<<CSL_EPWM_MINDBCFG_INVERTB_SHIFT)));
8168  }
8169 }
8170 
8171 //*****************************************************************************
8172 //
8184 //
8185 //*****************************************************************************
8186 static inline void
8187 EPWM_selectMinimumDeadBandAndOrLogic(uint32_t base, uint32_t block,
8188  uint32_t referenceSignal)
8189 {
8190  if(block == EPWM_MINDB_BLOCK_A)
8191  {
8192  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8193  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8194  ~CSL_EPWM_MINDBCFG_POLSELA_MASK) |
8195  (referenceSignal<<CSL_EPWM_MINDBCFG_POLSELA_SHIFT)));
8196  }
8197  else
8198  {
8199  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8200  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8201  ~CSL_EPWM_MINDBCFG_POLSELB_MASK) |
8202  (referenceSignal<<CSL_EPWM_MINDBCFG_POLSELB_SHIFT)));
8203  }
8204 }
8205 
8206 //*****************************************************************************
8207 //
8218 //
8219 //*****************************************************************************
8220 static inline void
8221 EPWM_selectMinimumDeadBandBlockingSignal(uint32_t base, uint32_t block,
8222  uint32_t blockingSignal)
8223 {
8224  if(block == EPWM_MINDB_BLOCK_A)
8225  {
8226  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8227  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8228  ~CSL_EPWM_MINDBCFG_SELBLOCKA_MASK) |
8229  (blockingSignal<<CSL_EPWM_MINDBCFG_SELBLOCKA_SHIFT)));
8230  }
8231  else
8232  {
8233  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8234  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8235  ~CSL_EPWM_MINDBCFG_SELBLOCKB_MASK) |
8236  (blockingSignal<<CSL_EPWM_MINDBCFG_SELBLOCKB_SHIFT)));
8237  }
8238 }
8239 
8240 //*****************************************************************************
8241 //
8251 //
8252 //*****************************************************************************
8253 static inline void
8254 EPWM_selectMinimumDeadBandReferenceSignal(uint32_t base, uint32_t block,
8255  uint32_t referenceSignal)
8256 {
8257  if(block == EPWM_MINDB_BLOCK_A)
8258  {
8259  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8260  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8261  ~CSL_EPWM_MINDBCFG_SELA_MASK) |
8262  (referenceSignal<<CSL_EPWM_MINDBCFG_SELA_SHIFT)));
8263  }
8264  else
8265  {
8266  HW_WR_REG32(base + CSL_EPWM_MINDBCFG,
8267  ((HW_RD_REG32(base + CSL_EPWM_MINDBCFG) &
8268  ~CSL_EPWM_MINDBCFG_SELB_MASK) |
8269  (referenceSignal<<CSL_EPWM_MINDBCFG_SELB_SHIFT)));
8270  }
8271 }
8272 
8273 //*****************************************************************************
8274 //
8283 //
8284 //*****************************************************************************
8285 static inline uint32_t
8286 EPWM_getMinDeadBandDelay(uint32_t base, uint32_t block)
8287 {
8288  uint32_t retval;
8289 
8290  if(block == EPWM_MINDB_BLOCK_A)
8291  {
8292  retval = (HW_RD_REG32(base + CSL_EPWM_MINDBDLY) &
8293  CSL_EPWM_MINDBDLY_DELAYA_MASK);
8294  }
8295  else
8296  {
8297  retval = (HW_RD_REG32(base + CSL_EPWM_MINDBDLY) &
8298  CSL_EPWM_MINDBDLY_DELAYB_MASK);
8299  }
8300 
8301  return retval;
8302 }
8303 
8304 //*****************************************************************************
8305 //
8316 //
8317 //*****************************************************************************
8318 static inline void
8319 EPWM_setMinDeadBandDelay(uint32_t base, uint32_t block, uint32_t delay)
8320 {
8321  if(block == EPWM_MINDB_BLOCK_A)
8322  {
8323  HW_WR_REG32(base + CSL_EPWM_MINDBDLY,
8324  ((HW_RD_REG32(base + CSL_EPWM_MINDBDLY) &
8325  ~CSL_EPWM_MINDBDLY_DELAYA_MASK) |
8326  (delay<<CSL_EPWM_MINDBDLY_DELAYA_SHIFT)));
8327  }
8328  else
8329  {
8330  HW_WR_REG32(base + CSL_EPWM_MINDBDLY,
8331  ((HW_RD_REG32(base + CSL_EPWM_MINDBDLY) &
8332  ~CSL_EPWM_MINDBDLY_DELAYB_MASK) |
8333  (delay<<CSL_EPWM_MINDBDLY_DELAYB_SHIFT)));
8334  }
8335 }
8336 
8337 //
8338 // Illegal Combo Logic
8339 //
8340 //*****************************************************************************
8341 //
8350 //
8351 //*****************************************************************************
8352 static inline void
8353 EPWM_enableIllegalComboLogic(uint32_t base, uint32_t block)
8354 {
8355  if(block == EPWM_MINDB_BLOCK_A)
8356  {
8357  HW_WR_REG32(base + CSL_EPWM_LUTCTLA,
8358  (HW_RD_REG32(base + CSL_EPWM_LUTCTLA) |
8359  CSL_EPWM_LUTCTLA_BYPASS_MASK));
8360  }
8361  else
8362  {
8363  HW_WR_REG32(base + CSL_EPWM_LUTCTLB,
8364  (HW_RD_REG32(base + CSL_EPWM_LUTCTLB) |
8365  CSL_EPWM_LUTCTLB_BYPASS_MASK));
8366  }
8367 }
8368 
8369 //*****************************************************************************
8370 //
8379 //
8380 //*****************************************************************************
8381 static inline void
8382 EPWM_disableIllegalComboLogic(uint32_t base, uint32_t block)
8383 {
8384  if(block == EPWM_MINDB_BLOCK_A)
8385  {
8386  HW_WR_REG32(base + CSL_EPWM_LUTCTLA,
8387  (HW_RD_REG32(base + CSL_EPWM_LUTCTLA) &
8388  ~CSL_EPWM_LUTCTLA_BYPASS_MASK));
8389  }
8390  else
8391  {
8392  HW_WR_REG32(base + CSL_EPWM_LUTCTLB,
8393  (HW_RD_REG32(base + CSL_EPWM_LUTCTLB) &
8394  ~CSL_EPWM_LUTCTLB_BYPASS_MASK));
8395  }
8396 }
8397 
8398 //*****************************************************************************
8399 //
8409 //
8410 //*****************************************************************************
8411 static inline void
8412 EPWM_selectXbarInput(uint32_t base, uint32_t block, uint32_t xbarInput)
8413 {
8414  if(block == EPWM_MINDB_BLOCK_A)
8415  {
8416  HW_WR_REG32(base + CSL_EPWM_LUTCTLA,
8417  ((HW_RD_REG32(base + CSL_EPWM_LUTCTLA) &
8418  ~CSL_EPWM_LUTCTLA_SELXBAR_MASK) |
8419  (xbarInput<<CSL_EPWM_LUTCTLA_SELXBAR_SHIFT)));
8420  }
8421  else
8422  {
8423  HW_WR_REG32(base + CSL_EPWM_LUTCTLB,
8424  ((HW_RD_REG32(base + CSL_EPWM_LUTCTLB) &
8425  ~CSL_EPWM_LUTCTLB_SELXBAR_MASK) |
8426  (xbarInput<<CSL_EPWM_LUTCTLB_SELXBAR_SHIFT)));
8427  }
8428 }
8429 
8430 //*****************************************************************************
8431 //
8443 //
8444 //*****************************************************************************
8445 static inline void
8446 EPWM_setLutDecX(uint32_t base, uint32_t block, uint32_t decx, uint32_t force)
8447 {
8448  HW_WR_REG32(base + CSL_EPWM_LUTCTLA,
8449  ((HW_RD_REG32(base + CSL_EPWM_LUTCTLA) &
8450  ~(CSL_EPWM_LUTCTLA_LUTDEC0_MAX <<
8451  (CSL_EPWM_LUTCTLA_LUTDEC0_SHIFT+decx))) |
8452  (force<<(CSL_EPWM_LUTCTLA_LUTDEC0_SHIFT+decx))));
8453 }
8454 
8455 //*****************************************************************************
8456 //
8473 //
8474 //*****************************************************************************
8475 static inline void
8476 HRPWM_setPhaseShift(uint32_t base, uint32_t phaseCount)
8477 {
8478  //
8479  // Check the arguments
8480  //
8481  DebugP_assert(phaseCount <= 0xFFFFFFFF);
8482 
8483  //
8484  // Write to TBPHS:TBPHSHR bits
8485  //
8486  HW_WR_REG32(base + CSL_EPWM_TBPHS, phaseCount);
8487 }
8488 
8489 //*****************************************************************************
8490 //
8503 //
8504 //*****************************************************************************
8505 static inline void
8506 HRPWM_setHiResPhaseShift(uint32_t base, uint16_t hrPhaseCount)
8507 {
8508  //
8509  // Check the arguments
8510  //
8511  DebugP_assert(hrPhaseCount <= CSL_EPWM_TBPHS_TBPHSHR_MAX);
8512 
8513  //
8514  // Write to TBPHSHR bits
8515  //
8516  HW_WR_REG16(base + CSL_EPWM_TBPHS,
8517  ((HW_RD_REG16(base + CSL_EPWM_TBPHS) &
8518  ~((uint32_t)CSL_EPWM_TBPHS_TBPHSHR_MASK)) |
8519  ((uint32_t)hrPhaseCount << CSL_EPWM_TBPHS_TBPHSHR_SHIFT)));
8520 }
8521 
8522 //*****************************************************************************
8523 //
8538 //
8539 //*****************************************************************************
8540 static inline void
8541 HRPWM_setHiResTimeBasePeriod(uint32_t base, uint16_t hrPeriodCount)
8542 {
8543  //
8544  // Check the arguments
8545  //
8546  DebugP_assert(hrPeriodCount <= CSL_EPWM_TBPRDHR_TBPRDHR_MAX);
8547 
8548  //
8549  // Write to TBPRDHR bits
8550  //
8551  HW_WR_REG16(base + CSL_EPWM_TBPRDHR, hrPeriodCount << 8);
8552 }
8553 
8554 //*****************************************************************************
8555 //
8563 //
8564 //*****************************************************************************
8565 static inline uint16_t
8567 {
8568  //
8569  // Read from TBPRDHR bit
8570  //
8571  return(HW_RD_REG16(base + CSL_EPWM_TBPRDHR));
8572 }
8573 
8574 //*****************************************************************************
8575 //
8598 //
8599 //*****************************************************************************
8600 static inline void
8601 HRPWM_setMEPEdgeSelect(uint32_t base, HRPWM_Channel channel,
8602  HRPWM_MEPEdgeMode mepEdgeMode)
8603 {
8604  //
8605  // Set the edge mode
8606  //
8607  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8608  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG) &
8609  ~(CSL_EPWM_HRCNFG_EDGMODE_MAX << (uint16_t)channel)) |
8610  ((uint16_t)mepEdgeMode << (uint16_t)channel)));
8611 }
8612 
8613 //*****************************************************************************
8614 //
8635 //
8636 //*****************************************************************************
8637 static inline void
8639  HRPWM_MEPCtrlMode mepCtrlMode)
8640 {
8641  //
8642  // Set the MEP control
8643  //
8644  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8645  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG) &
8646  ~(CSL_EPWM_HRCNFG_CTLMODE_MAX << ((uint16_t)channel + 2U))) |
8647  ((uint16_t)mepCtrlMode << ((uint16_t)channel + 2U))));
8648 }
8649 
8650 //*****************************************************************************
8651 //
8673 //
8674 //*****************************************************************************
8675 static inline void
8677  HRPWM_LoadMode loadEvent)
8678 {
8679  //
8680  // Set the CMPAHR or CMPBHR load mode
8681  //
8682  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8683  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG) &
8684  ~(CSL_EPWM_HRCNFG_HRLOAD_MAX << ((uint16_t)channel + 3U))) |
8685  ((uint16_t)loadEvent << ((uint16_t)channel + 3U))));
8686 }
8687 
8688 //*****************************************************************************
8689 //
8700 //
8701 //*****************************************************************************
8702 static inline void
8703 HRPWM_setOutputSwapMode(uint32_t base, bool enableOutputSwap)
8704 {
8705  //
8706  // Set output swap mode
8707  //
8708  if(enableOutputSwap)
8709  {
8710  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8711  HW_RD_REG16(base + CSL_EPWM_HRCNFG) | CSL_EPWM_HRCNFG_SWAPAB_MASK);
8712  }
8713  else
8714  {
8715  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8716  HW_RD_REG16(base + CSL_EPWM_HRCNFG) & ~CSL_EPWM_HRCNFG_SWAPAB_MASK);
8717  }
8718 }
8719 
8720 //*****************************************************************************
8721 //
8733 //
8734 //*****************************************************************************
8735 static inline void
8737 {
8738  //
8739  // Set the output on ePWM B
8740  //
8741  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8742  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG) & ~(CSL_EPWM_HRCNFG_SELOUTB_MASK)) |
8743  ((uint16_t)outputOnB << CSL_EPWM_HRCNFG_SELOUTB_SHIFT)));
8744 }
8745 
8746 //*****************************************************************************
8747 //
8756 //
8757 //*****************************************************************************
8758 static inline void
8760 {
8761  //
8762  // Enable MEP automatic scale
8763  //
8764  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8765  HW_RD_REG16(base + CSL_EPWM_HRCNFG) | CSL_EPWM_HRCNFG_AUTOCONV_MASK);
8766 }
8767 
8768 //*****************************************************************************
8769 //
8778 //
8779 //*****************************************************************************
8780 static inline void
8782 {
8783  //
8784  // Disable MEP automatic scale
8785  //
8786  HW_WR_REG16(base + CSL_EPWM_HRCNFG,
8787  HW_RD_REG16(base + CSL_EPWM_HRCNFG) & ~CSL_EPWM_HRCNFG_AUTOCONV_MASK);
8788 }
8789 
8790 //*****************************************************************************
8791 //
8799 //
8800 //*****************************************************************************
8801 static inline void
8803 {
8804  //
8805  // Set HRPE bit
8806  //
8807  HW_WR_REG16(base + CSL_EPWM_HRPCTL,
8808  HW_RD_REG16(base + CSL_EPWM_HRPCTL) | CSL_EPWM_HRPCTL_HRPE_MASK);
8809 }
8810 
8811 //*****************************************************************************
8812 //
8820 //
8821 //*****************************************************************************
8822 static inline void
8824 {
8825  //
8826  // Clear HRPE bit
8827  //
8828  HW_WR_REG16(base + CSL_EPWM_HRPCTL,
8829  HW_RD_REG16(base + CSL_EPWM_HRPCTL) & ~CSL_EPWM_HRPCTL_HRPE_MASK);
8830 }
8831 
8832 //*****************************************************************************
8833 //
8842 //
8843 //*****************************************************************************
8844 static inline void
8846 {
8847  //
8848  // Set TBPHSHRLOADE bit
8849  //
8850  HW_WR_REG16(base + CSL_EPWM_HRPCTL,
8851  HW_RD_REG16(base + CSL_EPWM_HRPCTL) | CSL_EPWM_HRPCTL_TBPHSHRLOADE_MASK);
8852 }
8853 
8854 //*****************************************************************************
8855 //
8863 //
8864 //*****************************************************************************
8865 static inline void
8867 {
8868  //
8869  // Clear TBPHSHRLOADE bit
8870  //
8871  HW_WR_REG16(base + CSL_EPWM_HRPCTL,
8872  HW_RD_REG16(base + CSL_EPWM_HRPCTL) & ~CSL_EPWM_HRPCTL_TBPHSHRLOADE_MASK);
8873 }
8874 
8875 //*****************************************************************************
8876 //
8896 //
8897 //*****************************************************************************
8898 static inline void
8899 HRPWM_setSyncPulseSource(uint32_t base, HRPWM_SyncPulseSource syncPulseSource)
8900 {
8901  //
8902  // Set the PWMSYNC source
8903  //
8904 
8905  //
8906  // Configuration for sync pulse source equal to HRPWM_PWMSYNC_SOURCE_PERIOD
8907  // or HRPWM_PWMSYNC_SOURCE_ZERO
8908  //
8909  if(syncPulseSource < HRPWM_PWMSYNC_SOURCE_COMPC_UP)
8910  {
8911  HW_WR_REG16(base + CSL_EPWM_HRPCTL,
8912  ((HW_RD_REG16(base + CSL_EPWM_HRPCTL) &
8913  ~(CSL_EPWM_HRPCTL_PWMSYNCSELX_MASK | CSL_EPWM_HRPCTL_PWMSYNCSEL_MASK)) |
8914  ((uint16_t)syncPulseSource << 1U)));
8915  }
8916  else
8917  {
8918  HW_WR_REG16(base + CSL_EPWM_HRPCTL,
8919  ((HW_RD_REG16(base + CSL_EPWM_HRPCTL) & ~CSL_EPWM_HRPCTL_PWMSYNCSELX_MASK) |
8920  ((uint16_t)syncPulseSource << CSL_EPWM_HRPCTL_PWMSYNCSELX_SHIFT)));
8921  }
8922 }
8923 
8924 //*****************************************************************************
8925 //
8934 //
8935 //*****************************************************************************
8936 static inline void
8937 HRPWM_setTranslatorRemainder(uint32_t base, uint16_t trremVal)
8938 {
8939  //
8940  // Check the arguments
8941  //
8942  DebugP_assert(trremVal <= CSL_EPWM_TRREM_TRREM_MAX);
8943 
8944  //
8945  // Set Translator Remainder value
8946  //
8947  HW_WR_REG16(base + CSL_EPWM_TRREM, trremVal & CSL_EPWM_TRREM_TRREM_MASK);
8948 }
8949 
8950 //*****************************************************************************
8951 //
8969 //
8970 //*****************************************************************************
8971 static inline void
8973  HRPWM_CounterCompareModule compModule,
8974  uint32_t compCount)
8975 {
8976  //
8977  // Check the arguments
8978  //
8979  DebugP_assert(compCount <= 0xFFFFFFFF);
8980 
8981  //
8982  // Write to counter compare registers
8983  //
8984  if(compModule == HRPWM_COUNTER_COMPARE_A)
8985  {
8986  //
8987  // Write to CMPA:CMPAHR
8988  //
8989  HW_WR_REG32(base + CSL_EPWM_CMPA, compCount << 8);
8990  }
8991  else
8992  {
8993  //
8994  // Write to CMPB:CMPBHR
8995  //
8996  HW_WR_REG32(base + CSL_EPWM_CMPB, compCount << 8);
8997  }
8998 }
8999 
9000 //*****************************************************************************
9001 //
9015 //
9016 //*****************************************************************************
9017 static inline uint32_t
9019  HRPWM_CounterCompareModule compModule)
9020 {
9021  uint32_t compCount;
9022 
9023  //
9024  // Get counter compare value for selected module
9025  //
9026  if(compModule == HRPWM_COUNTER_COMPARE_A)
9027  {
9028  //
9029  // Read from CMPAHR
9030  //
9031  compCount = HW_RD_REG32(base + CSL_EPWM_CMPA);
9032  }
9033  else
9034  {
9035  //
9036  // Read from CMPBHR
9037  //
9038  compCount = HW_RD_REG32(base + CSL_EPWM_CMPA);
9039  }
9040 
9041  return(compCount);
9042 }
9043 
9044 //*****************************************************************************
9045 //
9061 //
9062 //*****************************************************************************
9063 static inline void
9065  HRPWM_CounterCompareModule compModule,
9066  uint16_t hrCompCount)
9067 {
9068  //
9069  // Check the arguments
9070  //
9071  DebugP_assert(hrCompCount <= CSL_EPWM_CMPA_CMPAHR_MAX);
9072 
9073  //
9074  // Write to the high resolution counter compare registers
9075  //
9076  if(compModule == HRPWM_COUNTER_COMPARE_A)
9077  {
9078  //
9079  // Write to CMPAHR
9080  //
9081  HW_WR_REG32(base + CSL_EPWM_CMPA,
9082  HW_RD_REG32(base + CSL_EPWM_CMPA) | (hrCompCount & CSL_EPWM_CMPA_CMPAHR_MASK));
9083  }
9084  else
9085  {
9086  //
9087  // Write to CMPBHR
9088  //
9089  HW_WR_REG32(base + CSL_EPWM_CMPB,
9090  HW_RD_REG32(base + CSL_EPWM_CMPB) | (hrCompCount & CSL_EPWM_CMPB_CMPBHR_MASK));
9091  }
9092 }
9093 
9094 //*****************************************************************************
9095 //
9108 //
9109 //*****************************************************************************
9110 static inline uint16_t
9112  HRPWM_CounterCompareModule compModule)
9113 {
9114  uint16_t hrCompCount;
9115 
9116  //
9117  // Get counter compare value for selected module
9118  //
9119  if(compModule == HRPWM_COUNTER_COMPARE_A)
9120  {
9121  //
9122  // Read from CMPAHR
9123  //
9124  hrCompCount = (HW_RD_REG16(base + CSL_EPWM_CMPA) & CSL_EPWM_CMPA_CMPAHR_MASK);
9125  }
9126  else
9127  {
9128  //
9129  // Read from CMPBHR
9130  //
9131  hrCompCount = (HW_RD_REG16(base + CSL_EPWM_CMPB) & CSL_EPWM_CMPB_CMPBHR_MASK);
9132  }
9133 
9134  return(hrCompCount);
9135 }
9136 
9137 //*****************************************************************************
9138 //
9151 //
9152 //*****************************************************************************
9153 static inline void
9154 HRPWM_setHiResRisingEdgeDelay(uint32_t base, uint16_t hrRedCount)
9155 {
9156  //
9157  // Check the arguments
9158  //
9159  DebugP_assert(hrRedCount <= CSL_EPWM_DBREDHR_DBREDHR_MAX);
9160 
9161  //
9162  // Set the High Resolution RED (Rising Edge Delay) count only
9163  //
9164  HW_WR_REG16(base + CSL_EPWM_DBREDHR,
9165  HW_RD_REG16(base + CSL_EPWM_DBREDHR) |
9166  (hrRedCount << CSL_EPWM_DBREDHR_DBREDHR_SHIFT));
9167 }
9168 
9169 //*****************************************************************************
9170 //
9182 //
9183 //*****************************************************************************
9184 static inline void
9185 HRPWM_setHiResFallingEdgeDelayOnly(uint32_t base, uint16_t hrFedCount)
9186 {
9187  //
9188  // Check the arguments
9189  //
9190  DebugP_assert(hrFedCount <= CSL_EPWM_DBFEDHR_DBFEDHR_MAX);
9191 
9192  //
9193  // Set the high resolution FED (Falling Edge Delay) count
9194  //
9195  HW_WR_REG16(base + CSL_EPWM_DBFEDHR,
9196  HW_RD_REG16(base + CSL_EPWM_DBFEDHR) &
9197  ~CSL_EPWM_DBFEDHR_DBFEDHR_MASK |
9198  (hrFedCount << CSL_EPWM_DBFEDHR_DBFEDHR_SHIFT));
9199 }
9200 
9201 //*****************************************************************************
9202 //
9213 //
9214 //*****************************************************************************
9215 static inline void
9216 HRPWM_setMEPStep(uint32_t base, uint16_t mepCount)
9217 {
9218  //
9219  // Check the arguments
9220  //
9221  DebugP_assert(mepCount <= CSL_OTTOCAL_HRMSTEP_HRMSTEP_MAX);
9222 
9223  //
9224  // Set HRPWM MEP count
9225  //
9226  HW_WR_REG16(base + CSL_OTTOCAL_HRMSTEP,
9227  ((HW_RD_REG16(base + CSL_OTTOCAL_HRMSTEP) & ~CSL_OTTOCAL_HRMSTEP_HRMSTEP_MASK) |
9228  mepCount << CSL_OTTOCAL_HRMSTEP_HRMSTEP_SHIFT));
9229 }
9230 
9231 //*****************************************************************************
9232 //
9250 //
9251 //*****************************************************************************
9252 static inline void
9254  HRPWM_MEPDeadBandEdgeMode mepDBEdge)
9255 {
9256  //
9257  // Set the HRPWM DB edge mode
9258  //
9259  HW_WR_REG16(base + CSL_EPWM_HRCNFG2,
9260  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG2) & ~CSL_EPWM_HRCNFG2_EDGMODEDB_MASK) |
9261  ((uint16_t)mepDBEdge << CSL_EPWM_HRCNFG2_EDGMODEDB_SHIFT)));
9262 }
9263 
9264 //*****************************************************************************
9265 //
9280 //
9281 //*****************************************************************************
9282 static inline void
9284  HRPWM_LoadMode loadEvent)
9285 {
9286  //
9287  // Set the HRPWM RED load mode
9288  //
9289  HW_WR_REG16(base + CSL_EPWM_HRCNFG2,
9290  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG2) & ~CSL_EPWM_HRCNFG2_CTLMODEDBRED_MASK) |
9291  ((uint16_t)loadEvent << CSL_EPWM_HRCNFG2_CTLMODEDBRED_SHIFT)));
9292 }
9293 
9294 //*****************************************************************************
9295 //
9310 //
9311 //*****************************************************************************
9312 static inline void
9314 {
9315  //
9316  // Set the HRPWM FED load mode
9317  //
9318  HW_WR_REG16(base + CSL_EPWM_HRCNFG2,
9319  ((HW_RD_REG16(base + CSL_EPWM_HRCNFG2) & ~CSL_EPWM_HRCNFG2_CTLMODEDBFED_MASK) |
9320  ((uint16_t)loadEvent << CSL_EPWM_HRCNFG2_CTLMODEDBFED_SHIFT)));
9321 }
9322 
9323 //
9324 // XCMP related APIs
9325 //
9326 //*****************************************************************************
9327 //
9335 //
9336 //*****************************************************************************
9337 
9338 static inline void
9339 EPWM_enableXCMPMode(uint32_t base)
9340 {
9341  uint32_t registerOffset = base + CSL_EPWM_XCMPCTL1;
9342 
9343  HW_WR_REG32(registerOffset,
9344  (HW_RD_REG32(registerOffset) | CSL_EPWM_XCMPCTL1_XCMPEN_MAX ));
9345 }
9346 
9347 //*****************************************************************************
9348 //
9356 //
9357 //*****************************************************************************
9358 static inline void
9359 EPWM_disableXCMPMode(uint32_t base)
9360 {
9361  uint32_t registerOffset = base + CSL_EPWM_XCMPCTL1;
9362 
9363  HW_WR_REG32(registerOffset,
9364  (HW_RD_REG32(registerOffset) & ~CSL_EPWM_XCMPCTL1_XCMPEN_MAX ));
9365 }
9366 
9367 
9368 //*****************************************************************************
9369 //
9377 //
9378 //*****************************************************************************
9379 
9380 static inline void
9381 EPWM_enableSplitXCMP(uint32_t base)
9382 {
9383  uint32_t registerOffset = base + CSL_EPWM_XCMPCTL1;
9384  uint32_t offset = CSL_EPWM_XCMPCTL1_XCMPSPLIT_SHIFT;
9385 
9386  HW_WR_REG32(registerOffset,
9387  (HW_RD_REG32(registerOffset) | ( CSL_EPWM_XCMPCTL1_XCMPSPLIT_MAX << offset )));
9388 }
9389 
9390 //*****************************************************************************
9391 //
9399 //
9400 //*****************************************************************************
9401 
9402 static inline void
9404 {
9405  uint32_t registerOffset = base + CSL_EPWM_XCMPCTL1;
9406  uint32_t offset = CSL_EPWM_XCMPCTL1_XCMPSPLIT_SHIFT;
9407 
9408  HW_WR_REG32(registerOffset,
9409  (HW_RD_REG32(registerOffset) & ~( CSL_EPWM_XCMPCTL1_XCMPSPLIT_MAX << offset )));
9410 
9411 }
9412 
9413 //*****************************************************************************
9414 //
9419 
9432 //
9433 //*****************************************************************************
9434 
9435 static inline void
9436 EPWM_allocAXCMP(uint32_t base, EPWM_XCMP_ALLOC_CMPA alloctype)
9437 {
9438  uint32_t registerOffset = base + CSL_EPWM_XCMPCTL1;
9439  uint32_t offset = CSL_EPWM_XCMPCTL1_XCMPA_ALLOC_SHIFT;
9440 
9441  HW_WR_REG32(registerOffset,
9442  ( (HW_RD_REG32(registerOffset) & ~CSL_EPWM_XCMPCTL1_XCMPA_ALLOC_MASK) | ( alloctype << offset )));
9443 }
9444 
9445 //*****************************************************************************
9446 //
9451 
9459 //
9460 //*****************************************************************************
9461 
9462 static inline void
9463 EPWM_allocBXCMP(uint32_t base, EPWM_XCMP_ALLOC_CMPB alloctype)
9464 {
9465  uint32_t registerOffset = base + CSL_EPWM_XCMPCTL1;
9466  uint32_t offset = CSL_EPWM_XCMPCTL1_XCMPB_ALLOC_SHIFT;
9467 
9468  HW_WR_REG32(registerOffset,
9469  ( (HW_RD_REG32(registerOffset) & ~CSL_EPWM_XCMPCTL1_XCMPB_ALLOC_MASK) | ( alloctype << offset )));
9470 }
9471 
9472 //*****************************************************************************
9473 //
9491 //
9492 //*****************************************************************************
9493 
9494 static inline void
9495 EPWM_setXCMPRegValue(uint32_t base, EPWM_XCMPReg xcmpReg,
9496  uint16_t xcmpvalue)
9497 {
9498  uint32_t registerOffset;
9499 
9500  //
9501  // Get the register offset for the Counter compare
9502  //
9503  registerOffset = base + CSL_EPWM_XCMP1_ACTIVE + (uint16_t)xcmpReg;
9504 
9505  //
9506  // Write to the xcmp registers.
9507  //
9508  HW_WR_REG16(registerOffset + 0x2U, xcmpvalue);
9509 }
9510 
9511 //*****************************************************************************
9512 //
9548 //
9549 //*****************************************************************************
9550 static inline void
9551 EPWM_setXCMPActionQualifierAction(uint32_t base, uint32_t shadowset,
9555 {
9556  uint32_t registerOffset;
9557 
9558  //
9559  // Get the register offset
9560  //
9561 
9562  if(shadowset == EPWM_XCMP_ACTIVE)
9563  {
9564  registerOffset = CSL_EPWM_XAQCTLA_ACTIVE + (uint16_t)(epwmOutput/2);
9565 
9566  HW_WR_REG16(base + registerOffset,
9567  ((HW_RD_REG16(base + registerOffset) &
9568  ~(CSL_EPWM_XAQCTLA_ACTIVE_XCMP1_MAX << (uint16_t)event)) |
9569  ((uint16_t)output << (uint16_t)event)));
9570  }
9571  else if(shadowset == EPWM_XCMP_SHADOW1)
9572  {
9573  registerOffset = CSL_EPWM_XAQCTLA_SHDW1 + (uint16_t)(epwmOutput/2);
9574 
9575  HW_WR_REG16(base + registerOffset,
9576  ((HW_RD_REG16(base + registerOffset) &
9577  ~(CSL_EPWM_XAQCTLA_SHDW1_XCMP1_MAX << (uint16_t)event)) |
9578  ((uint16_t)output << (uint16_t)event)));
9579  }
9580  else if(shadowset == EPWM_XCMP_SHADOW2)
9581  {
9582  registerOffset = CSL_EPWM_XAQCTLA_SHDW2 + (uint16_t)(epwmOutput/2);
9583 
9584  HW_WR_REG16(base + registerOffset,
9585  ((HW_RD_REG16(base + registerOffset) &
9586  ~(CSL_EPWM_XAQCTLA_SHDW2_XCMP1_MAX << (uint16_t)event)) |
9587  ((uint16_t)output << (uint16_t)event)));
9588  }
9589  else if(shadowset == EPWM_XCMP_SHADOW3)
9590  {
9591  registerOffset = CSL_EPWM_XAQCTLA_SHDW3 + (uint16_t)(epwmOutput/2);
9592 
9593  HW_WR_REG16(base + registerOffset,
9594  ((HW_RD_REG16(base + registerOffset) &
9595  ~(CSL_EPWM_XAQCTLA_SHDW3_XCMP1_MAX << (uint16_t)event)) |
9596  ((uint16_t)output << (uint16_t)event)));
9597  }
9598 
9599 }
9600 
9601 //*****************************************************************************
9602 //
9610 //
9611 //*****************************************************************************
9612 
9613 static inline void
9614 EPWM_enableXLoad(uint32_t base)
9615 {
9616  uint32_t registerOffset = base + CSL_EPWM_XLOAD;
9617 
9618  HW_WR_REG32(registerOffset,
9619  (HW_RD_REG32(registerOffset) | CSL_EPWM_XLOAD_STARTLD_MASK ));
9620 }
9621 
9622 //*****************************************************************************
9623 //
9631 //
9632 //*****************************************************************************
9633 static inline void
9634 EPWM_disableXLoad(uint32_t base)
9635 {
9636  uint32_t registerOffset = base + CSL_EPWM_XLOAD;
9637 
9638  HW_WR_REG32(registerOffset,
9639  (HW_RD_REG32(registerOffset) & ~CSL_EPWM_XLOAD_STARTLD_MASK ));
9640 }
9641 
9642 //*****************************************************************************
9643 //
9648 
9654 //
9655 //*****************************************************************************
9656 
9657 static inline void
9659 {
9660  uint32_t registerOffset;
9661 
9662  //
9663  // Get the register offset
9664  //
9665  registerOffset = base + CSL_EPWM_XLOADCTL;
9666 
9668  {
9669  HW_WR_REG32(registerOffset,
9670  (HW_RD_REG32(registerOffset) & ~CSL_EPWM_XLOADCTL_LOADMODE_MASK));
9671  }
9673  {
9674  HW_WR_REG32(registerOffset,
9675  (HW_RD_REG32(registerOffset) | CSL_EPWM_XLOADCTL_LOADMODE_MASK));
9676  }
9677 }
9678 
9679 //*****************************************************************************
9680 //
9685 
9693 //
9694 //*****************************************************************************
9695 static inline void
9697 {
9698  uint32_t registerOffset;
9699 
9700  //
9701  // Get the register offset
9702  //
9703  registerOffset = base + CSL_EPWM_XLOADCTL;
9704 
9705  HW_WR_REG32(registerOffset,
9706  ((HW_RD_REG32(registerOffset) & ~CSL_EPWM_XLOADCTL_SHDWLEVEL_MASK) |
9707  ((uint16_t)level << CSL_EPWM_XLOADCTL_SHDWLEVEL_SHIFT)));
9708 }
9709 
9710 //*****************************************************************************
9711 //
9716 
9724 //
9725 //*****************************************************************************
9726 static inline void
9728 {
9729  uint32_t registerOffset;
9730 
9731  //
9732  // Get the register offset
9733  //
9734  registerOffset = base + CSL_EPWM_XLOADCTL;
9735 
9736  HW_WR_REG32(registerOffset,
9737  ((HW_RD_REG32(registerOffset) & ~CSL_EPWM_XLOADCTL_SHDWBUFPTR_LOADONCE_MASK) |
9738  ((uint16_t)ptr << CSL_EPWM_XLOADCTL_SHDWBUFPTR_LOADONCE_SHIFT)));
9739 }
9740 
9741 //*****************************************************************************
9742 //
9748 
9757 //
9758 //*****************************************************************************
9759 static inline void
9760 EPWM_setXCMPShadowRepeatBufxCount(uint32_t base, uint32_t bufferset, uint8_t count)
9761 {
9762  uint32_t registerOffset;
9763  //
9764  // Get the register offset
9765  //
9766  registerOffset = base + CSL_EPWM_XLOADCTL;
9767 
9768  if(bufferset == EPWM_XCMP_SHADOW2)
9769  {
9770  HW_WR_REG32(registerOffset,
9771  ((HW_RD_REG32(registerOffset) & ~(CSL_EPWM_XLOADCTL_RPTBUF2PRD_MASK))
9772  | (count<<CSL_EPWM_XLOADCTL_RPTBUF2PRD_SHIFT)) );
9773  }
9774  else if(bufferset == EPWM_XCMP_SHADOW3)
9775  {
9776  HW_WR_REG32(registerOffset,
9777  ((HW_RD_REG32(registerOffset) & ~(CSL_EPWM_XLOADCTL_RPTBUF3PRD_MASK))
9778  | (count<<CSL_EPWM_XLOADCTL_RPTBUF3PRD_SHIFT)) );
9779  }
9780 }
9781 
9782 //*************************************************
9783 //
9784 // DIODE EMULATION LOGIC APIs
9785 //
9786 
9787 //*****************************************************************************
9788 //
9796 //
9797 //*****************************************************************************
9798 
9799 static inline void
9801 {
9802  uint32_t registerOffset;
9803  //
9804  // Get the register offset
9805  //
9806  registerOffset = base + CSL_EPWM_DECTL;
9807 
9808  HW_WR_REG32(registerOffset,
9809  (HW_RD_REG32(registerOffset) | CSL_EPWM_DECTL_ENABLE_MAX ));
9810 
9811 }
9812 
9813 //*****************************************************************************
9814 //
9822 //
9823 //*****************************************************************************
9824 
9825 static inline void
9827 {
9828  uint32_t registerOffset;
9829  //
9830  // Get the register offset
9831  //
9832  registerOffset = base + CSL_EPWM_DECTL;
9833 
9834  HW_WR_REG32(registerOffset,
9835  (HW_RD_REG32(registerOffset) & ~CSL_EPWM_DECTL_ENABLE_MAX ));
9836 
9837 }
9838 
9839 //*****************************************************************************
9840 //
9845 
9851 //
9852 //*****************************************************************************
9853 
9854 static inline void
9856 {
9857  uint32_t registerOffset;
9858 
9859  //
9860  // Get the register offset
9861  //
9862  registerOffset = base + CSL_EPWM_DECTL;
9863 
9864  if(mode == EPWM_DIODE_EMULATION_CBC)
9865  {
9866  HW_WR_REG32(registerOffset,
9867  (HW_RD_REG32(registerOffset) & ~CSL_EPWM_DECTL_MODE_MASK));
9868  }
9869  else if(mode == EPWM_DIODE_EMULATION_OST)
9870  {
9871  HW_WR_REG32(registerOffset,
9872  (HW_RD_REG32(registerOffset) | CSL_EPWM_DECTL_MODE_MASK));
9873  }
9874 }
9875 
9876 //*****************************************************************************
9877 //
9887 //
9888 //*****************************************************************************
9889 
9890 static inline void
9891 EPWM_setDiodeEmulationReentryDelay(uint32_t base,uint8_t delay)
9892 {
9893  uint32_t registerOffset;
9894  //
9895  // Get the register offset
9896  //
9897  registerOffset = base + CSL_EPWM_DECTL;
9898 
9899  HW_WR_REG32(registerOffset,
9900  ((HW_RD_REG32(registerOffset) & ~(CSL_EPWM_DECTL_REENTRYDLY_MASK))
9901  | (delay<<CSL_EPWM_DECTL_REENTRYDLY_SHIFT)) );
9902 }
9903 
9904 //*****************************************************************************
9905 //
9921 //*****************************************************************************
9922 
9923 static inline void
9925  uint32_t tripLorH)
9926 {
9927  uint32_t registerOffset;
9928  //
9929  // Get the register offset
9930  //
9931  registerOffset = base + CSL_EPWM_DECOMPSEL;
9932 
9933  if(tripLorH == EPWM_DE_TRIPL)
9934  {
9935  HW_WR_REG32(registerOffset,
9936  ((HW_RD_REG32(registerOffset) &
9937  ~CSL_EPWM_DECOMPSEL_TRIPL_MASK) |
9938  (source<<CSL_EPWM_DECOMPSEL_TRIPL_SHIFT)));
9939  }
9940  else if(tripLorH == EPWM_DE_TRIPH)
9941  {
9942  HW_WR_REG32(registerOffset,
9943  ((HW_RD_REG32(registerOffset) &
9944  ~CSL_EPWM_DECOMPSEL_TRIPH_MASK) |
9945  (source<<CSL_EPWM_DECOMPSEL_TRIPH_SHIFT)));
9946  }
9947 
9948 }
9949 
9950 //*****************************************************************************
9951 //
9968 //*****************************************************************************
9969 
9970 static inline void
9971 EPWM_selectDiodeEmulationPWMsignal(uint32_t base,uint32_t channel,
9973 {
9974  uint32_t registerOffset;
9975  //
9976  // Get the register offset
9977  //
9978  registerOffset = base + CSL_EPWM_DEACTCTL;
9979 
9980  if(channel == EPWM_DE_CHANNEL_A)
9981  {
9982  HW_WR_REG32(registerOffset,
9983  ((HW_RD_REG32(registerOffset) &
9984  ~CSL_EPWM_DEACTCTL_PWMA_MASK) |
9985  (signal<<CSL_EPWM_DEACTCTL_PWMA_SHIFT)));
9986  }
9987  else
9988  {
9989  HW_WR_REG32(registerOffset,
9990  ((HW_RD_REG32(registerOffset) &
9991  ~CSL_EPWM_DEACTCTL_PWMB_MASK) |
9992  (signal<<CSL_EPWM_DEACTCTL_PWMB_SHIFT)));
9993  }
9994 }
9995 
9996 //*****************************************************************************
9997 //
10012 //*****************************************************************************
10013 
10014 static inline void
10015 EPWM_selectDiodeEmulationTripSignal(uint32_t base,uint32_t channel,
10016  uint32_t signal)
10017 {
10018  uint32_t registerOffset;
10019  //
10020  // Get the register offset
10021  //
10022  registerOffset = base + CSL_EPWM_DEACTCTL;
10023 
10024  if(channel == EPWM_DE_CHANNEL_A)
10025  {
10026  HW_WR_REG32(registerOffset,
10027  ((HW_RD_REG32(registerOffset) &
10028  ~CSL_EPWM_DEACTCTL_TRIPSELA_MASK) |
10029  (signal<<CSL_EPWM_DEACTCTL_TRIPSELA_SHIFT)));
10030  }
10031  else
10032  {
10033  HW_WR_REG32(registerOffset,
10034  ((HW_RD_REG32(registerOffset) &
10035  ~CSL_EPWM_DEACTCTL_TRIPSELB_MASK) |
10036  (signal<<CSL_EPWM_DEACTCTL_TRIPSELB_SHIFT)));
10037  }
10038 }
10039 
10040 //*****************************************************************************
10041 //
10047 //*****************************************************************************
10048 
10049 static inline void
10051 {
10052  uint32_t registerOffset;
10053  //
10054  // Get the register offset
10055  //
10056  registerOffset = base + CSL_EPWM_DEACTCTL;
10057 
10058  HW_WR_REG32(registerOffset,
10059  (HW_RD_REG32(registerOffset) &
10060  ~(CSL_EPWM_DEACTCTL_TRIPENABLE_MAX << CSL_EPWM_DEACTCTL_TRIPENABLE_SHIFT)));
10061 
10062 }
10063 
10064 //*****************************************************************************
10065 //
10071 //*****************************************************************************
10072 
10073 static inline void
10075 {
10076  uint32_t registerOffset;
10077  //
10078  // Get the register offset
10079  //
10080  registerOffset = base + CSL_EPWM_DEACTCTL;
10081 
10082  HW_WR_REG32(registerOffset,
10083  (HW_RD_REG32(registerOffset) |
10084  (CSL_EPWM_DEACTCTL_TRIPENABLE_MAX << CSL_EPWM_DEACTCTL_TRIPENABLE_SHIFT)));
10085 
10086 }
10087 
10088 //*****************************************************************************
10089 //
10095 //*****************************************************************************
10096 
10097 static inline void
10099 {
10100  uint32_t registerOffset;
10101  //
10102  // Get the register offset
10103  //
10104  registerOffset = base + CSL_EPWM_DEFRC;
10105 
10106  HW_WR_REG32(registerOffset,
10107  (HW_RD_REG32(registerOffset) | CSL_EPWM_DEFRC_DEACTIVE_MASK));
10108 
10109 }
10110 
10111 //*****************************************************************************
10112 //
10118 //*****************************************************************************
10119 
10120 
10121 static inline void
10123 {
10124  uint32_t registerOffset;
10125  //
10126  // Get the register offset
10127  //
10128  registerOffset = base + CSL_EPWM_DEMONCTL;
10129 
10130  HW_WR_REG32(registerOffset,
10131  (HW_RD_REG32(registerOffset) |
10132  (CSL_EPWM_DEMONCTL_ENABLE_MAX << CSL_EPWM_DEMONCTL_ENABLE_SHIFT)));
10133 }
10134 
10135 //*****************************************************************************
10136 //
10142 //*****************************************************************************
10143 
10144 static inline void
10146 {
10147  uint32_t registerOffset;
10148  //
10149  // Get the register offset
10150  //
10151  registerOffset = base + CSL_EPWM_DEMONCTL;
10152 
10153  HW_WR_REG32(registerOffset,
10154  (HW_RD_REG32(registerOffset) &
10155  ~(CSL_EPWM_DEMONCTL_ENABLE_MAX << CSL_EPWM_DEMONCTL_ENABLE_SHIFT)));
10156 }
10157 
10158 //*****************************************************************************
10159 //
10171 //*****************************************************************************
10172 
10173 static inline void
10174 EPWM_setDiodeEmulationMonitorModeStep(uint32_t base,uint32_t direction,
10175  uint8_t stepsize)
10176 {
10177  uint32_t registerOffset;
10178  //
10179  // Get the register offset
10180  //
10181  registerOffset = base + CSL_EPWM_DEMONSTEP;
10182 
10183  if(direction == EPWM_DE_COUNT_UP)
10184  {
10185  HW_WR_REG32(registerOffset,
10186  (HW_RD_REG32(registerOffset) & ~CSL_EPWM_DEMONSTEP_INCSTEP_MASK)
10187  | (stepsize<<CSL_EPWM_DEMONSTEP_INCSTEP_SHIFT));
10188  }
10189  else if(direction == EPWM_DE_COUNT_DOWN)
10190  {
10191  HW_WR_REG32(registerOffset,
10192  ((HW_RD_REG32(registerOffset) &
10193  ~CSL_EPWM_DEMONSTEP_DECSTEP_MASK) |
10194  (stepsize<<CSL_EPWM_DEMONSTEP_DECSTEP_SHIFT)));
10195  }
10196 }
10197 
10198 //*****************************************************************************
10199 //
10207 //*****************************************************************************
10208 static inline void
10209 EPWM_setDiodeEmulationMonitorCounterThreshold(uint32_t base,uint16_t threshold)
10210 {
10211  uint32_t registerOffset;
10212  //
10213  // Get the register offset
10214  //
10215  registerOffset = base + CSL_EPWM_DEMONTHRES;
10216 
10217  HW_WR_REG32(registerOffset,
10218  ((HW_RD_REG32(registerOffset) & ~(CSL_EPWM_DEMONTHRES_THRESHOLD_MASK))
10219  | (threshold<<CSL_EPWM_DEMONTHRES_THRESHOLD_SHIFT)) );
10220 }
10221 
10222 
10223 //*****************************************************************************
10224 //
10239 //
10240 //*****************************************************************************
10241 extern void
10242 EPWM_setEmulationMode(uint32_t base, EPWM_EmulationMode emulationMode);
10243 //*****************************************************************************
10244 //
10254 //
10255 //*****************************************************************************
10256 extern void
10257 EPWM_configureSignal(uint32_t base, const EPWM_SignalParams *signalParams);
10258 //*****************************************************************************
10259 //
10260 // Close the Doxygen group.
10262 //
10263 //*****************************************************************************
10264 
10265 //*****************************************************************************
10266 //
10267 // Mark the end of the C bindings section for C++ compilers.
10268 //
10269 //*****************************************************************************
10270 #ifdef __cplusplus
10271 }
10272 #endif
10273 
10274 #endif // EPWM_V1_H_
EPWM_TZ_ACTION_HIGH
@ EPWM_TZ_ACTION_HIGH
high voltage state
Definition: etpwm.h:955
HRPWM_LOAD_ON_CNTR_ZERO_PERIOD
@ HRPWM_LOAD_ON_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:1889
EPWM_disableInterruptEventCountInit
static void EPWM_disableInterruptEventCountInit(uint32_t base)
Definition: etpwm.h:5710
EPWM_setDeadBandOutputSwapMode
static void EPWM_setDeadBandOutputSwapMode(uint32_t base, EPWM_DeadBandOutput output, bool enableSwapMode)
Definition: etpwm.h:4084
EPWM_enableADCTriggerEventCountInit
static void EPWM_enableADCTriggerEventCountInit(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6182
EPWM_AQ_OUTPUT_HIGH_UP_T1
@ EPWM_AQ_OUTPUT_HIGH_UP_T1
T1 event on count up and set output pins to high.
Definition: etpwm.h:675
EPWM_getValleyHWDelay
static uint16_t EPWM_getValleyHWDelay(uint32_t base)
Definition: etpwm.h:7730
EPWM_getDigitalCompareEdgeFilterEdgeStatus
static uint16_t EPWM_getDigitalCompareEdgeFilterEdgeStatus(uint32_t base)
Definition: etpwm.h:6716
EPWM_TimeBaseCountMode
EPWM_TimeBaseCountMode
Definition: etpwm.h:346
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT22
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT22
Trip source is INPUTXBAR out22 signal.
Definition: etpwm.h:2260
EPWM_TZ_ACTION_LOW
@ EPWM_TZ_ACTION_LOW
low voltage state
Definition: etpwm.h:956
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM8
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM8
Sync-in source is EPWM8 sync-out signal.
Definition: etpwm.h:204
EPWM_getCycleByCycleTripZoneFlagStatus
static uint16_t EPWM_getCycleByCycleTripZoneFlagStatus(uint32_t base)
Definition: etpwm.h:5186
EPWM_ActionQualifierLoadMode
EPWM_ActionQualifierLoadMode
Definition: etpwm.h:508
EPWM_LINK_WITH_EPWM_5
@ EPWM_LINK_WITH_EPWM_5
link current ePWM with ePWM5
Definition: etpwm.h:393
EPWM_setFallingEdgeDelayCountShadowLoadMode
static void EPWM_setFallingEdgeDelayCountShadowLoadMode(uint32_t base, EPWM_FallingEdgeDelayLoadMode loadMode)
Definition: etpwm.h:4417
EPWM_selectPeriodLoadEvent
static void EPWM_selectPeriodLoadEvent(uint32_t base, EPWM_PeriodShadowLoadMode shadowLoadMode)
Definition: etpwm.h:2819
EPWM_TZ_CBC_PULSE_CLR_CNTR_ZERO_PERIOD
@ EPWM_TZ_CBC_PULSE_CLR_CNTR_ZERO_PERIOD
Clear CBC pulse when counter equals zero or period.
Definition: etpwm.h:1128
EPWM_setupEPWMLinks
static void EPWM_setupEPWMLinks(uint32_t base, EPWM_CurrentLink epwmLink, EPWM_LinkComponent linkComp)
Definition: etpwm.h:3163
EPWM_XCMP_XLOADCTL_SHDWLEVEL
EPWM_XCMP_XLOADCTL_SHDWLEVEL
Definition: etpwm.h:2161
HRPWM_setMEPEdgeSelect
static void HRPWM_setMEPEdgeSelect(uint32_t base, HRPWM_Channel channel, HRPWM_MEPEdgeMode mepEdgeMode)
Definition: etpwm.h:8601
EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG2
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG2
Sync-in source is FSI-RX2 RX Trigger 2 signal.
Definition: etpwm.h:300
EPWM_SOC_A
@ EPWM_SOC_A
SOC A.
Definition: etpwm.h:1257
EPWM_DC_EVENT_1
@ EPWM_DC_EVENT_1
Digital Compare Event number 1.
Definition: etpwm.h:1464
EPWM_AQ_LOAD_ON_CNTR_ZERO_PERIOD
@ EPWM_AQ_LOAD_ON_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:514
EPWM_AQ_SW_OUTPUT_HIGH
@ EPWM_AQ_SW_OUTPUT_HIGH
Set output pins to High.
Definition: etpwm.h:600
EPWM_DC_WINDOW_START_TBCTR_ZERO_PERIOD
@ EPWM_DC_WINDOW_START_TBCTR_ZERO_PERIOD
Time base counter equals zero.
Definition: etpwm.h:1391
EPWM_DE_TRIP_SRC_CMPSSB1
@ EPWM_DE_TRIP_SRC_CMPSSB1
Trip source is CMPSSB1 signal.
Definition: etpwm.h:2302
EPWM_HSCLOCK_DIVIDER_2
@ EPWM_HSCLOCK_DIVIDER_2
Divide clock by 2.
Definition: etpwm.h:168
EPWM_LINK_WITH_EPWM_9
@ EPWM_LINK_WITH_EPWM_9
link current ePWM with ePWM9
Definition: etpwm.h:397
HRPWM_setMEPStep
static void HRPWM_setMEPStep(uint32_t base, uint16_t mepCount)
Definition: etpwm.h:9216
EPWM_startValleyCapture
static void EPWM_startValleyCapture(uint32_t base)
Definition: etpwm.h:7492
EPWM_setXCMPShadowRepeatBufxCount
static void EPWM_setXCMPShadowRepeatBufxCount(uint32_t base, uint32_t bufferset, uint8_t count)
Definition: etpwm.h:9760
EPWM_disableOneShotSync
static void EPWM_disableOneShotSync(uint32_t base)
Definition: etpwm.h:2864
EPWM_XCMP2_SHADOW3
@ EPWM_XCMP2_SHADOW3
XCMP2_SHADOW3.
Definition: etpwm.h:2048
EPWM_GL_LOAD_PULSE_CNTR_CMPC_U
@ EPWM_GL_LOAD_PULSE_CNTR_CMPC_U
load when counter is equal to cmpc and cmpc is incrementing
Definition: etpwm.h:1549
EPWM_enableValleyHWDelay
static void EPWM_enableValleyHWDelay(uint32_t base)
Definition: etpwm.h:7579
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT18
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT18
Trip source is INPUTXBAR out18 signal.
Definition: etpwm.h:2252
EPWM_selectCycleByCycleTripZoneClearEvent
static void EPWM_selectCycleByCycleTripZoneClearEvent(uint32_t base, EPWM_CycleByCycleTripZoneClearMode clearEvent)
Definition: etpwm.h:5245
EPWM_setChopperFreq
static void EPWM_setChopperFreq(uint32_t base, uint16_t freqDiv)
Definition: etpwm.h:4630
EPWM_SYNC_IN_PULSE_SRC_C2K_TIMESYNC_XBAR_PWM_OUT1
@ EPWM_SYNC_IN_PULSE_SRC_C2K_TIMESYNC_XBAR_PWM_OUT1
Sync-in source is C2K Timesync xbar sync pwm out1 signal.
Definition: etpwm.h:278
EPWM_enableTripZoneOutput
static void EPWM_enableTripZoneOutput(uint32_t base, uint16_t tzOutput)
Definition: etpwm.h:5422
EPWM_SHADOW_LOAD_MODE_COUNTER_ZERO
@ EPWM_SHADOW_LOAD_MODE_COUNTER_ZERO
shadow to active load occurs when time base counter reaches 0.
Definition: etpwm.h:362
EPWM_DE_TRIP_SRC_CMPSSB0
@ EPWM_DE_TRIP_SRC_CMPSSB0
Trip source is CMPSSB0 signal.
Definition: etpwm.h:2300
EPWM_REGISTER_GROUP_TRIP_ZONE
@ EPWM_REGISTER_GROUP_TRIP_ZONE
Trip zone register group.
Definition: etpwm.h:1706
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM24
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM24
Sync-in source is EPWM24 sync-out signal.
Definition: etpwm.h:236
EPWM_TZ_ADV_ACTION_EVENT_DCxEVT1_U
@ EPWM_TZ_ADV_ACTION_EVENT_DCxEVT1_U
Digital Compare event A/B 1 while counting up.
Definition: etpwm.h:1004
EPWM_forceDiodeEmulationActive
static void EPWM_forceDiodeEmulationActive(uint32_t base)
Definition: etpwm.h:10098
EPWM_COMP_LOAD_ON_CNTR_ZERO
@ EPWM_COMP_LOAD_ON_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:469
EPWM_ActionQualifierContForce
EPWM_ActionQualifierContForce
Definition: etpwm.h:726
EPWM_DE_SYNC_INV_TRIPHorL
@ EPWM_DE_SYNC_INV_TRIPHorL
synchronized and inverted version of TRIPH or TRIPL signal
Definition: etpwm.h:2327
EPWM_getTimeBaseCounterValue
static uint16_t EPWM_getTimeBaseCounterValue(uint32_t base)
Definition: etpwm.h:2907
EPWM_getADCTriggerEventCount
static uint16_t EPWM_getADCTriggerEventCount(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6315
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT16
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT16
Trip source is INPUTXBAR out16 signal.
Definition: etpwm.h:2248
EPWM_DE_HIGH
@ EPWM_DE_HIGH
a constant high signal
Definition: etpwm.h:2331
EPWM_enableTripZoneAdvAction
static void EPWM_enableTripZoneAdvAction(uint32_t base)
Definition: etpwm.h:4827
HRPWM_PWMSYNC_SOURCE_ZERO
@ HRPWM_PWMSYNC_SOURCE_ZERO
Counter equals zero.
Definition: etpwm.h:1919
HRPWM_PWMSYNC_SOURCE_COMPD_UP
@ HRPWM_PWMSYNC_SOURCE_COMPD_UP
Counter equals COMPD when counting up.
Definition: etpwm.h:1925
HRPWM_setHiResFallingEdgeDelayOnly
static void HRPWM_setHiResFallingEdgeDelayOnly(uint32_t base, uint16_t hrFedCount)
Definition: etpwm.h:9185
EPWM_setActionQualifierActionComplete
static void EPWM_setActionQualifierActionComplete(uint32_t base, EPWM_ActionQualifierOutputModule epwmOutput, EPWM_ActionQualifierEventAction action)
Definition: etpwm.h:3795
EPWM_DC_CBC_LATCH_CLR_ON_CNTR_ZERO_PERIOD
@ EPWM_DC_CBC_LATCH_CLR_ON_CNTR_ZERO_PERIOD
Clear CBC latch when counter equals zero or period.
Definition: etpwm.h:1523
EPWM_CLOCK_DIVIDER_32
@ EPWM_CLOCK_DIVIDER_32
Divide clock by 32.
Definition: etpwm.h:154
EPWM_setFallingEdgeDelayCount
static void EPWM_setFallingEdgeDelayCount(uint32_t base, uint16_t fedCount)
Definition: etpwm.h:4525
EPWM_XCMP_4_CMPA
@ EPWM_XCMP_4_CMPA
Allocate XCMP1 - XCMP4 registers to CMPA.
Definition: etpwm.h:2110
EPWM_XCMP_SHADOW1
#define EPWM_XCMP_SHADOW1
XCMP set = Shadow 2.
Definition: etpwm.h:1968
EPWM_COMP_LOAD_FREEZE
@ EPWM_COMP_LOAD_FREEZE
Freeze shadow to active load.
Definition: etpwm.h:475
EPWM_SYNC_IN_PULSE_SRC_C2K_TIMESYNC_XBAR_PWM_OUT0
@ EPWM_SYNC_IN_PULSE_SRC_C2K_TIMESYNC_XBAR_PWM_OUT0
Sync-in source is C2K Timesync xbar sync pwm out0 signal.
Definition: etpwm.h:276
EPWM_DE_TRIP_SRC_CMPSSB2
@ EPWM_DE_TRIP_SRC_CMPSSB2
Trip source is CMPSSB2 signal.
Definition: etpwm.h:2304
EPWM_DC_EDGEFILT_EDGECNT_6
@ EPWM_DC_EDGEFILT_EDGECNT_6
Digital Compare Edge filter edge count = 7.
Definition: etpwm.h:1691
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT12
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT12
Trip source is INPUTXBAR out12 signal.
Definition: etpwm.h:2240
EPWM_SignalParams::dutyValA
Float32 dutyValA
Desired ePWMxA Signal Duty.
Definition: etpwm.h:2390
EPWM_AQ_LOAD_ON_SYNC_CNTR_ZERO
@ EPWM_AQ_LOAD_ON_SYNC_CNTR_ZERO
load on sync or when counter equals zero
Definition: etpwm.h:518
EPWM_forceActionQualifierSWAction
static void EPWM_forceActionQualifierSWAction(uint32_t base, EPWM_ActionQualifierOutputModule epwmOutput)
Definition: etpwm.h:4038
EPWM_XCMP2_ACTIVE
@ EPWM_XCMP2_ACTIVE
XCMP2_ACTIVE.
Definition: etpwm.h:1985
EPWM_DC_CBC_LATCH_CLR_CNTR_ZERO
@ EPWM_DC_CBC_LATCH_CLR_CNTR_ZERO
Clear CBC latch when counter equals zero.
Definition: etpwm.h:1519
EPWM_LINK_WITH_EPWM_22
@ EPWM_LINK_WITH_EPWM_22
link current ePWM with ePWM22
Definition: etpwm.h:410
EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_T1
@ EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_T1
T1 event on count down and no change in the output pins.
Definition: etpwm.h:679
EPWM_setEmulationMode
void EPWM_setEmulationMode(uint32_t base, EPWM_EmulationMode emulationMode)
EPWM_LINK_WITH_EPWM_16
@ EPWM_LINK_WITH_EPWM_16
link current ePWM with ePWM16
Definition: etpwm.h:404
EPWM_DigitalCompareEdgeFilterEdgeCount
EPWM_DigitalCompareEdgeFilterEdgeCount
Definition: etpwm.h:1677
EPWM_AQ_OUTPUT_HIGH_DOWN_CMPA
@ EPWM_AQ_OUTPUT_HIGH_DOWN_CMPA
Time base counter down equals COMPA and set output pins to high.
Definition: etpwm.h:640
EPWM_selectDigitalCompareTripInput
static void EPWM_selectDigitalCompareTripInput(uint32_t base, EPWM_DigitalCompareTripInput tripSource, EPWM_DigitalCompareType dcType)
Definition: etpwm.h:6394
EPWM_TripZoneDigitalCompareOutput
EPWM_TripZoneDigitalCompareOutput
Definition: etpwm.h:907
EPWM_TripZoneAdvancedEvent
EPWM_TripZoneAdvancedEvent
Definition: etpwm.h:967
EPWM_XCMP5_SHADOW3
@ EPWM_XCMP5_SHADOW3
XCMP5_SHADOW3.
Definition: etpwm.h:2054
EPWM_FED_LOAD_ON_CNTR_PERIOD
@ EPWM_FED_LOAD_ON_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:833
EPWM_clearADCTriggerFlag
static void EPWM_clearADCTriggerFlag(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6151
EPWM_COMP_LOAD_ON_CNTR_ZERO_PERIOD
@ EPWM_COMP_LOAD_ON_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:473
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP9
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP9
Sync-in source is ECAP9 sync-out signal.
Definition: etpwm.h:270
EPWM_XCMP1_SHADOW1
@ EPWM_XCMP1_SHADOW1
XCMP1_SHADOW1.
Definition: etpwm.h:2004
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP0
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP0
Sync-in source is ECAP0 sync-out signal.
Definition: etpwm.h:252
EPWM_XMINMAX_SHADOW1
@ EPWM_XMINMAX_SHADOW1
XMINMAX_SHADOW1.
Definition: etpwm.h:2022
EPWM_XCMP_ACTIVE
#define EPWM_XCMP_ACTIVE
< XCMP set = Active
Definition: etpwm.h:1966
HRPWM_setMEPControlMode
static void HRPWM_setMEPControlMode(uint32_t base, HRPWM_Channel channel, HRPWM_MEPCtrlMode mepCtrlMode)
Definition: etpwm.h:8638
EPWM_setDigitalCompareEventSyncMode
static void EPWM_setDigitalCompareEventSyncMode(uint32_t base, EPWM_DigitalCompareModule dcModule, EPWM_DigitalCompareEvent dcEvent, EPWM_DigitalCompareSyncMode syncMode)
Definition: etpwm.h:6896
EPWM_DB_POLARITY_ACTIVE_HIGH
@ EPWM_DB_POLARITY_ACTIVE_HIGH
DB polarity is not inverted.
Definition: etpwm.h:769
EPWM_setActionQualifierContSWForceShadowMode
static void EPWM_setActionQualifierContSWForceShadowMode(uint32_t base, EPWM_ActionQualifierContForce mode)
Definition: etpwm.h:3914
EPWM_DB_RED
@ EPWM_DB_RED
DB RED (Rising Edge Delay) mode.
Definition: etpwm.h:757
EPWM_LINK_WITH_EPWM_24
@ EPWM_LINK_WITH_EPWM_24
link current ePWM with ePWM24
Definition: etpwm.h:412
EPWM_ActionQualifierTriggerSource
EPWM_ActionQualifierTriggerSource
Definition: etpwm.h:534
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP1
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP1
Time base counter equals XCMP1.
Definition: etpwm.h:2076
HRPWM_MEP_PHASE_CTRL
@ HRPWM_MEP_PHASE_CTRL
TBPHSHR controls MEP edge.
Definition: etpwm.h:1872
EPWM_SYNC_OUT_SOURCE_M
#define EPWM_SYNC_OUT_SOURCE_M
Definition: etpwm.h:79
EPWM_COUNTER_COMPARE_D
@ EPWM_COUNTER_COMPARE_D
counter compare D
Definition: etpwm.h:457
EPWM_TZ_EVENT_DCXL_HIGH_DCXH_LOW
@ EPWM_TZ_EVENT_DCXL_HIGH_DCXH_LOW
Event when DCxL high DCxH low.
Definition: etpwm.h:927
EPWM_LINK_TBPRD
@ EPWM_LINK_TBPRD
link TBPRD:TBPRDHR registers
Definition: etpwm.h:430
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT29
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT29
Trip source is INPUTXBAR out29 signal.
Definition: etpwm.h:2274
EPWM_INT_TBCTR_D_CMPD
#define EPWM_INT_TBCTR_D_CMPD
time-base counter equal to CMPD when the timer is decrementing
Definition: etpwm.h:1212
EPWM_TZ_ADV_ACTION_EVENT_TZA_U
@ EPWM_TZ_ADV_ACTION_EVENT_TZA_U
TZ1 - TZ6, DCAEVT2, DCAEVT1 while counting up.
Definition: etpwm.h:975
EPWM_SOC_TBCTR_PERIOD
@ EPWM_SOC_TBCTR_PERIOD
Time-base counter equal to period.
Definition: etpwm.h:1274
EPWM_getGlobalLoadEventCount
static uint16_t EPWM_getGlobalLoadEventCount(uint32_t base)
Definition: etpwm.h:7870
EPWM_setTripZoneAdvDigitalCompareActionB
static void EPWM_setTripZoneAdvDigitalCompareActionB(uint32_t base, EPWM_TripZoneAdvDigitalCompareEvent tzAdvDCEvent, EPWM_TripZoneAdvancedAction tzAdvDCAction)
Definition: etpwm.h:5043
EPWM_AQ_OUTPUT_TOGGLE_ZERO
@ EPWM_AQ_OUTPUT_TOGGLE_ZERO
Time base counter equals zero and toggle the output pins.
Definition: etpwm.h:618
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM18
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM18
Sync-in source is EPWM18 sync-out signal.
Definition: etpwm.h:224
HRPWM_setDeadbandMEPEdgeSelect
static void HRPWM_setDeadbandMEPEdgeSelect(uint32_t base, HRPWM_MEPDeadBandEdgeMode mepDBEdge)
Definition: etpwm.h:9253
EPWM_DE_TRIP_SRC_CMPSSB4
@ EPWM_DE_TRIP_SRC_CMPSSB4
Trip source is CMPSSB4 signal.
Definition: etpwm.h:2308
EPWM_AQ_TRIGGER_EVENT_TRIG_DC_EVTFILT
@ EPWM_AQ_TRIGGER_EVENT_TRIG_DC_EVTFILT
Digital compare filter event.
Definition: etpwm.h:543
HRPWM_DB_MEP_CTRL_RED
@ HRPWM_DB_MEP_CTRL_RED
MEP controls Rising Edge Delay.
Definition: etpwm.h:1953
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM0
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM0
Sync-in source is EPWM0 sync-out signal.
Definition: etpwm.h:188
EPWM_SOC_TBCTR_D_CMPC
@ EPWM_SOC_TBCTR_D_CMPC
time-base counter equal to CMPC when the timer is decrementing
Definition: etpwm.h:1284
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT14
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT14
Trip source is INPUTXBAR out14 signal.
Definition: etpwm.h:2244
EPWM_setOneShotSyncOutTrigger
static void EPWM_setOneShotSyncOutTrigger(uint32_t base, EPWM_OneShotSyncOutTrigger trigger)
Definition: etpwm.h:2678
EPWM_AQ_OUTPUT_ON_TIMEBASE_DOWN_CMPA
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_DOWN_CMPA
Time base counter down equals COMPA.
Definition: etpwm.h:561
EPWM_ActionQualifierEventAction
EPWM_ActionQualifierEventAction
Definition: etpwm.h:610
EPWM_disableXCMPMode
static void EPWM_disableXCMPMode(uint32_t base)
Definition: etpwm.h:9359
EPWM_setDigitalCompareWindowOffset
static void EPWM_setDigitalCompareWindowOffset(uint32_t base, uint16_t windowOffsetCount)
Definition: etpwm.h:6741
EPWM_XCMP_6_CMPA
@ EPWM_XCMP_6_CMPA
Allocate XCMP1 - XCMP6 registers to CMPA.
Definition: etpwm.h:2114
EPWM_SignalParams::tbClkDiv
EPWM_ClockDivider tbClkDiv
Time Base Counter Clock Divider.
Definition: etpwm.h:2395
EPWM_AQ_OUTPUT_NO_CHANGE
@ EPWM_AQ_OUTPUT_NO_CHANGE
No change in the output pins.
Definition: etpwm.h:584
EPWM_DE_TRIP_SRC_CMPSSA0
@ EPWM_DE_TRIP_SRC_CMPSSA0
Trip source is CMPSSA0 signal.
Definition: etpwm.h:2280
EPWM_AQ_TRIGGER_EVENT_TRIG_DCB_1
@ EPWM_AQ_TRIGGER_EVENT_TRIG_DCB_1
Digital compare event B 1.
Definition: etpwm.h:537
HRPWM_setHiResRisingEdgeDelay
static void HRPWM_setHiResRisingEdgeDelay(uint32_t base, uint16_t hrRedCount)
Definition: etpwm.h:9154
EPWM_XTBPRD_SHADOW3
@ EPWM_XTBPRD_SHADOW3
XTBPRD_SHADOW3.
Definition: etpwm.h:2062
EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG1
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG1
Sync-in source is FSI-RX1 RX Trigger 1 signal.
Definition: etpwm.h:290
HRPWM_LOAD_ON_CNTR_ZERO
@ HRPWM_LOAD_ON_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:1885
EPWM_setMinDeadBandDelay
static void EPWM_setMinDeadBandDelay(uint32_t base, uint32_t block, uint32_t delay)
Definition: etpwm.h:8319
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM27
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM27
Sync-in source is EPWM27 sync-out signal.
Definition: etpwm.h:242
EPWM_XCMP3_SHADOW3
@ EPWM_XCMP3_SHADOW3
XCMP3_SHADOW3.
Definition: etpwm.h:2050
EPWM_LINK_WITH_EPWM_12
@ EPWM_LINK_WITH_EPWM_12
link current ePWM with ePWM12
Definition: etpwm.h:400
HRPWM_setChannelBOutputPath
static void HRPWM_setChannelBOutputPath(uint32_t base, HRPWM_ChannelBOutput outputOnB)
Definition: etpwm.h:8736
EPWM_enableInterrupt
static void EPWM_enableInterrupt(uint32_t base)
Definition: etpwm.h:5473
EPWM_disableTripZoneAdvAction
static void EPWM_disableTripZoneAdvAction(uint32_t base)
Definition: etpwm.h:4848
EPWM_DB_INPUT_EPWMA
#define EPWM_DB_INPUT_EPWMA
Input signal is ePWMA.
Definition: etpwm.h:780
EPWM_setDeadBandCounterClock
static void EPWM_setDeadBandCounterClock(uint32_t base, EPWM_DeadBandClockMode clockMode)
Definition: etpwm.h:4472
EPWM_OSHT_SYNC_OUT_TRIG_RELOAD
@ EPWM_OSHT_SYNC_OUT_TRIG_RELOAD
Trigger is OSHT reload.
Definition: etpwm.h:322
EPWM_AQ_OUTPUT_HIGH_ZERO
@ EPWM_AQ_OUTPUT_HIGH_ZERO
Time base counter equals zero and set output pins to high.
Definition: etpwm.h:616
EPWM_GL_LOAD_PULSE_SYNC_OR_CNTR_PERIOD
@ EPWM_GL_LOAD_PULSE_SYNC_OR_CNTR_PERIOD
load on sync event or when counter is equal to period
Definition: etpwm.h:1545
HRPWM_ChannelBOutput
HRPWM_ChannelBOutput
Definition: etpwm.h:1901
EPWM_LINK_WITH_EPWM_2
@ EPWM_LINK_WITH_EPWM_2
link current ePWM with ePWM2
Definition: etpwm.h:390
EPWM_enableIllegalComboLogic
static void EPWM_enableIllegalComboLogic(uint32_t base, uint32_t block)
Definition: etpwm.h:8353
HRPWM_disablePeriodControl
static void HRPWM_disablePeriodControl(uint32_t base)
Definition: etpwm.h:8823
EPWM_DB_OUTPUT_A
@ EPWM_DB_OUTPUT_A
DB output is ePWMA.
Definition: etpwm.h:745
EPWM_TZ_CBC_PULSE_CLR_CNTR_PERIOD
@ EPWM_TZ_CBC_PULSE_CLR_CNTR_PERIOD
Clear CBC pulse when counter equals period.
Definition: etpwm.h:1126
EPWM_TripZoneDigitalCompareOutputEvent
EPWM_TripZoneDigitalCompareOutputEvent
Definition: etpwm.h:921
EPWM_SHADOW_LOAD_MODE_SYNC
@ EPWM_SHADOW_LOAD_MODE_SYNC
shadow to active load occurs only when a SYNC occurs
Definition: etpwm.h:367
EPWM_setTimeBaseCounterMode
static void EPWM_setTimeBaseCounterMode(uint32_t base, EPWM_TimeBaseCountMode counterMode)
Definition: etpwm.h:2788
EPWM_PeriodLoadMode
EPWM_PeriodLoadMode
Definition: etpwm.h:332
EPWM_SignalParams::sysClkInHz
Float32 sysClkInHz
SYSCLK Frequency(in Hz)
Definition: etpwm.h:2393
EPWM_CurrentLink
EPWM_CurrentLink
Definition: etpwm.h:387
EPWM_setDeadBandDelayPolarity
static void EPWM_setDeadBandDelayPolarity(uint32_t base, EPWM_DeadBandDelayMode delayMode, EPWM_DeadBandPolarity polarity)
Definition: etpwm.h:4179
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM15
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM15
Sync-in source is EPWM15 sync-out signal.
Definition: etpwm.h:218
EPWM_HSCLOCK_DIVIDER_1
@ EPWM_HSCLOCK_DIVIDER_1
Divide clock by 1.
Definition: etpwm.h:167
EPWM_setChopperFirstPulseWidth
static void EPWM_setChopperFirstPulseWidth(uint32_t base, uint16_t firstPulseWidth)
Definition: etpwm.h:4662
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM4
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM4
Sync-in source is EPWM4 sync-out signal.
Definition: etpwm.h:196
EPWM_HSCLOCK_DIVIDER_14
@ EPWM_HSCLOCK_DIVIDER_14
Divide clock by 14.
Definition: etpwm.h:174
EPWM_AQ_OUTPUT_LOW_DOWN_T2
@ EPWM_AQ_OUTPUT_LOW_DOWN_T2
T2 event on count down and set output pins to low.
Definition: etpwm.h:697
EPWM_DCxxTRIPSEL
#define EPWM_DCxxTRIPSEL
Definition: etpwm.h:2374
HRPWM_MEPCtrlMode
HRPWM_MEPCtrlMode
Definition: etpwm.h:1868
EPWM_DiodeEmulationSignal
EPWM_DiodeEmulationSignal
Definition: etpwm.h:2322
EPWM_REGISTER_GROUP_DIGITAL_COMPARE
@ EPWM_REGISTER_GROUP_DIGITAL_COMPARE
Digital compare group.
Definition: etpwm.h:1708
EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG0
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG0
Sync-in source is FSI-RX3 RX Trigger 0 signal.
Definition: etpwm.h:304
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP8
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP8
Time base counter equals XCMP8.
Definition: etpwm.h:2090
EPWM_XCMP_7_CMPA
@ EPWM_XCMP_7_CMPA
Allocate XCMP1 - XCMP7 registers to CMPA.
Definition: etpwm.h:2116
EPWM_disableFallingEdgeDelayCountShadowLoadMode
static void EPWM_disableFallingEdgeDelayCountShadowLoadMode(uint32_t base)
Definition: etpwm.h:4443
EPWM_clearEventTriggerInterruptFlag
static void EPWM_clearEventTriggerInterruptFlag(uint32_t base)
Definition: etpwm.h:5663
EPWM_DigitalCompareTripInput
EPWM_DigitalCompareTripInput
Definition: etpwm.h:1321
EPWM_AQ_SW_OUTPUT_LOW
@ EPWM_AQ_SW_OUTPUT_LOW
Set output pins to low.
Definition: etpwm.h:599
EPWM_enableDigitalCompareTripCombinationInput
static void EPWM_enableDigitalCompareTripCombinationInput(uint32_t base, uint16_t tripInput, EPWM_DigitalCompareType dcType)
Definition: etpwm.h:7362
EPWM_SyncInPulseSource
EPWM_SyncInPulseSource
Definition: etpwm.h:184
EPWM_AQ_OUTPUT_TOGGLE_DOWN_T2
@ EPWM_AQ_OUTPUT_TOGGLE_DOWN_T2
T2 event on count down and toggle the output pins.
Definition: etpwm.h:701
EPWM_selectMinimumDeadBandReferenceSignal
static void EPWM_selectMinimumDeadBandReferenceSignal(uint32_t base, uint32_t block, uint32_t referenceSignal)
Definition: etpwm.h:8254
EPWM_DeadBandControlLoadMode
EPWM_DeadBandControlLoadMode
Definition: etpwm.h:793
EPWM_ActionQualifierSWOutput
EPWM_ActionQualifierSWOutput
Definition: etpwm.h:597
EPWM_setValleyDelayDivider
static void EPWM_setValleyDelayDivider(uint32_t base, EPWM_ValleyDelayMode delayMode)
Definition: etpwm.h:7645
EPWM_AQ_OUTPUT_ON_T1_COUNT_UP
@ EPWM_AQ_OUTPUT_ON_T1_COUNT_UP
T1 event on count up.
Definition: etpwm.h:567
EPWM_clearTripZoneFlag
static void EPWM_clearTripZoneFlag(uint32_t base, uint16_t tzFlags)
Definition: etpwm.h:5281
HRPWM_setFallingEdgeDelayLoadMode
static void HRPWM_setFallingEdgeDelayLoadMode(uint32_t base, HRPWM_LoadMode loadEvent)
Definition: etpwm.h:9313
EPWM_ADCStartOfConversionType
EPWM_ADCStartOfConversionType
Definition: etpwm.h:1256
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT28
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT28
Trip source is INPUTXBAR out28 signal.
Definition: etpwm.h:2272
EPWM_XCMP_2_CMPA
@ EPWM_XCMP_2_CMPA
Allocate XCMP1 - XCMP2 registers to CMPA.
Definition: etpwm.h:2106
EPWM_setValleyTriggerSource
static void EPWM_setValleyTriggerSource(uint32_t base, EPWM_ValleyTriggerSource trigger)
Definition: etpwm.h:7518
EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SHIFT_1_SW_DELAY
@ EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SHIFT_1_SW_DELAY
Definition: etpwm.h:1642
EPWM_setCountModeAfterSync
static void EPWM_setCountModeAfterSync(uint32_t base, EPWM_SyncCountMode mode)
Definition: etpwm.h:2440
EPWM_setTripZoneAdvAction
static void EPWM_setTripZoneAdvAction(uint32_t base, EPWM_TripZoneAdvancedEvent tzAdvEvent, EPWM_TripZoneAdvancedAction tzAdvAction)
Definition: etpwm.h:4941
EPWM_GL_LOAD_PULSE_SYNC
@ EPWM_GL_LOAD_PULSE_SYNC
load on sync event
Definition: etpwm.h:1541
EPWM_disableDigitalCompareWindowInverseMode
static void EPWM_disableDigitalCompareWindowInverseMode(uint32_t base)
Definition: etpwm.h:6487
EPWM_GL_LOAD_PULSE_SYNC_OR_CNTR_ZERO
@ EPWM_GL_LOAD_PULSE_SYNC_OR_CNTR_ZERO
load on sync event or when counter is equal to zero
Definition: etpwm.h:1543
EPWM_setChopperDutyCycle
static void EPWM_setChopperDutyCycle(uint32_t base, uint16_t dutyCycleCount)
Definition: etpwm.h:4599
EPWM_INT_TBCTR_ETINTMIX
#define EPWM_INT_TBCTR_ETINTMIX
Time-base counter based on mix events.
Definition: etpwm.h:1196
EPWM_XCMP5_SHADOW1
@ EPWM_XCMP5_SHADOW1
XCMP5_SHADOW1.
Definition: etpwm.h:2012
EPWM_LINK_WITH_EPWM_18
@ EPWM_LINK_WITH_EPWM_18
link current ePWM with ePWM18
Definition: etpwm.h:406
EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_CMPA
@ EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_CMPA
Time base counter down equals COMPA and no change in the output pins.
Definition: etpwm.h:636
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT25
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT25
Trip source is INPUTXBAR out25 signal.
Definition: etpwm.h:2266
EPWM_XCMP_XLOADCTL_SHDWLEVEL_0
@ EPWM_XCMP_XLOADCTL_SHDWLEVEL_0
Only Active register is available.
Definition: etpwm.h:2163
EPWM_setInterruptEventCount
static void EPWM_setInterruptEventCount(uint32_t base, uint16_t eventCount)
Definition: etpwm.h:5610
EPWM_nobypassDiodeEmulationLogic
static void EPWM_nobypassDiodeEmulationLogic(uint32_t base)
Definition: etpwm.h:10050
EPWM_CLOCK_DIVIDER_8
@ EPWM_CLOCK_DIVIDER_8
Divide clock by 8.
Definition: etpwm.h:152
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT3
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT3
Trip source is INPUTXBAR out3 signal.
Definition: etpwm.h:2222
EPWM_TZ_ADV_ACTION_EVENT_TZA_D
@ EPWM_TZ_ADV_ACTION_EVENT_TZA_D
TZ1 - TZ6, DCAEVT2, DCAEVT1 while counting down.
Definition: etpwm.h:973
EPWM_getSyncStatus
static bool EPWM_getSyncStatus(uint32_t base)
Definition: etpwm.h:2973
EPWM_TZ_ADV_ACTION_LOW
@ EPWM_TZ_ADV_ACTION_LOW
low voltage state
Definition: etpwm.h:989
EPWM_COMP_LOAD_ON_SYNC_CNTR_PERIOD
@ EPWM_COMP_LOAD_ON_SYNC_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:479
EPWM_COUNTER_MODE_UP
@ EPWM_COUNTER_MODE_UP
Up - count mode.
Definition: etpwm.h:347
EPWM_SOC_TBCTR_U_CMPD
@ EPWM_SOC_TBCTR_U_CMPD
time-base counter equal to CMPD when the timer is incrementing
Definition: etpwm.h:1288
EPWM_setADCTriggerSource
static void EPWM_setADCTriggerSource(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType, EPWM_ADCStartOfConversionSource socSource, uint16_t mixedSource)
Definition: etpwm.h:5922
EPWM_disableSplitXCMP
static void EPWM_disableSplitXCMP(uint32_t base)
Definition: etpwm.h:9403
EPWM_enableMinimumDeadBand
static void EPWM_enableMinimumDeadBand(uint32_t base, uint32_t block)
Definition: etpwm.h:8092
EPWM_HSCLOCK_DIVIDER_6
@ EPWM_HSCLOCK_DIVIDER_6
Divide clock by 6.
Definition: etpwm.h:170
EPWM_XCMP_1_CMPA
@ EPWM_XCMP_1_CMPA
Allocate XCMP1 register to CMPA.
Definition: etpwm.h:2104
EPWM_getTripZoneFlagStatus
static uint16_t EPWM_getTripZoneFlagStatus(uint32_t base)
Definition: etpwm.h:5154
EPWM_REGISTER_GROUP_GLOBAL_LOAD
@ EPWM_REGISTER_GROUP_GLOBAL_LOAD
Global load register group.
Definition: etpwm.h:1705
EPWM_GL_LOAD_PULSE_CNTR_PERIOD
@ EPWM_GL_LOAD_PULSE_CNTR_PERIOD
load when counter is equal to period
Definition: etpwm.h:1537
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP2
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP2
Time base counter equals XCMP2.
Definition: etpwm.h:2078
EPWM_AQ_OUTPUT_NO_CHANGE_UP_T2
@ EPWM_AQ_OUTPUT_NO_CHANGE_UP_T2
T2 event on count up and no change in the output pins.
Definition: etpwm.h:687
EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG0
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG0
Sync-in source is FSI-RX0 RX Trigger 0 signal.
Definition: etpwm.h:280
EPWM_getTimeBasePeriod
static uint16_t EPWM_getTimeBasePeriod(uint32_t base)
Definition: etpwm.h:3090
EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG2
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG2
Sync-in source is FSI-RX0 RX Trigger 2 signal.
Definition: etpwm.h:284
EPWM_setValleySWDelayValue
static void EPWM_setValleySWDelayValue(uint32_t base, uint16_t delayOffsetValue)
Definition: etpwm.h:7624
EPWM_DC_MODULE_A
@ EPWM_DC_MODULE_A
Digital Compare Module A.
Definition: etpwm.h:1449
EPWM_AQ_OUTPUT_A
@ EPWM_AQ_OUTPUT_A
ePWMxA output
Definition: etpwm.h:715
EPWM_GlobalLoadTrigger
EPWM_GlobalLoadTrigger
Definition: etpwm.h:1533
EPWM_HSCLOCK_DIVIDER_10
@ EPWM_HSCLOCK_DIVIDER_10
Divide clock by 10.
Definition: etpwm.h:172
EPWM_LINK_WITH_EPWM_0
@ EPWM_LINK_WITH_EPWM_0
link current ePWM with ePWM0
Definition: etpwm.h:388
EPWM_COUNT_MODE_DOWN_AFTER_SYNC
@ EPWM_COUNT_MODE_DOWN_AFTER_SYNC
Count down after sync event.
Definition: etpwm.h:137
EPWM_DC_WINDOW_START_TBCTR_ZERO
@ EPWM_DC_WINDOW_START_TBCTR_ZERO
Time base counter equals zero.
Definition: etpwm.h:1389
EPWM_AQ_OUTPUT_TOGGLE
@ EPWM_AQ_OUTPUT_TOGGLE
Toggle the output pins.
Definition: etpwm.h:587
EPWM_DigitalCompareCBCLatchClearEvent
EPWM_DigitalCompareCBCLatchClearEvent
Definition: etpwm.h:1517
EPWM_AQ_TRIGGER_EVENT_TRIG_DCA_1
@ EPWM_AQ_TRIGGER_EVENT_TRIG_DCA_1
Digital compare event A 1.
Definition: etpwm.h:535
EPWM_XCMP_XLOADCTL_SHDWBUFPTR_TWO
@ EPWM_XCMP_XLOADCTL_SHDWBUFPTR_TWO
Shadow buffer 2 is in use.
Definition: etpwm.h:2186
EPWM_disableDiodeEmulationMonitorModeControl
static void EPWM_disableDiodeEmulationMonitorModeControl(uint32_t base)
Definition: etpwm.h:10145
EPWM_AQ_OUTPUT_HIGH_DOWN_T1
@ EPWM_AQ_OUTPUT_HIGH_DOWN_T1
T1 event on count down and set output pins to high.
Definition: etpwm.h:683
EPWM_XCMP3_SHADOW1
@ EPWM_XCMP3_SHADOW1
XCMP3_SHADOW1.
Definition: etpwm.h:2008
EPWM_getDigitalCompareCaptureStatus
static bool EPWM_getDigitalCompareCaptureStatus(uint32_t base)
Definition: etpwm.h:7309
EPWM_VALLEY_TRIGGER_EVENT_SOFTWARE
@ EPWM_VALLEY_TRIGGER_EVENT_SOFTWARE
Valley capture trigged by software.
Definition: etpwm.h:1598
EPWM_setGlobalLoadOneShotLatch
static void EPWM_setGlobalLoadOneShotLatch(uint32_t base)
Definition: etpwm.h:7940
EPWM_AQ_SW_DISABLED
@ EPWM_AQ_SW_DISABLED
Software forcing disabled.
Definition: etpwm.h:598
EPWM_XMINMAX_SHADOW2
@ EPWM_XMINMAX_SHADOW2
XMINMAX_SHADOW2.
Definition: etpwm.h:2043
EPWM_ADCStartOfConversionSource
EPWM_ADCStartOfConversionSource
Definition: etpwm.h:1268
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT23
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT23
Trip source is INPUTXBAR out23 signal.
Definition: etpwm.h:2262
EPWM_disableDigitalCompareTripCombinationInput
static void EPWM_disableDigitalCompareTripCombinationInput(uint32_t base, uint16_t tripInput, EPWM_DigitalCompareType dcType)
Definition: etpwm.h:7411
HRPWM_PWMSYNC_SOURCE_COMPD_DOWN
@ HRPWM_PWMSYNC_SOURCE_COMPD_DOWN
Counter equals COMPD when counting down.
Definition: etpwm.h:1927
EPWM_EmulationMode
EPWM_EmulationMode
Definition: etpwm.h:120
EPWM_AQ_TRIGGER_EVENT_TRIG_TZ_2
@ EPWM_AQ_TRIGGER_EVENT_TRIG_TZ_2
Trip zone 2.
Definition: etpwm.h:540
EPWM_DC_WINDOW_SOURCE_DCBEVT2
@ EPWM_DC_WINDOW_SOURCE_DCBEVT2
DC filter signal source is DCBEVT2.
Definition: etpwm.h:1434
EPWM_INT_TBCTR_U_CMPC
#define EPWM_INT_TBCTR_U_CMPC
time-base counter equal to CMPC when the timer is incrementing
Definition: etpwm.h:1200
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM25
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM25
Sync-in source is EPWM25 sync-out signal.
Definition: etpwm.h:238
EPWM_DC_EDGEFILT_EDGECNT_2
@ EPWM_DC_EDGEFILT_EDGECNT_2
Digital Compare Edge filter edge count = 3.
Definition: etpwm.h:1683
EPWM_INT_TBCTR_D_CMPB
#define EPWM_INT_TBCTR_D_CMPB
time-base counter equal to CMPB when the timer is decrementing
Definition: etpwm.h:1210
EPWM_XCMP_ALLOC_CMPA
EPWM_XCMP_ALLOC_CMPA
Values that can be passed to EPWM_allocAXCMP() as the alloctype parameter.
Definition: etpwm.h:2100
EPWM_LINK_WITH_EPWM_20
@ EPWM_LINK_WITH_EPWM_20
link current ePWM with ePWM20
Definition: etpwm.h:408
EPWM_RED_LOAD_ON_CNTR_ZERO_PERIOD
@ EPWM_RED_LOAD_ON_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:817
EPWM_AQ_TRIGGER_EVENT_TRIG_DCA_2
@ EPWM_AQ_TRIGGER_EVENT_TRIG_DCA_2
Digital compare event A 2.
Definition: etpwm.h:536
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP6
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP6
Time base counter equals XCMP6.
Definition: etpwm.h:2086
HRPWM_setSyncPulseSource
static void HRPWM_setSyncPulseSource(uint32_t base, HRPWM_SyncPulseSource syncPulseSource)
Definition: etpwm.h:8899
HRPWM_setHiResTimeBasePeriod
static void HRPWM_setHiResTimeBasePeriod(uint32_t base, uint16_t hrPeriodCount)
Definition: etpwm.h:8541
EPWM_LINK_WITH_EPWM_30
@ EPWM_LINK_WITH_EPWM_30
link current ePWM with ePWM30
Definition: etpwm.h:418
EPWM_enableDigitalCompareADCTrigger
static void EPWM_enableDigitalCompareADCTrigger(uint32_t base, EPWM_DigitalCompareModule dcModule)
Definition: etpwm.h:6941
EPWM_DC_TYPE_DCAL
@ EPWM_DC_TYPE_DCAL
Digital Compare A Low.
Definition: etpwm.h:1309
EPWM_CounterCompareModule
EPWM_CounterCompareModule
Definition: etpwm.h:453
EPWM_SignalParams::tbHSClkDiv
EPWM_HSClockDivider tbHSClkDiv
Time Base Counter HS Clock Divider.
Definition: etpwm.h:2396
EPWM_XTBPRD_SHADOW1
@ EPWM_XTBPRD_SHADOW1
XTBPRD_SHADOW1.
Definition: etpwm.h:2020
EPWM_OSHT_SYNC_OUT_TRIG_SYNC
@ EPWM_OSHT_SYNC_OUT_TRIG_SYNC
Trigger is OSHT sync.
Definition: etpwm.h:321
HRPWM_CounterCompareModule
HRPWM_CounterCompareModule
Definition: etpwm.h:1937
EPWM_TZ_EVENT_DCXL_LOW
@ EPWM_TZ_EVENT_DCXL_LOW
Event when DCxL low.
Definition: etpwm.h:925
EPWM_TZ_ADV_ACTION_EVENT_DCxEVT1_D
@ EPWM_TZ_ADV_ACTION_EVENT_DCxEVT1_D
Digital Compare event A/B 1 while counting down.
Definition: etpwm.h:1006
HRPWM_setPhaseShift
static void HRPWM_setPhaseShift(uint32_t base, uint32_t phaseCount)
Definition: etpwm.h:8476
EPWM_DigitalCompareSyncMode
EPWM_DigitalCompareSyncMode
Definition: etpwm.h:1489
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT15
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT15
Trip source is INPUTXBAR out15 signal.
Definition: etpwm.h:2246
EPWM_setTimeBaseCounter
static void EPWM_setTimeBaseCounter(uint32_t base, uint16_t count)
Definition: etpwm.h:2415
EPWM_COUNTER_COMPARE_A
@ EPWM_COUNTER_COMPARE_A
counter compare A
Definition: etpwm.h:454
EPWM_DC_EDGEFILT_MODE_BOTH
@ EPWM_DC_EDGEFILT_MODE_BOTH
Definition: etpwm.h:1667
EPWM_LINK_WITH_EPWM_13
@ EPWM_LINK_WITH_EPWM_13
link current ePWM with ePWM13
Definition: etpwm.h:401
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM16
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM16
Sync-in source is EPWM16 sync-out signal.
Definition: etpwm.h:220
EPWM_SignalParams
Definition: etpwm.h:2388
EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPB
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPB
Time base counter up equals COMPB.
Definition: etpwm.h:563
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP4
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP4
Sync-in source is ECAP4 sync-out signal.
Definition: etpwm.h:260
EPWM_XCMP1_SHADOW2
@ EPWM_XCMP1_SHADOW2
XCMP1_SHADOW2.
Definition: etpwm.h:2025
EPWM_enableTripZoneSignals
static void EPWM_enableTripZoneSignals(uint32_t base, uint32_t tzSignal)
Definition: etpwm.h:4715
EPWM_DC_TRIP_TRIPIN13
@ EPWM_DC_TRIP_TRIPIN13
Trip 13.
Definition: etpwm.h:1334
EPWM_DC_EDGEFILT_EDGECNT_7
@ EPWM_DC_EDGEFILT_EDGECNT_7
Definition: etpwm.h:1693
EPWM_AQ_OUTPUT_B
@ EPWM_AQ_OUTPUT_B
ePWMxB output
Definition: etpwm.h:716
EPWM_REGISTER_GROUP_TRIP_ZONE_CLEAR
@ EPWM_REGISTER_GROUP_TRIP_ZONE_CLEAR
Trip zone clear group.
Definition: etpwm.h:1707
EPWM_AQ_OUTPUT_ON_TIMEBASE_PERIOD
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_PERIOD
Time base counter equals period.
Definition: etpwm.h:557
EPWM_disableDigitalCompareBlankingWindow
static void EPWM_disableDigitalCompareBlankingWindow(uint32_t base)
Definition: etpwm.h:6444
EPWM_SOC_TBCTR_ZERO
@ EPWM_SOC_TBCTR_ZERO
Time-base counter equal to zero.
Definition: etpwm.h:1272
EPWM_LINK_WITH_EPWM_29
@ EPWM_LINK_WITH_EPWM_29
link current ePWM with ePWM29
Definition: etpwm.h:417
EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SHIFT_4_SW_DELAY
@ EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SHIFT_4_SW_DELAY
Definition: etpwm.h:1648
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT31
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT31
Trip source is INPUTXBAR out31 signal.
Definition: etpwm.h:2278
EPWM_LINK_WITH_EPWM_14
@ EPWM_LINK_WITH_EPWM_14
link current ePWM with ePWM14
Definition: etpwm.h:402
EPWM_setActionQualifierT1TriggerSource
static void EPWM_setActionQualifierT1TriggerSource(uint32_t base, EPWM_ActionQualifierTriggerSource trigger)
Definition: etpwm.h:3581
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM17
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM17
Sync-in source is EPWM17 sync-out signal.
Definition: etpwm.h:222
EPWM_MINDB_BLOCK_A
#define EPWM_MINDB_BLOCK_A
Values that can be passed to.
Definition: etpwm.h:1720
EPWM_ActionQualifierOutputEvent
EPWM_ActionQualifierOutputEvent
Definition: etpwm.h:553
EPWM_AQ_LOAD_ON_SYNC_CNTR_PERIOD
@ EPWM_AQ_LOAD_ON_SYNC_CNTR_PERIOD
load on sync or when counter equals period
Definition: etpwm.h:520
EPWM_XCMP_XLOADCTL_LOADMODE_LOADMULTIPLE
@ EPWM_XCMP_XLOADCTL_LOADMODE_LOADMULTIPLE
Load mode is LOADMULTIPLE.
Definition: etpwm.h:2150
EPWM_DC_EDGEFILT_EDGECNT_0
@ EPWM_DC_EDGEFILT_EDGECNT_0
Digital Compare Edge filter edge count = 0.
Definition: etpwm.h:1679
EPWM_AQ_LOAD_ON_CNTR_ZERO
@ EPWM_AQ_LOAD_ON_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:510
EPWM_DC_TYPE_DCAH
@ EPWM_DC_TYPE_DCAH
Digital Compare A High.
Definition: etpwm.h:1308
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM1
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM1
Sync-in source is EPWM1 sync-out signal.
Definition: etpwm.h:190
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM31
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM31
Sync-in source is EPWM31 sync-out signal.
Definition: etpwm.h:250
EPWM_XCMP8_SHADOW3
@ EPWM_XCMP8_SHADOW3
XCMP8_SHADOW3.
Definition: etpwm.h:2060
HRPWM_OUTPUT_ON_B_INV_A
@ HRPWM_OUTPUT_ON_B_INV_A
Definition: etpwm.h:1905
EPWM_setGlobalLoadTrigger
static void EPWM_setGlobalLoadTrigger(uint32_t base, EPWM_GlobalLoadTrigger loadTrigger)
Definition: etpwm.h:7813
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM3
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM3
Sync-in source is EPWM3 sync-out signal.
Definition: etpwm.h:194
EPWM_TZ_ACTION_EVENT_TZB
@ EPWM_TZ_ACTION_EVENT_TZB
TZ1 - TZ6, DCBEVT2, DCBEVT1.
Definition: etpwm.h:939
EPWM_getEventTriggerInterruptStatus
static bool EPWM_getEventTriggerInterruptStatus(uint32_t base)
Definition: etpwm.h:5642
EPWM_setXCMPActionQualifierAction
static void EPWM_setXCMPActionQualifierAction(uint32_t base, uint32_t shadowset, EPWM_ActionQualifierOutputModule epwmOutput, EPWM_ActionQualifierOutput output, EPWM_XCMPActionQualifierOutputEvent event)
Definition: etpwm.h:9551
EPWM_COMP_LOAD_ON_SYNC_CNTR_ZERO_PERIOD
@ EPWM_COMP_LOAD_ON_SYNC_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:481
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP4
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP4
Time base counter equals XCMP4.
Definition: etpwm.h:2082
EPWM_CLOCK_DIVIDER_64
@ EPWM_CLOCK_DIVIDER_64
Divide clock by 64.
Definition: etpwm.h:155
EPWM_AQ_OUTPUT_TOGGLE_UP_T1
@ EPWM_AQ_OUTPUT_TOGGLE_UP_T1
T1 event on count up and toggle the output pins.
Definition: etpwm.h:677
EPWM_selectDiodeEmulationTripSignal
static void EPWM_selectDiodeEmulationTripSignal(uint32_t base, uint32_t channel, uint32_t signal)
Definition: etpwm.h:10015
EPWM_allocAXCMP
static void EPWM_allocAXCMP(uint32_t base, EPWM_XCMP_ALLOC_CMPA alloctype)
Definition: etpwm.h:9436
EPWM_LINK_WITH_EPWM_3
@ EPWM_LINK_WITH_EPWM_3
link current ePWM with ePWM3
Definition: etpwm.h:391
EPWM_SignalParams::tbCtrMode
EPWM_TimeBaseCountMode tbCtrMode
Time Base Counter Mode.
Definition: etpwm.h:2394
EPWM_setPhaseShift
static void EPWM_setPhaseShift(uint32_t base, uint16_t phaseCount)
Definition: etpwm.h:3041
EPWM_enableDiodeEmulationMode
static void EPWM_enableDiodeEmulationMode(uint32_t base)
Definition: etpwm.h:9800
EPWM_DigitalCompareType
EPWM_DigitalCompareType
Definition: etpwm.h:1307
EPWM_COMP_LOAD_ON_SYNC_ONLY
@ EPWM_COMP_LOAD_ON_SYNC_ONLY
load on sync only
Definition: etpwm.h:483
EPWM_REGISTER_GROUP_HR
@ EPWM_REGISTER_GROUP_HR
HRPWM register group.
Definition: etpwm.h:1704
EPWM_AQ_OUTPUT_TOGGLE_DOWN_CMPA
@ EPWM_AQ_OUTPUT_TOGGLE_DOWN_CMPA
Time base counter down equals COMPA and toggle the output pins.
Definition: etpwm.h:642
EPWM_LINK_WITH_EPWM_21
@ EPWM_LINK_WITH_EPWM_21
link current ePWM with ePWM21
Definition: etpwm.h:409
EPWM_forceEventTriggerInterrupt
static void EPWM_forceEventTriggerInterrupt(uint32_t base)
Definition: etpwm.h:5811
EPWM_selectXbarInput
static void EPWM_selectXbarInput(uint32_t base, uint32_t block, uint32_t xbarInput)
Definition: etpwm.h:8412
EPWM_setDiodeEmulationMode
static void EPWM_setDiodeEmulationMode(uint32_t base, EPWM_DiodeEmulationMode mode)
Definition: etpwm.h:9855
EPWM_DeadBandOutput
EPWM_DeadBandOutput
Definition: etpwm.h:744
EPWM_TZ_ADV_ACTION_EVENT_DCxEVT2_U
@ EPWM_TZ_ADV_ACTION_EVENT_DCxEVT2_U
Digital Compare event A/B 2 while counting up.
Definition: etpwm.h:1008
EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG1
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG1
Sync-in source is FSI-RX0 RX Trigger 1 signal.
Definition: etpwm.h:282
EPWM_EMULATION_STOP_AFTER_FULL_CYCLE
@ EPWM_EMULATION_STOP_AFTER_FULL_CYCLE
Stop when counter completes whole cycle.
Definition: etpwm.h:124
EPWM_TZ_ADV_ACTION_EVENT_TZB_D
@ EPWM_TZ_ADV_ACTION_EVENT_TZB_D
TZ1 - TZ6, DCBEVT2, DCBEVT1 while counting down.
Definition: etpwm.h:969
EPWM_disableValleyHWDelay
static void EPWM_disableValleyHWDelay(uint32_t base)
Definition: etpwm.h:7601
EPWM_SOC_TBCTR_MIXED_EVENT
@ EPWM_SOC_TBCTR_MIXED_EVENT
Time-base counter equal to zero or period.
Definition: etpwm.h:1276
EPWM_setXCMPShadowBufPtrLoadOnce
static void EPWM_setXCMPShadowBufPtrLoadOnce(uint32_t base, EPWM_XCMP_XLOADCTL_SHDWBUFPTR ptr)
Definition: etpwm.h:9727
EPWM_setClockPrescaler
static void EPWM_setClockPrescaler(uint32_t base, EPWM_ClockDivider prescaler, EPWM_HSClockDivider highSpeedPrescaler)
Definition: etpwm.h:2486
EPWM_AQ_OUTPUT_TOGGLE_UP_CMPB
@ EPWM_AQ_OUTPUT_TOGGLE_UP_CMPB
Time base counter up equals COMPB and toggle the output pins.
Definition: etpwm.h:650
EPWM_getDigitalCompareBlankingWindowLengthCount
static uint16_t EPWM_getDigitalCompareBlankingWindowLengthCount(uint32_t base)
Definition: etpwm.h:6803
EPWM_AQ_OUTPUT_LOW_UP_CMPB
@ EPWM_AQ_OUTPUT_LOW_UP_CMPB
Time base counter up equals COMPB and set output pins to low.
Definition: etpwm.h:646
EPWM_RED_LOAD_ON_CNTR_ZERO
@ EPWM_RED_LOAD_ON_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:813
EPWM_HSCLOCK_DIVIDER_8
@ EPWM_HSCLOCK_DIVIDER_8
Divide clock by 8.
Definition: etpwm.h:171
EPWM_TZ_DC_OUTPUT_A2
@ EPWM_TZ_DC_OUTPUT_A2
Digital Compare output 2 A.
Definition: etpwm.h:909
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT13
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT13
Trip source is INPUTXBAR out13 signal.
Definition: etpwm.h:2242
EPWM_SignalParams::dutyValB
Float32 dutyValB
Desired ePWMxB Signal Duty.
Definition: etpwm.h:2391
EPWM_lockRegisters
static void EPWM_lockRegisters(uint32_t base, EPWM_LockRegisterGroup registerGroup)
Definition: etpwm.h:8067
HRPWM_disableAutoConversion
static void HRPWM_disableAutoConversion(uint32_t base)
Definition: etpwm.h:8781
EPWM_DE_TRIP_SRC_CMPSSA2
@ EPWM_DE_TRIP_SRC_CMPSSA2
Trip source is CMPSSA2 signal.
Definition: etpwm.h:2284
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM12
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM12
Sync-in source is EPWM12 sync-out signal.
Definition: etpwm.h:212
EPWM_INT_TBCTR_D_CMPC
#define EPWM_INT_TBCTR_D_CMPC
time-base counter equal to CMPC when the timer is decrementing
Definition: etpwm.h:1204
EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_T2
@ EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_T2
T2 event on count down and no change in the output pins.
Definition: etpwm.h:695
EPWM_AQ_OUTPUT_TOGGLE_UP_T2
@ EPWM_AQ_OUTPUT_TOGGLE_UP_T2
T2 event on count up and toggle the output pins.
Definition: etpwm.h:693
EPWM_XCMP8_ACTIVE
@ EPWM_XCMP8_ACTIVE
XCMP8_ACTIVE.
Definition: etpwm.h:1997
EPWM_enableXLoad
static void EPWM_enableXLoad(uint32_t base)
Definition: etpwm.h:9614
EPWM_TZ_ACTION_DISABLE
@ EPWM_TZ_ACTION_DISABLE
disable action
Definition: etpwm.h:957
EPWM_AQ_TRIGGER_EVENT_TRIG_EPWM_SYNCIN
@ EPWM_AQ_TRIGGER_EVENT_TRIG_EPWM_SYNCIN
ePWM sync
Definition: etpwm.h:542
EPWM_forceADCTriggerEventCountInit
static void EPWM_forceADCTriggerEventCountInit(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6241
EPWM_getMinDeadBandDelay
static uint32_t EPWM_getMinDeadBandDelay(uint32_t base, uint32_t block)
Definition: etpwm.h:8286
EPWM_XCMP_NONE_CMPA
@ EPWM_XCMP_NONE_CMPA
Allocate 0 XCMP registers to CMPA.
Definition: etpwm.h:2102
EPWM_disableIllegalComboLogic
static void EPWM_disableIllegalComboLogic(uint32_t base, uint32_t block)
Definition: etpwm.h:8382
EPWM_GL_LOAD_PULSE_SYNC_CNTR_ZERO_PERIOD
@ EPWM_GL_LOAD_PULSE_SYNC_CNTR_ZERO_PERIOD
load on sync event or when counter is equal to period or zero
Definition: etpwm.h:1547
EPWM_disableActionQualifierShadowLoadMode
static void EPWM_disableActionQualifierShadowLoadMode(uint32_t base, EPWM_ActionQualifierModule aqModule)
Definition: etpwm.h:3542
EPWM_setADCTriggerEventPrescale
static void EPWM_setADCTriggerEventPrescale(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType, uint16_t preScaleCount)
Definition: etpwm.h:6069
EPWM_enableInterruptEventCountInit
static void EPWM_enableInterruptEventCountInit(uint32_t base)
Definition: etpwm.h:5687
EPWM_DiodeEmulationTripSource
EPWM_DiodeEmulationTripSource
Definition: etpwm.h:2214
EPWM_enableDigitalCompareCounterCapture
static void EPWM_enableDigitalCompareCounterCapture(uint32_t base)
Definition: etpwm.h:7225
EPWM_XCMP_XLOADCTL_SHDWBUFPTR_ONE
@ EPWM_XCMP_XLOADCTL_SHDWBUFPTR_ONE
Shadow buffer 1 is in use.
Definition: etpwm.h:2184
EPWM_DC_WINDOW_SOURCE_DCAEVT1
@ EPWM_DC_WINDOW_SOURCE_DCAEVT1
DC filter signal source is DCAEVT1.
Definition: etpwm.h:1431
EPWM_DigitalCompareEvent
EPWM_DigitalCompareEvent
Definition: etpwm.h:1463
HRPWM_enableAutoConversion
static void HRPWM_enableAutoConversion(uint32_t base)
Definition: etpwm.h:8759
EPWM_LINK_COMP_B
@ EPWM_LINK_COMP_B
link COMPB registers
Definition: etpwm.h:432
EPWM_LINK_WITH_EPWM_6
@ EPWM_LINK_WITH_EPWM_6
link current ePWM with ePWM6
Definition: etpwm.h:394
EPWM_enableDigitalCompareWindowInverseMode
static void EPWM_enableDigitalCompareWindowInverseMode(uint32_t base)
Definition: etpwm.h:6466
EPWM_XCMP4_SHADOW3
@ EPWM_XCMP4_SHADOW3
XCMP4_SHADOW3.
Definition: etpwm.h:2052
EPWM_LINK_WITH_EPWM_15
@ EPWM_LINK_WITH_EPWM_15
link current ePWM with ePWM15
Definition: etpwm.h:403
HRPWM_MEP_DUTY_PERIOD_CTRL
@ HRPWM_MEP_DUTY_PERIOD_CTRL
CMPAHR/CMPBHR or TBPRDHR controls MEP edge.
Definition: etpwm.h:1870
EPWM_disableDeadBandControlShadowLoadMode
static void EPWM_disableDeadBandControlShadowLoadMode(uint32_t base)
Definition: etpwm.h:4333
EPWM_DE_TRIP_SRC_CMPSSA5
@ EPWM_DE_TRIP_SRC_CMPSSA5
Trip source is CMPSSA5 signal.
Definition: etpwm.h:2290
EPWM_DB_POLARITY_ACTIVE_LOW
@ EPWM_DB_POLARITY_ACTIVE_LOW
DB polarity is inverted.
Definition: etpwm.h:770
EPWM_setRisingEdgeDelayCountShadowLoadMode
static void EPWM_setRisingEdgeDelayCountShadowLoadMode(uint32_t base, EPWM_RisingEdgeDelayLoadMode loadMode)
Definition: etpwm.h:4362
EPWM_TZ_ADV_ACTION_DISABLE
@ EPWM_TZ_ADV_ACTION_DISABLE
disable action
Definition: etpwm.h:991
EPWM_CLOCK_DIVIDER_4
@ EPWM_CLOCK_DIVIDER_4
Divide clock by 4.
Definition: etpwm.h:151
EPWM_DC_EVENT_INPUT_SYNCED
@ EPWM_DC_EVENT_INPUT_SYNCED
DC input signal is synced with TBCLK.
Definition: etpwm.h:1491
EPWM_AQ_OUTPUT_NO_CHANGE_PERIOD
@ EPWM_AQ_OUTPUT_NO_CHANGE_PERIOD
Time base counter equals period and no change in the output pins.
Definition: etpwm.h:620
EPWM_LINK_DBRED
@ EPWM_LINK_DBRED
link DBRED registers
Definition: etpwm.h:436
EPWM_ValleyCounterEdge
EPWM_ValleyCounterEdge
Definition: etpwm.h:1622
EPWM_LockRegisterGroup
EPWM_LockRegisterGroup
Definition: etpwm.h:1703
EPWM_SYNC_IN_PULSE_SRC_DISABLE
@ EPWM_SYNC_IN_PULSE_SRC_DISABLE
Disable Sync-in.
Definition: etpwm.h:186
EPWM_setFallingEdgeDeadBandDelayInput
static void EPWM_setFallingEdgeDeadBandDelayInput(uint32_t base, uint16_t input)
Definition: etpwm.h:4251
EPWM_configureSignal
void EPWM_configureSignal(uint32_t base, const EPWM_SignalParams *signalParams)
EPWM_XCMP_XLOADCTL_SHDWBUFPTR_THREE
@ EPWM_XCMP_XLOADCTL_SHDWBUFPTR_THREE
Shadow buffer 3 is in use.
Definition: etpwm.h:2188
EPWM_SyncCountMode
EPWM_SyncCountMode
Definition: etpwm.h:136
EPWM_RED_LOAD_FREEZE
@ EPWM_RED_LOAD_FREEZE
Freeze shadow to active load.
Definition: etpwm.h:819
EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG0
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG0
Sync-in source is FSI-RX1 RX Trigger 0 signal.
Definition: etpwm.h:288
EPWM_HSCLOCK_DIVIDER_12
@ EPWM_HSCLOCK_DIVIDER_12
Divide clock by 12.
Definition: etpwm.h:173
HRPWM_Channel
HRPWM_Channel
Definition: etpwm.h:1838
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM21
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM21
Sync-in source is EPWM21 sync-out signal.
Definition: etpwm.h:230
EPWM_setDeadBandControlShadowLoadMode
static void EPWM_setDeadBandControlShadowLoadMode(uint32_t base, EPWM_DeadBandControlLoadMode loadMode)
Definition: etpwm.h:4308
EPWM_DC_TRIP_TRIPIN4
@ EPWM_DC_TRIP_TRIPIN4
Trip 4.
Definition: etpwm.h:1325
EPWM_HSClockDivider
EPWM_HSClockDivider
Definition: etpwm.h:166
EPWM_RED_LOAD_ON_CNTR_PERIOD
@ EPWM_RED_LOAD_ON_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:815
HRPWM_setOutputSwapMode
static void HRPWM_setOutputSwapMode(uint32_t base, bool enableOutputSwap)
Definition: etpwm.h:8703
EPWM_AQ_OUTPUT_LOW_DOWN_CMPA
@ EPWM_AQ_OUTPUT_LOW_DOWN_CMPA
Time base counter down equals COMPA and set output pins to low.
Definition: etpwm.h:638
HRPWM_MEP_CTRL_DISABLE
@ HRPWM_MEP_CTRL_DISABLE
HRPWM is disabled.
Definition: etpwm.h:1852
EPWM_AQ_OUTPUT_NO_CHANGE_ZERO
@ EPWM_AQ_OUTPUT_NO_CHANGE_ZERO
Time base counter equals zero and no change in the output pins.
Definition: etpwm.h:612
EPWM_DE_TRIP_SRC_CMPSSA1
@ EPWM_DE_TRIP_SRC_CMPSSA1
Trip source is CMPSSA1 signal.
Definition: etpwm.h:2282
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT19
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT19
Trip source is INPUTXBAR out19 signal.
Definition: etpwm.h:2254
EPWM_AQ_OUTPUT_LOW
@ EPWM_AQ_OUTPUT_LOW
Set output pins to low.
Definition: etpwm.h:585
EPWM_XCMP_1_CMPB
@ EPWM_XCMP_1_CMPB
Allocate XCMP5 register to CMPB.
Definition: etpwm.h:2130
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT8
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT8
Trip source is INPUTXBAR out8 signal.
Definition: etpwm.h:2232
EPWM_getTimeBaseCounterDirection
static uint16_t EPWM_getTimeBaseCounterDirection(uint32_t base)
Definition: etpwm.h:3017
HRPWM_LoadMode
HRPWM_LoadMode
Definition: etpwm.h:1883
EPWM_XCMP1_ACTIVE
@ EPWM_XCMP1_ACTIVE
XCMP1_ACTIVE.
Definition: etpwm.h:1983
EPWM_selectMinimumDeadBandAndOrLogic
static void EPWM_selectMinimumDeadBandAndOrLogic(uint32_t base, uint32_t block, uint32_t referenceSignal)
Definition: etpwm.h:8187
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM19
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM19
Sync-in source is EPWM19 sync-out signal.
Definition: etpwm.h:226
EPWM_getDigitalCompareCaptureCount
static uint16_t EPWM_getDigitalCompareCaptureCount(uint32_t base)
Definition: etpwm.h:7332
EPWM_setDigitalCompareBlankingEvent
static void EPWM_setDigitalCompareBlankingEvent(uint32_t base, EPWM_DigitalCompareBlankingPulse blankingPulse, uint16_t mixedSource)
Definition: etpwm.h:6517
EPWM_INT_TBCTR_U_CMPD
#define EPWM_INT_TBCTR_U_CMPD
time-base counter equal to CMPD when the timer is incrementing
Definition: etpwm.h:1208
EPWM_XCMP_XLOADCTL_LOADMODE_LOADONCE
@ EPWM_XCMP_XLOADCTL_LOADMODE_LOADONCE
Load mode is LOADONCE.
Definition: etpwm.h:2148
EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG1
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG1
Sync-in source is FSI-RX3 RX Trigger 1 signal.
Definition: etpwm.h:306
EPWM_LINK_XLOAD
@ EPWM_LINK_XLOAD
link XLOAD registers
Definition: etpwm.h:438
EPWM_TZ_ADV_ACTION_EVENT_TZB_U
@ EPWM_TZ_ADV_ACTION_EVENT_TZB_U
TZ1 - TZ6, DCBEVT2, DCBEVT1 while counting up.
Definition: etpwm.h:971
EPWM_TZ_EVENT_DC_DISABLED
@ EPWM_TZ_EVENT_DC_DISABLED
Event is disabled.
Definition: etpwm.h:922
EPWM_XCMP_XLOADCTL_SHDWLEVEL_3
@ EPWM_XCMP_XLOADCTL_SHDWLEVEL_3
SHDW3, SHDW2, SHDW1 and Active registers are available.
Definition: etpwm.h:2169
EPWM_getInterruptEventCount
static uint16_t EPWM_getInterruptEventCount(uint32_t base)
Definition: etpwm.h:5789
EPWM_setDigitalCompareCounterShadowMode
static void EPWM_setDigitalCompareCounterShadowMode(uint32_t base, bool enableShadowMode)
Definition: etpwm.h:7272
EPWM_SignalParams::freqInHz
Float32 freqInHz
Desired Signal Frequency(in Hz)
Definition: etpwm.h:2389
EPWM_ACTION_QUALIFIER_A
@ EPWM_ACTION_QUALIFIER_A
Action Qualifier A.
Definition: etpwm.h:497
EPWM_DE_TRIPH
#define EPWM_DE_TRIPH
Definition: etpwm.h:2364
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM11
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM11
Sync-in source is EPWM11 sync-out signal.
Definition: etpwm.h:210
EPWM_DE_TRIP_SRC_CMPSSB5
@ EPWM_DE_TRIP_SRC_CMPSSB5
Trip source is CMPSSB5 signal.
Definition: etpwm.h:2310
EPWM_DE_TRIP_SRC_CMPSSA4
@ EPWM_DE_TRIP_SRC_CMPSSA4
Trip source is CMPSSA4 signal.
Definition: etpwm.h:2288
EPWM_XCMP_SHADOW3
#define EPWM_XCMP_SHADOW3
Definition: etpwm.h:1972
EPWM_TripZoneEvent
EPWM_TripZoneEvent
Definition: etpwm.h:937
EPWM_DC_TRIP_COMBINATION
@ EPWM_DC_TRIP_COMBINATION
All Trips (Trip1 - Trip 15) are selected.
Definition: etpwm.h:1337
EPWM_GL_LOAD_PULSE_GLOBAL_FORCE
@ EPWM_GL_LOAD_PULSE_GLOBAL_FORCE
load on global force
Definition: etpwm.h:1557
EPWM_DC_TRIP_TRIPIN15
@ EPWM_DC_TRIP_TRIPIN15
Trip 15.
Definition: etpwm.h:1336
EPWM_disableGlobalLoadOneShotMode
static void EPWM_disableGlobalLoadOneShotMode(uint32_t base)
Definition: etpwm.h:7893
EPWM_INT_TBCTR_D_CMPA
#define EPWM_INT_TBCTR_D_CMPA
time-base counter equal to CMPA when the timer is decrementing
Definition: etpwm.h:1202
EPWM_DigitalCompareBlankingPulse
EPWM_DigitalCompareBlankingPulse
Definition: etpwm.h:1385
HRPWM_getHiResCounterCompareValueOnly
static uint16_t HRPWM_getHiResCounterCompareValueOnly(uint32_t base, HRPWM_CounterCompareModule compModule)
Definition: etpwm.h:9111
EPWM_forceSyncPulse
static void EPWM_forceSyncPulse(uint32_t base)
Definition: etpwm.h:2513
EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SHIFT_2_SW_DELAY
@ EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SHIFT_2_SW_DELAY
Definition: etpwm.h:1645
EPWM_ValleyDelayMode
EPWM_ValleyDelayMode
Definition: etpwm.h:1634
EPWM_LINK_WITH_EPWM_11
@ EPWM_LINK_WITH_EPWM_11
link current ePWM with ePWM11
Definition: etpwm.h:399
EPWM_CLOCK_DIVIDER_1
@ EPWM_CLOCK_DIVIDER_1
Divide clock by 1.
Definition: etpwm.h:149
EPWM_AQ_OUTPUT_NO_CHANGE_UP_CMPA
@ EPWM_AQ_OUTPUT_NO_CHANGE_UP_CMPA
Time base counter up equals COMPA and no change in the output pins.
Definition: etpwm.h:628
EPWM_XCMP_3_CMPA
@ EPWM_XCMP_3_CMPA
Allocate XCMP1 - XCMP3 registers to CMPA.
Definition: etpwm.h:2108
EPWM_setSyncInPulseSource
static void EPWM_setSyncInPulseSource(uint32_t base, EPWM_SyncInPulseSource source)
Definition: etpwm.h:2553
EPWM_DE_TRIP_SRC_CMPSSB8
@ EPWM_DE_TRIP_SRC_CMPSSB8
Trip source is CMPSSB8 signal.
Definition: etpwm.h:2316
EPWM_TZ_ACTION_HIGH_Z
@ EPWM_TZ_ACTION_HIGH_Z
high impedance output
Definition: etpwm.h:954
EPWM_allocBXCMP
static void EPWM_allocBXCMP(uint32_t base, EPWM_XCMP_ALLOC_CMPB alloctype)
Definition: etpwm.h:9463
HRPWM_LOAD_ON_CNTR_PERIOD
@ HRPWM_LOAD_ON_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:1887
EPWM_setTripZoneAdvDigitalCompareActionA
static void EPWM_setTripZoneAdvDigitalCompareActionA(uint32_t base, EPWM_TripZoneAdvDigitalCompareEvent tzAdvDCEvent, EPWM_TripZoneAdvancedAction tzAdvDCAction)
Definition: etpwm.h:4992
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT6
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT6
Trip source is INPUTXBAR out6 signal.
Definition: etpwm.h:2228
EPWM_setDigitalCompareEdgeFilterMode
static void EPWM_setDigitalCompareEdgeFilterMode(uint32_t base, EPWM_DigitalCompareEdgeFilterMode edgeMode)
Definition: etpwm.h:6634
EPWM_LINK_WITH_EPWM_23
@ EPWM_LINK_WITH_EPWM_23
link current ePWM with ePWM23
Definition: etpwm.h:411
EPWM_EMULATION_STOP_AFTER_NEXT_TB
@ EPWM_EMULATION_STOP_AFTER_NEXT_TB
Stop after next Time Base counter increment or decrement.
Definition: etpwm.h:122
EPWM_XMINMAX_SHADOW3
@ EPWM_XMINMAX_SHADOW3
XMINMAX_SHADOW3.
Definition: etpwm.h:2064
EPWM_setGlobalLoadEventPrescale
static void EPWM_setGlobalLoadEventPrescale(uint32_t base, uint16_t prescalePulseCount)
Definition: etpwm.h:7840
EPWM_SOC_TBCTR_D_CMPA
@ EPWM_SOC_TBCTR_D_CMPA
time-base counter equal to CMPA when the timer is decrementing
Definition: etpwm.h:1282
EPWM_DC_EVENT_SOURCE_ORIG_SIGNAL
@ EPWM_DC_EVENT_SOURCE_ORIG_SIGNAL
signal source is unfiltered (DCAEVT1/2)
Definition: etpwm.h:1477
EPWM_SignalParams::invertSignalB
bool invertSignalB
Invert ePWMxB Signal if true.
Definition: etpwm.h:2392
EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG2
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG2
Sync-in source is FSI-RX1 RX Trigger 2 signal.
Definition: etpwm.h:292
EPWM_AQ_OUTPUT_ON_T2_COUNT_DOWN
@ EPWM_AQ_OUTPUT_ON_T2_COUNT_DOWN
T2 event on count down.
Definition: etpwm.h:573
EPWM_setActionQualifierAction
static void EPWM_setActionQualifierAction(uint32_t base, EPWM_ActionQualifierOutputModule epwmOutput, EPWM_ActionQualifierOutput output, EPWM_ActionQualifierOutputEvent event)
Definition: etpwm.h:3671
EPWM_DB_FED
@ EPWM_DB_FED
DB FED (Falling Edge Delay) mode.
Definition: etpwm.h:758
EPWM_disableMinimumDeadBand
static void EPWM_disableMinimumDeadBand(uint32_t base, uint32_t block)
Definition: etpwm.h:8121
EPWM_TZ_DC_OUTPUT_B2
@ EPWM_TZ_DC_OUTPUT_B2
Digital Compare output 2 B.
Definition: etpwm.h:911
EPWM_setCounterCompareValue
static void EPWM_setCounterCompareValue(uint32_t base, EPWM_CounterCompareModule compModule, uint16_t compCount)
Definition: etpwm.h:3351
EPWM_TZ_ADV_ACTION_HIGH_Z
@ EPWM_TZ_ADV_ACTION_HIGH_Z
high impedance output
Definition: etpwm.h:987
EPWM_getDigitalCompareBlankingWindowOffsetCount
static uint16_t EPWM_getDigitalCompareBlankingWindowOffsetCount(uint32_t base)
Definition: etpwm.h:6783
EPWM_invertMinimumDeadBandSignal
static void EPWM_invertMinimumDeadBandSignal(uint32_t base, uint32_t block, uint32_t invert)
Definition: etpwm.h:8152
EPWM_DE_TRIP_SRC_CMPSSA8
@ EPWM_DE_TRIP_SRC_CMPSSA8
Trip source is CMPSSA8 signal.
Definition: etpwm.h:2296
EPWM_DC_TYPE_DCBL
@ EPWM_DC_TYPE_DCBL
Digital Compare B Low.
Definition: etpwm.h:1311
EPWM_CLOCK_DIVIDER_2
@ EPWM_CLOCK_DIVIDER_2
Divide clock by 2.
Definition: etpwm.h:150
EPWM_DeadBandDelayMode
EPWM_DeadBandDelayMode
Definition: etpwm.h:756
EPWM_enableDigitalCompareEdgeFilter
static void EPWM_enableDigitalCompareEdgeFilter(uint32_t base)
Definition: etpwm.h:6585
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM26
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM26
Sync-in source is EPWM26 sync-out signal.
Definition: etpwm.h:240
EPWM_DC_EDGEFILT_EDGECNT_3
@ EPWM_DC_EDGEFILT_EDGECNT_3
Digital Compare Edge filter edge count = 4.
Definition: etpwm.h:1685
HRPWM_LOAD_ON_CMPB_EQ
@ HRPWM_LOAD_ON_CMPB_EQ
load on translater event CMPB-3
Definition: etpwm.h:1891
EPWM_INT_TBCTR_U_CMPA
#define EPWM_INT_TBCTR_U_CMPA
time-base counter equal to CMPA when the timer is incrementing
Definition: etpwm.h:1198
EPWM_setCounterCompareShadowLoadMode
static void EPWM_setCounterCompareShadowLoadMode(uint32_t base, EPWM_CounterCompareModule compModule, EPWM_CounterCompareLoadMode loadMode)
Definition: etpwm.h:3223
EPWM_OneShotSyncOutTrigger
EPWM_OneShotSyncOutTrigger
Definition: etpwm.h:320
EPWM_setXCMPRegValue
static void EPWM_setXCMPRegValue(uint32_t base, EPWM_XCMPReg xcmpReg, uint16_t xcmpvalue)
Definition: etpwm.h:9495
EPWM_setRisingEdgeDelayCount
static void EPWM_setRisingEdgeDelayCount(uint32_t base, uint16_t redCount)
Definition: etpwm.h:4498
EPWM_enableSplitXCMP
static void EPWM_enableSplitXCMP(uint32_t base)
Definition: etpwm.h:9381
EPWM_TZ_EVENT_DCXH_HIGH
@ EPWM_TZ_EVENT_DCXH_HIGH
Event when DCxH high.
Definition: etpwm.h:924
EPWM_CLOCK_DIVIDER_16
@ EPWM_CLOCK_DIVIDER_16
Divide clock by 16.
Definition: etpwm.h:153
EPWM_DC_TRIP_TRIPIN12
@ EPWM_DC_TRIP_TRIPIN12
Trip 12.
Definition: etpwm.h:1333
EPWM_XCMP_2_CMPB
@ EPWM_XCMP_2_CMPB
Allocate XCMP5 - XCMP6 registers to CMPB.
Definition: etpwm.h:2132
EPWM_disableDiodeEmulationMode
static void EPWM_disableDiodeEmulationMode(uint32_t base)
Definition: etpwm.h:9826
EPWM_XCMP5_SHADOW2
@ EPWM_XCMP5_SHADOW2
XCMP5_SHADOW2.
Definition: etpwm.h:2033
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT5
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT5
Trip source is INPUTXBAR out5 signal.
Definition: etpwm.h:2226
EPWM_LINK_WITH_EPWM_10
@ EPWM_LINK_WITH_EPWM_10
link current ePWM with ePWM10
Definition: etpwm.h:398
EPWM_enableADCTrigger
static void EPWM_enableADCTrigger(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:5839
EPWM_DC_TRIP_TRIPIN10
@ EPWM_DC_TRIP_TRIPIN10
Trip 10.
Definition: etpwm.h:1331
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP2
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP2
Sync-in source is ECAP2 sync-out signal.
Definition: etpwm.h:256
EPWM_setADCTriggerEventCountInitValue
static void EPWM_setADCTriggerEventCountInitValue(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType, uint16_t eventCount)
Definition: etpwm.h:6271
HRPWM_MEPDeadBandEdgeMode
HRPWM_MEPDeadBandEdgeMode
Definition: etpwm.h:1949
EPWM_SOC_TBCTR_U_CMPC
@ EPWM_SOC_TBCTR_U_CMPC
time-base counter equal to CMPC when the timer is incrementing
Definition: etpwm.h:1280
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT4
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT4
Trip source is INPUTXBAR out4 signal.
Definition: etpwm.h:2224
EPWM_VALLEY_COUNT_STOP_EDGE
@ EPWM_VALLEY_COUNT_STOP_EDGE
Valley count stop edge.
Definition: etpwm.h:1624
EPWM_COUNTER_MODE_STOP_FREEZE
@ EPWM_COUNTER_MODE_STOP_FREEZE
Stop - Freeze counter.
Definition: etpwm.h:350
EPWM_LINK_WITH_EPWM_17
@ EPWM_LINK_WITH_EPWM_17
link current ePWM with ePWM17
Definition: etpwm.h:405
EPWM_setDigitalCompareCBCLatchMode
static void EPWM_setDigitalCompareCBCLatchMode(uint32_t base, EPWM_DigitalCompareModule dcModule, EPWM_DigitalCompareEvent dcEvent, EPWM_DigitalCompareCBCLatchMode latchMode)
Definition: etpwm.h:7074
EPWM_forceGlobalLoadOneShotEvent
static void EPWM_forceGlobalLoadOneShotEvent(uint32_t base)
Definition: etpwm.h:7962
EPWM_getValleyEdgeStatus
static bool EPWM_getValleyEdgeStatus(uint32_t base, EPWM_ValleyCounterEdge edge)
Definition: etpwm.h:7673
EPWM_ActionQualifierOutput
EPWM_ActionQualifierOutput
Definition: etpwm.h:583
EPWM_DC_EDGEFILT_MODE_RISING
@ EPWM_DC_EDGEFILT_MODE_RISING
Digital Compare Edge filter low to high edge mode.
Definition: etpwm.h:1663
EPWM_TZ_ACTION_EVENT_DCBEVT2
@ EPWM_TZ_ACTION_EVENT_DCBEVT2
DCBEVT2 (Digital Compare B event 2)
Definition: etpwm.h:943
EPWM_AQ_OUTPUT_LOW_UP_T1
@ EPWM_AQ_OUTPUT_LOW_UP_T1
T1 event on count up and set output pins to low.
Definition: etpwm.h:673
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM14
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM14
Sync-in source is EPWM14 sync-out signal.
Definition: etpwm.h:216
EPWM_XCMP2_SHADOW1
@ EPWM_XCMP2_SHADOW1
XCMP2_SHADOW1.
Definition: etpwm.h:2006
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT7
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT7
Trip source is INPUTXBAR out7 signal.
Definition: etpwm.h:2230
HRPWM_PWMSYNC_SOURCE_COMPC_DOWN
@ HRPWM_PWMSYNC_SOURCE_COMPC_DOWN
Counter equals COMPC when counting down.
Definition: etpwm.h:1923
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM10
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM10
Sync-in source is EPWM10 sync-out signal.
Definition: etpwm.h:208
EPWM_ClockDivider
EPWM_ClockDivider
Definition: etpwm.h:148
EPWM_DB_INPUT_DB_RED
#define EPWM_DB_INPUT_DB_RED
Input signal is the output of Rising Edge delay.
Definition: etpwm.h:784
EPWM_LinkComponent
EPWM_LinkComponent
Definition: etpwm.h:429
EPWM_disableSyncOutPulseSource
static void EPWM_disableSyncOutPulseSource(uint32_t base, uint16_t source)
Definition: etpwm.h:2645
EPWM_disableADCTriggerEventCountInit
static void EPWM_disableADCTriggerEventCountInit(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6212
EPWM_GL_LOAD_PULSE_CNTR_CMPD_D
@ EPWM_GL_LOAD_PULSE_CNTR_CMPD_D
load when counter is equal to cmpd and cmpd is decrementing
Definition: etpwm.h:1555
HRPWM_SyncPulseSource
HRPWM_SyncPulseSource
Definition: etpwm.h:1915
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT17
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT17
Trip source is INPUTXBAR out17 signal.
Definition: etpwm.h:2250
EPWM_VALLEY_TRIGGER_EVENT_CNTR_ZERO
@ EPWM_VALLEY_TRIGGER_EVENT_CNTR_ZERO
Valley capture trigged by when counter is equal to zero.
Definition: etpwm.h:1600
EPWM_AQ_OUTPUT_LOW_DOWN_CMPB
@ EPWM_AQ_OUTPUT_LOW_DOWN_CMPB
Time base counter down equals COMPB and set output pins to low.
Definition: etpwm.h:654
EPWM_DigitalCompareModule
EPWM_DigitalCompareModule
Definition: etpwm.h:1448
EPWM_getADCTriggerFlagStatus
static bool EPWM_getADCTriggerFlagStatus(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6124
EPWM_FED_LOAD_FREEZE
@ EPWM_FED_LOAD_FREEZE
Freeze shadow to active load.
Definition: etpwm.h:837
EPWM_DigitalCompareCBCLatchMode
EPWM_DigitalCompareCBCLatchMode
Definition: etpwm.h:1503
EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG3
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX1_RX_TRIG3
Sync-in source is FSI-RX1 RX Trigger 3 signal.
Definition: etpwm.h:294
EPWM_SOC_B
@ EPWM_SOC_B
SOC B.
Definition: etpwm.h:1258
EPWM_PERIOD_SHADOW_LOAD
@ EPWM_PERIOD_SHADOW_LOAD
PWM Period register access is through shadow register.
Definition: etpwm.h:334
EPWM_TZ_ADV_ACTION_EVENT_DCxEVT2_D
@ EPWM_TZ_ADV_ACTION_EVENT_DCxEVT2_D
Digital Compare event A/B 2 while counting down.
Definition: etpwm.h:1010
EPWM_DC_EDGEFILT_EDGECNT_1
@ EPWM_DC_EDGEFILT_EDGECNT_1
Digital Compare Edge filter edge count = 2.
Definition: etpwm.h:1681
HRPWM_setHiResCounterCompareValue
static void HRPWM_setHiResCounterCompareValue(uint32_t base, HRPWM_CounterCompareModule compModule, uint16_t hrCompCount)
Definition: etpwm.h:9064
EPWM_DC_EVENT_SOURCE_FILT_SIGNAL
@ EPWM_DC_EVENT_SOURCE_FILT_SIGNAL
signal source is filtered (DCEVTFILT)
Definition: etpwm.h:1479
EPWM_DE_TRIP_SRC_CMPSSA3
@ EPWM_DE_TRIP_SRC_CMPSSA3
Trip source is CMPSSA3 signal.
Definition: etpwm.h:2286
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM23
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM23
Sync-in source is EPWM23 sync-out signal.
Definition: etpwm.h:234
EPWM_LINK_WITH_EPWM_8
@ EPWM_LINK_WITH_EPWM_8
link current ePWM with ePWM8
Definition: etpwm.h:396
EPWM_AQ_OUTPUT_HIGH_UP_CMPB
@ EPWM_AQ_OUTPUT_HIGH_UP_CMPB
Time base counter up equals COMPB and set output pins to high.
Definition: etpwm.h:648
EPWM_getTimeBaseCounterOverflowStatus
static bool EPWM_getTimeBaseCounterOverflowStatus(uint32_t base)
Definition: etpwm.h:2928
EPWM_DE_TRIP_SRC_CMPSSA9
@ EPWM_DE_TRIP_SRC_CMPSSA9
Trip source is CMPSSA9 signal.
Definition: etpwm.h:2298
EPWM_COUNTER_COMPARE_B
@ EPWM_COUNTER_COMPARE_B
counter compare B
Definition: etpwm.h:455
EPWM_SOC_DCxEVT1
@ EPWM_SOC_DCxEVT1
Event is based on DCxEVT1.
Definition: etpwm.h:1270
EPWM_AQ_OUTPUT_NO_CHANGE_UP_T1
@ EPWM_AQ_OUTPUT_NO_CHANGE_UP_T1
T1 event on count up and no change in the output pins.
Definition: etpwm.h:671
EPWM_DC_CBC_LATCH_ENABLED
@ EPWM_DC_CBC_LATCH_ENABLED
DC cycle-by-cycle(CBC) latch is enabled.
Definition: etpwm.h:1507
EPWM_AQ_TRIGGER_EVENT_TRIG_TZ_1
@ EPWM_AQ_TRIGGER_EVENT_TRIG_TZ_1
Trip zone 1.
Definition: etpwm.h:539
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM28
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM28
Sync-in source is EPWM28 sync-out signal.
Definition: etpwm.h:244
EPWM_ValleyTriggerSource
EPWM_ValleyTriggerSource
Definition: etpwm.h:1596
EPWM_DC_TRIP_TRIPIN6
@ EPWM_DC_TRIP_TRIPIN6
Trip 6.
Definition: etpwm.h:1327
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP5
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP5
Sync-in source is ECAP5 sync-out signal.
Definition: etpwm.h:262
EPWM_TZ_ADV_ACTION_TOGGLE
@ EPWM_TZ_ADV_ACTION_TOGGLE
toggle the output
Definition: etpwm.h:990
EPWM_LINK_COMP_A
@ EPWM_LINK_COMP_A
link COMPA registers
Definition: etpwm.h:431
EPWM_enableGlobalLoad
static void EPWM_enableGlobalLoad(uint32_t base)
Definition: etpwm.h:7752
EPWM_disableValleyCapture
static void EPWM_disableValleyCapture(uint32_t base)
Definition: etpwm.h:7467
EPWM_TZ_ADV_ACTION_HIGH
@ EPWM_TZ_ADV_ACTION_HIGH
high voltage state
Definition: etpwm.h:988
EPWM_VALLEY_TRIGGER_EVENT_DCBEVT1
@ EPWM_VALLEY_TRIGGER_EVENT_DCBEVT1
Valley capture trigged by DCBEVT1 (Digital Compare B event 1)
Definition: etpwm.h:1610
EPWM_AdditionalActionQualifierEventAction
EPWM_AdditionalActionQualifierEventAction
Definition: etpwm.h:669
EPWM_configureDiodeEmulationTripSources
static void EPWM_configureDiodeEmulationTripSources(uint32_t base, EPWM_DiodeEmulationTripSource source, uint32_t tripLorH)
Definition: etpwm.h:9924
EPWM_XCMP7_SHADOW2
@ EPWM_XCMP7_SHADOW2
XCMP7_SHADOW2.
Definition: etpwm.h:2037
EPWM_enableChopper
static void EPWM_enableChopper(uint32_t base)
Definition: etpwm.h:4553
EPWM_AQ_OUTPUT_ON_TIMEBASE_ZERO
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_ZERO
Time base counter equals zero.
Definition: etpwm.h:555
EPWM_DC_TRIP_TRIPIN3
@ EPWM_DC_TRIP_TRIPIN3
Trip 3.
Definition: etpwm.h:1324
EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG1
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG1
Sync-in source is FSI-RX2 RX Trigger 1 signal.
Definition: etpwm.h:298
EPWM_enablePhaseShiftLoad
static void EPWM_enablePhaseShiftLoad(uint32_t base)
Definition: etpwm.h:2740
EPWM_setTripZoneDigitalCompareEventCondition
static void EPWM_setTripZoneDigitalCompareEventCondition(uint32_t base, EPWM_TripZoneDigitalCompareOutput dcType, EPWM_TripZoneDigitalCompareOutputEvent dcEvent)
Definition: etpwm.h:4800
EPWM_AQ_SW_IMMEDIATE_LOAD
@ EPWM_AQ_SW_IMMEDIATE_LOAD
No shadow load mode. Immediate mode only.
Definition: etpwm.h:734
EPWM_DC_WINDOW_SOURCE_DCBEVT1
@ EPWM_DC_WINDOW_SOURCE_DCBEVT1
DC filter signal source is DCBEVT1.
Definition: etpwm.h:1433
EPWM_clearTimeBaseCounterOverflowEvent
static void EPWM_clearTimeBaseCounterOverflowEvent(uint32_t base)
Definition: etpwm.h:2951
EPWM_DeadBandPolarity
EPWM_DeadBandPolarity
Definition: etpwm.h:768
EPWM_DC_TRIP_TRIPIN7
@ EPWM_DC_TRIP_TRIPIN7
Trip 7.
Definition: etpwm.h:1328
EPWM_LINK_WITH_EPWM_28
@ EPWM_LINK_WITH_EPWM_28
link current ePWM with ePWM28
Definition: etpwm.h:416
HRPWM_MEPEdgeMode
HRPWM_MEPEdgeMode
Definition: etpwm.h:1850
EPWM_disableADCTrigger
static void EPWM_disableADCTrigger(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:5872
EPWM_DB_LOAD_FREEZE
@ EPWM_DB_LOAD_FREEZE
Freeze shadow to active load.
Definition: etpwm.h:801
HRPWM_setCounterCompareShadowLoadEvent
static void HRPWM_setCounterCompareShadowLoadEvent(uint32_t base, HRPWM_Channel channel, HRPWM_LoadMode loadEvent)
Definition: etpwm.h:8676
EPWM_XCMP7_SHADOW3
@ EPWM_XCMP7_SHADOW3
XCMP7_SHADOW3.
Definition: etpwm.h:2058
EPWM_enableDiodeEmulationMonitorModeControl
static void EPWM_enableDiodeEmulationMonitorModeControl(uint32_t base)
Definition: etpwm.h:10122
EPWM_XCMP_XLOADCTL_SHDWBUFPTR_NULL
@ EPWM_XCMP_XLOADCTL_SHDWBUFPTR_NULL
No Shadow buffer is in use.
Definition: etpwm.h:2182
EPWM_enableDigitalCompareBlankingWindow
static void EPWM_enableDigitalCompareBlankingWindow(uint32_t base)
Definition: etpwm.h:6423
EPWM_DC_WINDOW_START_TBCTR_PERIOD
@ EPWM_DC_WINDOW_START_TBCTR_PERIOD
Time base counter equals period.
Definition: etpwm.h:1387
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT11
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT11
Trip source is INPUTXBAR out11 signal.
Definition: etpwm.h:2238
EPWM_TripZoneAdvancedAction
EPWM_TripZoneAdvancedAction
Definition: etpwm.h:986
EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SW_DELAY
@ EPWM_VALLEY_DELAY_MODE_VCNT_DELAY_SW_DELAY
Definition: etpwm.h:1639
HRPWM_MEP_CTRL_RISING_EDGE
@ HRPWM_MEP_CTRL_RISING_EDGE
MEP controls rising edge.
Definition: etpwm.h:1854
EPWM_DC_TRIP_TRIPIN14
@ EPWM_DC_TRIP_TRIPIN14
Trip 14.
Definition: etpwm.h:1335
EPWM_DE_CHANNEL_A
#define EPWM_DE_CHANNEL_A
< Diode emulation channel A
Definition: etpwm.h:2340
HRPWM_disablePhaseShiftLoad
static void HRPWM_disablePhaseShiftLoad(uint32_t base)
Definition: etpwm.h:8866
EPWM_disableTripZoneOutput
static void EPWM_disableTripZoneOutput(uint32_t base, uint16_t tzOutput)
Definition: etpwm.h:5449
EPWM_XCMP_8_CMPA
@ EPWM_XCMP_8_CMPA
Allocate XCMP1 - XCMP8 registers to CMPA.
Definition: etpwm.h:2118
EPWM_XCMP6_SHADOW3
@ EPWM_XCMP6_SHADOW3
XCMP6_SHADOW3.
Definition: etpwm.h:2056
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT26
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT26
Trip source is INPUTXBAR out26 signal.
Definition: etpwm.h:2268
EPWM_AQ_OUTPUT_TOGGLE_PERIOD
@ EPWM_AQ_OUTPUT_TOGGLE_PERIOD
Time base counter equals period and toggle the output pins.
Definition: etpwm.h:626
EPWM_VALLEY_TRIGGER_EVENT_CNTR_ZERO_PERIOD
@ EPWM_VALLEY_TRIGGER_EVENT_CNTR_ZERO_PERIOD
Valley capture trigged when counter is equal to zero or period.
Definition: etpwm.h:1604
EPWM_setActionQualifierSWAction
static void EPWM_setActionQualifierSWAction(uint32_t base, EPWM_ActionQualifierOutputModule epwmOutput, EPWM_ActionQualifierOutput output)
Definition: etpwm.h:3998
EPWM_disableGlobalLoadRegisters
static void EPWM_disableGlobalLoadRegisters(uint32_t base, uint16_t loadRegister)
Definition: etpwm.h:8038
EPWM_COUNTER_MODE_UP_DOWN
@ EPWM_COUNTER_MODE_UP_DOWN
Up - down - count mode.
Definition: etpwm.h:349
EPWM_DC_TRIP_TRIPIN11
@ EPWM_DC_TRIP_TRIPIN11
Trip 11.
Definition: etpwm.h:1332
EPWM_enableOneShotSync
static void EPWM_enableOneShotSync(uint32_t base)
Definition: etpwm.h:2842
EPWM_enableSyncOutPulseSource
static void EPWM_enableSyncOutPulseSource(uint32_t base, uint16_t source)
Definition: etpwm.h:2600
DebugP.h
EPWM_setAdditionalActionQualifierActionComplete
static void EPWM_setAdditionalActionQualifierActionComplete(uint32_t base, EPWM_ActionQualifierOutputModule epwmOutput, EPWM_AdditionalActionQualifierEventAction action)
Definition: etpwm.h:3874
EPWM_TripZoneAction
EPWM_TripZoneAction
Definition: etpwm.h:953
HRPWM_DB_MEP_CTRL_RED_FED
@ HRPWM_DB_MEP_CTRL_RED_FED
MEP controls both Falling and Rising edge delay.
Definition: etpwm.h:1957
EPWM_XCMP6_ACTIVE
@ EPWM_XCMP6_ACTIVE
XCMP6_ACTIVE.
Definition: etpwm.h:1993
EPWM_LOCK_KEY
#define EPWM_LOCK_KEY
Definition: etpwm.h:2379
HRPWM_MEP_CTRL_FALLING_EDGE
@ HRPWM_MEP_CTRL_FALLING_EDGE
MEP controls falling edge.
Definition: etpwm.h:1856
EPWM_DE_TRIP_SRC_CMPSSB3
@ EPWM_DE_TRIP_SRC_CMPSSB3
Trip source is CMPSSB3 signal.
Definition: etpwm.h:2306
EPWM_DE_TRIP_SRC_CMPSSB6
@ EPWM_DE_TRIP_SRC_CMPSSB6
Trip source is CMPSSB6 signal.
Definition: etpwm.h:2312
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP8
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP8
Sync-in source is ECAP8 sync-out signal.
Definition: etpwm.h:268
EPWM_DC_CBC_LATCH_DISABLED
@ EPWM_DC_CBC_LATCH_DISABLED
DC cycle-by-cycle(CBC) latch is disabled.
Definition: etpwm.h:1505
EPWM_LINK_GLDCTL2
@ EPWM_LINK_GLDCTL2
link GLDCTL2 registers
Definition: etpwm.h:435
EPWM_VALLEY_TRIGGER_EVENT_CNTR_PERIOD
@ EPWM_VALLEY_TRIGGER_EVENT_CNTR_PERIOD
Valley capture trigged by when counter is equal period.
Definition: etpwm.h:1602
EPWM_TripZoneAdvDigitalCompareEvent
EPWM_TripZoneAdvDigitalCompareEvent
Definition: etpwm.h:1002
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT9
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT9
Trip source is INPUTXBAR out9 signal.
Definition: etpwm.h:2234
EPWM_selectMinimumDeadBandBlockingSignal
static void EPWM_selectMinimumDeadBandBlockingSignal(uint32_t base, uint32_t block, uint32_t blockingSignal)
Definition: etpwm.h:8221
EPWM_DigitalCompareEventSource
EPWM_DigitalCompareEventSource
Definition: etpwm.h:1475
EPWM_SHADOW_LOAD_MODE_COUNTER_SYNC
@ EPWM_SHADOW_LOAD_MODE_COUNTER_SYNC
Definition: etpwm.h:365
EPWM_setDiodeEmulationMonitorCounterThreshold
static void EPWM_setDiodeEmulationMonitorCounterThreshold(uint32_t base, uint16_t threshold)
Definition: etpwm.h:10209
EPWM_XCMP_ALLOC_CMPB
EPWM_XCMP_ALLOC_CMPB
Values that can be passed to EPWM_allocBXCMP() as the alloctype parameter.
Definition: etpwm.h:2128
EPWM_AQ_OUTPUT_ON_T2_COUNT_UP
@ EPWM_AQ_OUTPUT_ON_T2_COUNT_UP
T2 event on count up.
Definition: etpwm.h:571
EPWM_getOneShotTripZoneFlagStatus
static uint16_t EPWM_getOneShotTripZoneFlagStatus(uint32_t base)
Definition: etpwm.h:5216
EPWM_AQ_OUTPUT_TOGGLE_DOWN_CMPB
@ EPWM_AQ_OUTPUT_TOGGLE_DOWN_CMPB
Time base counter down equals COMPB and toggle the output pins.
Definition: etpwm.h:658
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP7
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP7
Time base counter equals XCMP7.
Definition: etpwm.h:2088
HRPWM_OUTPUT_ON_B_NORMAL
@ HRPWM_OUTPUT_ON_B_NORMAL
ePWMxB output is normal.
Definition: etpwm.h:1903
EPWM_setTripZoneAction
static void EPWM_setTripZoneAction(uint32_t base, EPWM_TripZoneEvent tzEvent, EPWM_TripZoneAction tzAction)
Definition: etpwm.h:4890
EPWM_FED_LOAD_ON_CNTR_ZERO
@ EPWM_FED_LOAD_ON_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:831
EPWM_DigitalCompareEdgeFilterMode
EPWM_DigitalCompareEdgeFilterMode
Definition: etpwm.h:1661
EPWM_LINK_WITH_EPWM_7
@ EPWM_LINK_WITH_EPWM_7
link current ePWM with ePWM7
Definition: etpwm.h:395
EPWM_AQ_OUTPUT_NO_CHANGE_UP_CMPB
@ EPWM_AQ_OUTPUT_NO_CHANGE_UP_CMPB
Time base counter up equals COMPB and no change in the output pins.
Definition: etpwm.h:644
EPWM_setDigitalCompareFilterInput
static void EPWM_setDigitalCompareFilterInput(uint32_t base, EPWM_DigitalCompareFilterInput filterInput)
Definition: etpwm.h:6558
EPWM_AQ_OUTPUT_LOW_DOWN_T1
@ EPWM_AQ_OUTPUT_LOW_DOWN_T1
T1 event on count down and set output pins to low.
Definition: etpwm.h:681
EPWM_INT_TBCTR_U_CMPB
#define EPWM_INT_TBCTR_U_CMPB
time-base counter equal to CMPB when the timer is incrementing
Definition: etpwm.h:1206
EPWM_DC_EDGEFILT_EDGECNT_5
@ EPWM_DC_EDGEFILT_EDGECNT_5
Digital Compare Edge filter edge count = 6.
Definition: etpwm.h:1689
EPWM_FED_LOAD_ON_CNTR_ZERO_PERIOD
@ EPWM_FED_LOAD_ON_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:835
EPWM_TZ_EVENT_DCXL_HIGH
@ EPWM_TZ_EVENT_DCXL_HIGH
Event when DCxL high.
Definition: etpwm.h:926
EPWM_TZ_ACTION_EVENT_DCAEVT1
@ EPWM_TZ_ACTION_EVENT_DCAEVT1
DCAEVT1 (Digital Compare A event 1)
Definition: etpwm.h:940
EPWM_TZ_EVENT_DCXH_LOW
@ EPWM_TZ_EVENT_DCXH_LOW
Event when DCxH low.
Definition: etpwm.h:923
EPWM_AQ_OUTPUT_HIGH_UP_CMPA
@ EPWM_AQ_OUTPUT_HIGH_UP_CMPA
Time base counter up equals COMPA and set output pins to high.
Definition: etpwm.h:632
EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG3
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX0_RX_TRIG3
Sync-in source is FSI-RX0 RX Trigger 3 signal.
Definition: etpwm.h:286
EPWM_forceInterruptEventCountInit
static void EPWM_forceInterruptEventCountInit(uint32_t base)
Definition: etpwm.h:5736
EPWM_getDigitalCompareEdgeFilterEdgeCount
static uint16_t EPWM_getDigitalCompareEdgeFilterEdgeCount(uint32_t base)
Definition: etpwm.h:6693
EPWM_COMP_LOAD_ON_SYNC_CNTR_ZERO
@ EPWM_COMP_LOAD_ON_SYNC_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:477
EPWM_AQ_OUTPUT_HIGH
@ EPWM_AQ_OUTPUT_HIGH
Set output pins to High.
Definition: etpwm.h:586
EPWM_GL_LOAD_PULSE_CNTR_ZERO_PERIOD
@ EPWM_GL_LOAD_PULSE_CNTR_ZERO_PERIOD
load when counter is equal to zero or period
Definition: etpwm.h:1539
HRPWM_DB_MEP_CTRL_DISABLE
@ HRPWM_DB_MEP_CTRL_DISABLE
HRPWM is disabled.
Definition: etpwm.h:1951
EPWM_DC_TRIP_TRIPIN9
@ EPWM_DC_TRIP_TRIPIN9
Trip 9.
Definition: etpwm.h:1330
EPWM_XCMP3_ACTIVE
@ EPWM_XCMP3_ACTIVE
XCMP3_ACTIVE.
Definition: etpwm.h:1987
EPWM_enableGlobalLoadOneShotMode
static void EPWM_enableGlobalLoadOneShotMode(uint32_t base)
Definition: etpwm.h:7917
EPWM_RisingEdgeDelayLoadMode
EPWM_RisingEdgeDelayLoadMode
Definition: etpwm.h:811
EPWM_SOC_TBCTR_D_CMPB
@ EPWM_SOC_TBCTR_D_CMPB
time-base counter equal to CMPB when the timer is decrementing
Definition: etpwm.h:1290
EPWM_CycleByCycleTripZoneClearMode
EPWM_CycleByCycleTripZoneClearMode
Definition: etpwm.h:1122
EPWM_DE_COUNT_UP
#define EPWM_DE_COUNT_UP
Values that can be passed to EPWM_setDiodeEmulationMonitorModeStep()
Definition: etpwm.h:2351
EPWM_AQ_SW_SH_LOAD_ON_CNTR_PERIOD
@ EPWM_AQ_SW_SH_LOAD_ON_CNTR_PERIOD
shadow mode load when counter equals period
Definition: etpwm.h:730
EPWM_VALLEY_COUNT_START_EDGE
@ EPWM_VALLEY_COUNT_START_EDGE
Valley count start edge.
Definition: etpwm.h:1623
EPWM_XCMPActionQualifierOutputEvent
EPWM_XCMPActionQualifierOutputEvent
Values that can be passed to EPWM_setXCMPActionQualifierAction() as the event parameter.
Definition: etpwm.h:2074
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT2
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT2
Trip source is INPUTXBAR out2 signal.
Definition: etpwm.h:2220
EPWM_DE_TRIP_SRC_CMPSSA7
@ EPWM_DE_TRIP_SRC_CMPSSA7
Trip source is CMPSSA7 signal.
Definition: etpwm.h:2294
EPWM_LINK_WITH_EPWM_27
@ EPWM_LINK_WITH_EPWM_27
link current ePWM with ePWM27
Definition: etpwm.h:415
EPWM_DC_EDGEFILT_MODE_FALLING
@ EPWM_DC_EDGEFILT_MODE_FALLING
Digital Compare Edge filter both edges mode.
Definition: etpwm.h:1665
EPWM_AQ_SW_SH_LOAD_ON_CNTR_ZERO_PERIOD
@ EPWM_AQ_SW_SH_LOAD_ON_CNTR_ZERO_PERIOD
shadow mode load when counter equals zero or period
Definition: etpwm.h:732
EPWM_XCMP8_SHADOW2
@ EPWM_XCMP8_SHADOW2
XCMP8_SHADOW2.
Definition: etpwm.h:2039
HRPWM_setHiResPhaseShift
static void HRPWM_setHiResPhaseShift(uint32_t base, uint16_t hrPhaseCount)
Definition: etpwm.h:8506
EPWM_XCMP3_SHADOW2
@ EPWM_XCMP3_SHADOW2
XCMP3_SHADOW2.
Definition: etpwm.h:2029
EPWM_DC_EVENT_2
@ EPWM_DC_EVENT_2
Digital Compare Event number 2.
Definition: etpwm.h:1465
EPWM_COUNTER_COMPARE_C
@ EPWM_COUNTER_COMPARE_C
counter compare C
Definition: etpwm.h:456
EPWM_disableDigitalCompareCounterCapture
static void EPWM_disableDigitalCompareCounterCapture(uint32_t base)
Definition: etpwm.h:7246
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP6
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP6
Sync-in source is ECAP6 sync-out signal.
Definition: etpwm.h:264
EPWM_enableTripZoneInterrupt
static void EPWM_enableTripZoneInterrupt(uint32_t base, uint16_t tzInterrupt)
Definition: etpwm.h:5082
EPWM_setLutDecX
static void EPWM_setLutDecX(uint32_t base, uint32_t block, uint32_t decx, uint32_t force)
Definition: etpwm.h:8446
EPWM_LINK_WITH_EPWM_19
@ EPWM_LINK_WITH_EPWM_19
link current ePWM with ePWM19
Definition: etpwm.h:407
EPWM_AQ_OUTPUT_LOW_PERIOD
@ EPWM_AQ_OUTPUT_LOW_PERIOD
Time base counter equals period and set output pins to low.
Definition: etpwm.h:622
EPWM_DiodeEmulationMode
EPWM_DiodeEmulationMode
Definition: etpwm.h:2200
EPWM_XCMP1_SHADOW3
@ EPWM_XCMP1_SHADOW3
XCMP1_SHADOW3.
Definition: etpwm.h:2046
EPWM_XCMP4_SHADOW1
@ EPWM_XCMP4_SHADOW1
XCMP4_SHADOW1.
Definition: etpwm.h:2010
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP7
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP7
Sync-in source is ECAP7 sync-out signal.
Definition: etpwm.h:266
EPWM_setDigitalCompareWindowLength
static void EPWM_setDigitalCompareWindowLength(uint32_t base, uint16_t windowLengthCount)
Definition: etpwm.h:6763
EPWM_setDiodeEmulationReentryDelay
static void EPWM_setDiodeEmulationReentryDelay(uint32_t base, uint8_t delay)
Definition: etpwm.h:9891
EPWM_disableRisingEdgeDelayCountShadowLoadMode
static void EPWM_disableRisingEdgeDelayCountShadowLoadMode(uint32_t base)
Definition: etpwm.h:4388
EPWM_DB_COUNTER_CLOCK_HALF_CYCLE
@ EPWM_DB_COUNTER_CLOCK_HALF_CYCLE
Dead band counter runs at 2*TBCLK rate.
Definition: etpwm.h:851
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM5
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM5
Sync-in source is EPWM5 sync-out signal.
Definition: etpwm.h:198
EPWM_DC_TRIP_TRIPIN2
@ EPWM_DC_TRIP_TRIPIN2
Trip 2.
Definition: etpwm.h:1323
EPWM_XCMP_4_CMPB
@ EPWM_XCMP_4_CMPB
Allocate XCMP5 - XCMP8 registers to CMPB.
Definition: etpwm.h:2136
EPWM_getCounterCompareShadowStatus
static bool EPWM_getCounterCompareShadowStatus(uint32_t base, EPWM_CounterCompareModule compModule)
Definition: etpwm.h:3449
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP3
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP3
Time base counter equals XCMP3.
Definition: etpwm.h:2080
EPWM_setPeriodLoadMode
static void EPWM_setPeriodLoadMode(uint32_t base, EPWM_PeriodLoadMode loadMode)
Definition: etpwm.h:2707
EPWM_AQ_OUTPUT_HIGH_DOWN_T2
@ EPWM_AQ_OUTPUT_HIGH_DOWN_T2
T2 event on count down and set output pins to high.
Definition: etpwm.h:699
EPWM_setActionQualifierShadowLoadMode
static void EPWM_setActionQualifierShadowLoadMode(uint32_t base, EPWM_ActionQualifierModule aqModule, EPWM_ActionQualifierLoadMode loadMode)
Definition: etpwm.h:3501
EPWM_setActionQualifierContSWForceAction
static void EPWM_setActionQualifierContSWForceAction(uint32_t base, EPWM_ActionQualifierOutputModule epwmOutput, EPWM_ActionQualifierSWOutput output)
Definition: etpwm.h:3950
EPWM_SOC_TBCTR_U_CMPB
@ EPWM_SOC_TBCTR_U_CMPB
time-base counter equal to CMPB when the timer is incrementing
Definition: etpwm.h:1286
EPWM_selectDiodeEmulationPWMsignal
static void EPWM_selectDiodeEmulationPWMsignal(uint32_t base, uint32_t channel, EPWM_DiodeEmulationSignal signal)
Definition: etpwm.h:9971
EPWM_FallingEdgeDelayLoadMode
EPWM_FallingEdgeDelayLoadMode
Definition: etpwm.h:829
EPWM_disablePhaseShiftLoad
static void EPWM_disablePhaseShiftLoad(uint32_t base)
Definition: etpwm.h:2761
EPWM_AQ_OUTPUT_ON_TIMEBASE_DOWN_CMPB
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_DOWN_CMPB
Time base counter down equals COMPB.
Definition: etpwm.h:565
EPWM_DE_LOW
@ EPWM_DE_LOW
a constant low signal
Definition: etpwm.h:2329
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT0
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT0
Trip source is INPUTXBAR out0 signal.
Definition: etpwm.h:2216
EPWM_clearOneShotTripZoneFlag
static void EPWM_clearOneShotTripZoneFlag(uint32_t base, uint16_t tzOSTFlags)
Definition: etpwm.h:5356
EPWM_DB_OUTPUT_B
@ EPWM_DB_OUTPUT_B
DB output is ePWMB.
Definition: etpwm.h:746
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT20
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT20
Trip source is INPUTXBAR out20 signal.
Definition: etpwm.h:2256
EPWM_TZ_CBC_PULSE_CLR_CNTR_ZERO
@ EPWM_TZ_CBC_PULSE_CLR_CNTR_ZERO
Clear CBC pulse when counter equals zero.
Definition: etpwm.h:1124
EPWM_GL_LOAD_PULSE_CNTR_CMPD_U
@ EPWM_GL_LOAD_PULSE_CNTR_CMPD_U
load when counter is equal to cmpd and cmpd is incrementing
Definition: etpwm.h:1553
EPWM_setXCMPShadowLevel
static void EPWM_setXCMPShadowLevel(uint32_t base, EPWM_XCMP_XLOADCTL_SHDWLEVEL level)
Definition: etpwm.h:9696
HRPWM_COUNTER_COMPARE_A
@ HRPWM_COUNTER_COMPARE_A
counter compare A
Definition: etpwm.h:1938
EPWM_AQ_SW_SH_LOAD_ON_CNTR_ZERO
@ EPWM_AQ_SW_SH_LOAD_ON_CNTR_ZERO
shadow mode load when counter equals zero
Definition: etpwm.h:728
EPWM_AQ_OUTPUT_TOGGLE_DOWN_T1
@ EPWM_AQ_OUTPUT_TOGGLE_DOWN_T1
T1 event on count down and toggle the output pins.
Definition: etpwm.h:685
EPWM_AQ_LOAD_ON_SYNC_ONLY
@ EPWM_AQ_LOAD_ON_SYNC_ONLY
load on sync only
Definition: etpwm.h:524
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM13
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM13
Sync-in source is EPWM13 sync-out signal.
Definition: etpwm.h:214
EPWM_LINK_COMP_D
@ EPWM_LINK_COMP_D
link COMPD registers
Definition: etpwm.h:434
EPWM_COUNT_MODE_UP_AFTER_SYNC
@ EPWM_COUNT_MODE_UP_AFTER_SYNC
Count up after sync event.
Definition: etpwm.h:138
EPWM_DC_EDGEFILT_EDGECNT_4
@ EPWM_DC_EDGEFILT_EDGECNT_4
Digital Compare Edge filter edge count = 5.
Definition: etpwm.h:1687
EPWM_enableValleyCapture
static void EPWM_enableValleyCapture(uint32_t base)
Definition: etpwm.h:7446
EPWM_setDeadBandDelayMode
static void EPWM_setDeadBandDelayMode(uint32_t base, EPWM_DeadBandDelayMode delayMode, bool enableDelayMode)
Definition: etpwm.h:4132
EPWM_DE_TRIP_SRC_CMPSSB7
@ EPWM_DE_TRIP_SRC_CMPSSB7
Trip source is CMPSSB7 signal.
Definition: etpwm.h:2314
EPWM_AQ_OUTPUT_HIGH_UP_T2
@ EPWM_AQ_OUTPUT_HIGH_UP_T2
T2 event on count up and set output pins to high.
Definition: etpwm.h:691
EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_CMPB
@ EPWM_AQ_OUTPUT_NO_CHANGE_DOWN_CMPB
Time base counter down equals COMPB and no change in the output pins.
Definition: etpwm.h:652
EPWM_setActionQualifierT2TriggerSource
static void EPWM_setActionQualifierT2TriggerSource(uint32_t base, EPWM_ActionQualifierTriggerSource trigger)
Definition: etpwm.h:3616
EPWM_disableTripZoneSignals
static void EPWM_disableTripZoneSignals(uint32_t base, uint32_t tzSignal)
Definition: etpwm.h:4758
EPWM_AQ_OUTPUT_TOGGLE_UP_CMPA
@ EPWM_AQ_OUTPUT_TOGGLE_UP_CMPA
Time base counter up equals COMPA and toggle the output pins.
Definition: etpwm.h:634
EPWM_DC_TRIP_TRIPIN8
@ EPWM_DC_TRIP_TRIPIN8
Trip 8.
Definition: etpwm.h:1329
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM30
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM30
Sync-in source is EPWM30 sync-out signal.
Definition: etpwm.h:248
EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG2
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG2
Sync-in source is FSI-RX3 RX Trigger 2 signal.
Definition: etpwm.h:308
EPWM_XCMP8_SHADOW1
@ EPWM_XCMP8_SHADOW1
XCMP8_SHADOW1.
Definition: etpwm.h:2018
EPWM_DB_INPUT_EPWMB
#define EPWM_DB_INPUT_EPWMB
Input signal is ePWMB.
Definition: etpwm.h:782
EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP5
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_XCMP5
Time base counter equals XCMP5.
Definition: etpwm.h:2084
EPWM_SOC_TBCTR_U_CMPA
@ EPWM_SOC_TBCTR_U_CMPA
time-base counter equal to CMPA when the timer is incrementing
Definition: etpwm.h:1278
EPWM_LINK_WITH_EPWM_26
@ EPWM_LINK_WITH_EPWM_26
link current ePWM with ePWM26
Definition: etpwm.h:414
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT1
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT1
Trip source is INPUTXBAR out1 signal.
Definition: etpwm.h:2218
EPWM_DE_TRIP_SRC_CMPSSA6
@ EPWM_DE_TRIP_SRC_CMPSSA6
Trip source is CMPSSA6 signal.
Definition: etpwm.h:2292
EPWM_XCMP_5_CMPA
@ EPWM_XCMP_5_CMPA
Allocate XCMP1 - XCMP5 registers to CMPA.
Definition: etpwm.h:2112
EPWM_clearCycleByCycleTripZoneFlag
static void EPWM_clearCycleByCycleTripZoneFlag(uint32_t base, uint16_t tzCBCFlags)
Definition: etpwm.h:5319
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT24
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT24
Trip source is INPUTXBAR out24 signal.
Definition: etpwm.h:2264
EPWM_ACTION_QUALIFIER_B
@ EPWM_ACTION_QUALIFIER_B
Action Qualifier B.
Definition: etpwm.h:498
EPWM_DC_MODULE_B
@ EPWM_DC_MODULE_B
Digital Compare Module B.
Definition: etpwm.h:1450
EPWM_DB_LOAD_ON_CNTR_PERIOD
@ EPWM_DB_LOAD_ON_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:797
EPWM_VALLEY_TRIGGER_EVENT_DCAEVT1
@ EPWM_VALLEY_TRIGGER_EVENT_DCAEVT1
Valley capture trigged by DCAEVT1 (Digital Compare A event 1)
Definition: etpwm.h:1606
EPWM_PERIOD_DIRECT_LOAD
@ EPWM_PERIOD_DIRECT_LOAD
PWM Period register access is directly.
Definition: etpwm.h:336
EPWM_DCxCTL_STEP
#define EPWM_DCxCTL_STEP
Defines to be used by the driver.
Definition: etpwm.h:2373
EPWM_XCMPReg
EPWM_XCMPReg
Definition: etpwm.h:1981
EPWM_LINK_DBFED
@ EPWM_LINK_DBFED
link DBFED registers
Definition: etpwm.h:437
EPWM_AQ_OUTPUT_ON_T1_COUNT_DOWN
@ EPWM_AQ_OUTPUT_ON_T1_COUNT_DOWN
T1 event on count down.
Definition: etpwm.h:569
HRPWM_MEP_CTRL_RISING_AND_FALLING_EDGE
@ HRPWM_MEP_CTRL_RISING_AND_FALLING_EDGE
MEP controls both rising and falling edge.
Definition: etpwm.h:1858
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP1
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP1
Sync-in source is ECAP1 sync-out signal.
Definition: etpwm.h:254
DebugP_assert
#define DebugP_assert(expression)
Function to call for assert check.
Definition: DebugP.h:159
EPWM_ActionQualifierModule
EPWM_ActionQualifierModule
Definition: etpwm.h:496
EPWM_ActionQualifierOutputModule
EPWM_ActionQualifierOutputModule
Definition: etpwm.h:714
EPWM_LINK_WITH_EPWM_25
@ EPWM_LINK_WITH_EPWM_25
link current ePWM with ePWM25
Definition: etpwm.h:413
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT30
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT30
Trip source is INPUTXBAR out30 signal.
Definition: etpwm.h:2276
EPWM_forceADCTrigger
static void EPWM_forceADCTrigger(uint32_t base, EPWM_ADCStartOfConversionType adcSOCType)
Definition: etpwm.h:6355
EPWM_DC_EVENT_INPUT_NOT_SYNCED
@ EPWM_DC_EVENT_INPUT_NOT_SYNCED
DC input signal is not synced with TBCLK.
Definition: etpwm.h:1493
EPWM_setDiodeEmulationMonitorModeStep
static void EPWM_setDiodeEmulationMonitorModeStep(uint32_t base, uint32_t direction, uint8_t stepsize)
Definition: etpwm.h:10174
EPWM_XMINMAX_ACTIVE
@ EPWM_XMINMAX_ACTIVE
XMINMAX_ACTIVE.
Definition: etpwm.h:2001
EPWM_AQ_TRIGGER_EVENT_TRIG_DCB_2
@ EPWM_AQ_TRIGGER_EVENT_TRIG_DCB_2
Digital compare event B 2.
Definition: etpwm.h:538
EPWM_DigitalCompareFilterInput
EPWM_DigitalCompareFilterInput
Definition: etpwm.h:1430
EPWM_setXCMPLoadMode
static void EPWM_setXCMPLoadMode(uint32_t base, EPWM_XCMPXloadCtlLoadMode mode)
Definition: etpwm.h:9658
EPWM_TZ_DC_OUTPUT_B1
@ EPWM_TZ_DC_OUTPUT_B1
Digital Compare output 1 B.
Definition: etpwm.h:910
EPWM_AQ_OUTPUT_LOW_UP_CMPA
@ EPWM_AQ_OUTPUT_LOW_UP_CMPA
Time base counter up equals COMPA and set output pins to low.
Definition: etpwm.h:630
EPWM_AQ_LOAD_ON_SYNC_CNTR_ZERO_PERIOD
@ EPWM_AQ_LOAD_ON_SYNC_CNTR_ZERO_PERIOD
load on sync or when counter equals zero or period
Definition: etpwm.h:522
EPWM_LINK_WITH_EPWM_1
@ EPWM_LINK_WITH_EPWM_1
link current ePWM with ePWM1
Definition: etpwm.h:389
EPWM_VALLEY_TRIGGER_EVENT_DCBEVT2
@ EPWM_VALLEY_TRIGGER_EVENT_DCBEVT2
Valley capture trigged by DCBEVT2 (Digital Compare B event 2)
Definition: etpwm.h:1612
EPWM_LINK_WITH_EPWM_4
@ EPWM_LINK_WITH_EPWM_4
link current ePWM with ePWM4
Definition: etpwm.h:392
EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG0
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG0
Sync-in source is FSI-RX2 RX Trigger 0 signal.
Definition: etpwm.h:296
EPWM_DB_LOAD_ON_CNTR_ZERO_PERIOD
@ EPWM_DB_LOAD_ON_CNTR_ZERO_PERIOD
load when counter equals zero or period
Definition: etpwm.h:799
EPWM_disableXLoad
static void EPWM_disableXLoad(uint32_t base)
Definition: etpwm.h:9634
EPWM_AQ_OUTPUT_LOW_UP_T2
@ EPWM_AQ_OUTPUT_LOW_UP_T2
T2 event on count up and set output pins to low.
Definition: etpwm.h:689
EPWM_getValleyCount
static uint16_t EPWM_getValleyCount(uint32_t base)
Definition: etpwm.h:7710
EPWM_AQ_TRIGGER_EVENT_TRIG_TZ_3
@ EPWM_AQ_TRIGGER_EVENT_TRIG_TZ_3
Trip zone 3.
Definition: etpwm.h:541
EPWM_disableDigitalCompareEdgeFilter
static void EPWM_disableDigitalCompareEdgeFilter(uint32_t base)
Definition: etpwm.h:6607
EPWM_COUNTER_MODE_DOWN
@ EPWM_COUNTER_MODE_DOWN
Down - count mode.
Definition: etpwm.h:348
HRPWM_enablePhaseShiftLoad
static void HRPWM_enablePhaseShiftLoad(uint32_t base)
Definition: etpwm.h:8845
EPWM_DE_TRIP_SRC_CMPSSB9
@ EPWM_DE_TRIP_SRC_CMPSSB9
Trip source is CMPSSB9 signal.
Definition: etpwm.h:2318
EPWM_SOC_TBCTR_D_CMPD
@ EPWM_SOC_TBCTR_D_CMPD
time-base counter equal to CMPD when the timer is decrementing
Definition: etpwm.h:1292
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM20
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM20
Sync-in source is EPWM20 sync-out signal.
Definition: etpwm.h:228
EPWM_enableXCMPMode
static void EPWM_enableXCMPMode(uint32_t base)
Definition: etpwm.h:9339
EPWM_DIODE_EMULATION_OST
@ EPWM_DIODE_EMULATION_OST
Diode Emulation mode is One Shot.
Definition: etpwm.h:2204
HRPWM_CHANNEL_B
@ HRPWM_CHANNEL_B
HRPWM B.
Definition: etpwm.h:1840
EPWM_disableCounterCompareShadowLoadMode
static void EPWM_disableCounterCompareShadowLoadMode(uint32_t base, EPWM_CounterCompareModule compModule)
Definition: etpwm.h:3293
HRPWM_enablePeriodControl
static void HRPWM_enablePeriodControl(uint32_t base)
Definition: etpwm.h:8802
EPWM_XCMP4_SHADOW2
@ EPWM_XCMP4_SHADOW2
XCMP4_SHADOW2.
Definition: etpwm.h:2031
EPWM_DE_SYNC_TRIPHorL
@ EPWM_DE_SYNC_TRIPHorL
synchronized version of TRIPH or TRIPL signal
Definition: etpwm.h:2325
EPWM_TZ_ACTION_EVENT_DCBEVT1
@ EPWM_TZ_ACTION_EVENT_DCBEVT1
DCBEVT1 (Digital Compare B event 1)
Definition: etpwm.h:942
EPWM_DC_CBC_LATCH_CLR_ON_CNTR_PERIOD
@ EPWM_DC_CBC_LATCH_CLR_ON_CNTR_PERIOD
Clear CBC latch when counter equals period.
Definition: etpwm.h:1521
EPWM_GL_LOAD_PULSE_CNTR_ZERO
@ EPWM_GL_LOAD_PULSE_CNTR_ZERO
load when counter is equal to zero
Definition: etpwm.h:1535
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM9
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM9
Sync-in source is EPWM9 sync-out signal.
Definition: etpwm.h:206
EPWM_DIODE_EMULATION_CBC
@ EPWM_DIODE_EMULATION_CBC
Diode Emulation mode is Cycle by Cycle.
Definition: etpwm.h:2202
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT21
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT21
Trip source is INPUTXBAR out21 signal.
Definition: etpwm.h:2258
EPWM_disableInterrupt
static void EPWM_disableInterrupt(uint32_t base)
Definition: etpwm.h:5494
EPWM_disableGlobalLoad
static void EPWM_disableGlobalLoad(uint32_t base)
Definition: etpwm.h:7774
EPWM_setRisingEdgeDeadBandDelayInput
static void EPWM_setRisingEdgeDeadBandDelayInput(uint32_t base, uint16_t input)
Definition: etpwm.h:4213
EPWM_XCMP_SHADOW2
#define EPWM_XCMP_SHADOW2
XCMP set = Shadow 3.
Definition: etpwm.h:1970
EPWM_selectDigitalCompareCBCLatchClearEvent
static void EPWM_selectDigitalCompareCBCLatchClearEvent(uint32_t base, EPWM_DigitalCompareModule dcModule, EPWM_DigitalCompareEvent dcEvent, EPWM_DigitalCompareCBCLatchClearEvent clearEvent)
Definition: etpwm.h:7132
HRPWM_COUNTER_COMPARE_B
@ HRPWM_COUNTER_COMPARE_B
counter compare B
Definition: etpwm.h:1939
HRPWM_setCounterCompareValue
static void HRPWM_setCounterCompareValue(uint32_t base, HRPWM_CounterCompareModule compModule, uint32_t compCount)
Definition: etpwm.h:8972
EPWM_setValleyTriggerEdgeCounts
static void EPWM_setValleyTriggerEdgeCounts(uint32_t base, uint16_t startCount, uint16_t stopCount)
Definition: etpwm.h:7550
EPWM_SYNC_IN_PULSE_SRC_INPUTXBAR_OUT4
@ EPWM_SYNC_IN_PULSE_SRC_INPUTXBAR_OUT4
Sync-in source is Input XBAR out4 signal.
Definition: etpwm.h:272
EPWM_XCMP6_SHADOW2
@ EPWM_XCMP6_SHADOW2
XCMP6_SHADOW2.
Definition: etpwm.h:2035
EPWM_disableChopper
static void EPWM_disableChopper(uint32_t base)
Definition: etpwm.h:4574
EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG3
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX2_RX_TRIG3
Sync-in source is FSI-RX2 RX Trigger 3 signal.
Definition: etpwm.h:302
EPWM_disableDigitalCompareSyncEvent
static void EPWM_disableDigitalCompareSyncEvent(uint32_t base, EPWM_DigitalCompareModule dcModule)
Definition: etpwm.h:7034
EPWM_LINK_COMP_C
@ EPWM_LINK_COMP_C
link COMPC registers
Definition: etpwm.h:433
EPWM_disableDigitalCompareADCTrigger
static void EPWM_disableDigitalCompareADCTrigger(uint32_t base, EPWM_DigitalCompareModule dcModule)
Definition: etpwm.h:6972
EPWM_COMP_LOAD_ON_CNTR_PERIOD
@ EPWM_COMP_LOAD_ON_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:471
EPWM_HSCLOCK_DIVIDER_4
@ EPWM_HSCLOCK_DIVIDER_4
Divide clock by 4.
Definition: etpwm.h:169
EPWM_XCMP_3_CMPB
@ EPWM_XCMP_3_CMPB
Allocate XCMP5 - XCMP7 registers to CMPB.
Definition: etpwm.h:2134
HRPWM_DB_MEP_CTRL_FED
@ HRPWM_DB_MEP_CTRL_FED
MEP controls Falling Edge Delay.
Definition: etpwm.h:1955
EPWM_getCounterCompareValue
static uint16_t EPWM_getCounterCompareValue(uint32_t base, EPWM_CounterCompareModule compModule)
Definition: etpwm.h:3399
EPWM_bypassDiodeEmulationLogic
static void EPWM_bypassDiodeEmulationLogic(uint32_t base)
Definition: etpwm.h:10074
EPWM_startOneShotSync
static void EPWM_startOneShotSync(uint32_t base)
Definition: etpwm.h:2886
EPWM_AQ_OUTPUT_LOW_ZERO
@ EPWM_AQ_OUTPUT_LOW_ZERO
Time base counter equals zero and set output pins to low.
Definition: etpwm.h:614
HRPWM_setTranslatorRemainder
static void HRPWM_setTranslatorRemainder(uint32_t base, uint16_t trremVal)
Definition: etpwm.h:8937
EPWM_XTBPRD_ACTIVE
@ EPWM_XTBPRD_ACTIVE
XTBPRD_ACTIVE.
Definition: etpwm.h:1999
EPWM_PeriodShadowLoadMode
EPWM_PeriodShadowLoadMode
Definition: etpwm.h:360
EPWM_DE_TRIPL
#define EPWM_DE_TRIPL
Values that can be passed to EPWM_configureDiodeEmulationTripSources()
Definition: etpwm.h:2362
EPWM_enableGlobalLoadRegisters
static void EPWM_enableGlobalLoadRegisters(uint32_t base, uint16_t loadRegister)
Definition: etpwm.h:7997
EPWM_AQ_OUTPUT_HIGH_PERIOD
@ EPWM_AQ_OUTPUT_HIGH_PERIOD
Time base counter equals period and set output pins to high.
Definition: etpwm.h:624
EPWM_CLOCK_DIVIDER_128
@ EPWM_CLOCK_DIVIDER_128
Divide clock by 128.
Definition: etpwm.h:156
EPWM_CounterCompareLoadMode
EPWM_CounterCompareLoadMode
Definition: etpwm.h:467
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM6
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM6
Sync-in source is EPWM6 sync-out signal.
Definition: etpwm.h:200
EPWM_TZ_ACTION_EVENT_TZA
@ EPWM_TZ_ACTION_EVENT_TZA
TZ1 - TZ6, DCAEVT2, DCAEVT1.
Definition: etpwm.h:938
HRPWM_setRisingEdgeDelayLoadMode
static void HRPWM_setRisingEdgeDelayLoadMode(uint32_t base, HRPWM_LoadMode loadEvent)
Definition: etpwm.h:9283
EPWM_setDigitalCompareEventSource
static void EPWM_setDigitalCompareEventSource(uint32_t base, EPWM_DigitalCompareModule dcModule, EPWM_DigitalCompareEvent dcEvent, EPWM_DigitalCompareEventSource dcEventSource)
Definition: etpwm.h:6841
EPWM_XCMP6_SHADOW1
@ EPWM_XCMP6_SHADOW1
XCMP6_SHADOW1.
Definition: etpwm.h:2014
EPWM_AQ_LOAD_ON_CNTR_PERIOD
@ EPWM_AQ_LOAD_ON_CNTR_PERIOD
load when counter equals period
Definition: etpwm.h:512
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM7
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM7
Sync-in source is EPWM7 sync-out signal.
Definition: etpwm.h:202
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP3
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_ECAP3
Sync-in source is ECAP3 sync-out signal.
Definition: etpwm.h:258
EPWM_disableTripZoneInterrupt
static void EPWM_disableTripZoneInterrupt(uint32_t base, uint16_t tzInterrupt)
Definition: etpwm.h:5119
EPWM_DC_WINDOW_START_TBCTR_BLANK_PULSE_MIX
@ EPWM_DC_WINDOW_START_TBCTR_BLANK_PULSE_MIX
Time base counter blank pulse mix.
Definition: etpwm.h:1393
EPWM_DeadBandClockMode
EPWM_DeadBandClockMode
Definition: etpwm.h:847
EPWM_VALLEY_TRIGGER_EVENT_DCAEVT2
@ EPWM_VALLEY_TRIGGER_EVENT_DCAEVT2
Valley capture trigged by DCAEVT2 (Digital Compare A event 2)
Definition: etpwm.h:1608
EPWM_XCMPXloadCtlLoadMode
EPWM_XCMPXloadCtlLoadMode
Definition: etpwm.h:2146
EPWM_XCMP4_ACTIVE
@ EPWM_XCMP4_ACTIVE
XCMP4_ACTIVE.
Definition: etpwm.h:1989
EPWM_forceTripZoneEvent
static void EPWM_forceTripZoneEvent(uint32_t base, uint16_t tzForceEvent)
Definition: etpwm.h:5390
EPWM_setInterruptEventCountInitValue
static void EPWM_setInterruptEventCountInitValue(uint32_t base, uint16_t eventCount)
Definition: etpwm.h:5761
HRPWM_PWMSYNC_SOURCE_PERIOD
@ HRPWM_PWMSYNC_SOURCE_PERIOD
Counter equals Period.
Definition: etpwm.h:1917
EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG3
@ EPWM_SYNC_IN_PULSE_SRC_FSIRX3_RX_TRIG3
Sync-in source is FSI-RX3 RX Trigger 3 signal.
Definition: etpwm.h:310
HRPWM_getHiResTimeBasePeriod
static uint16_t HRPWM_getHiResTimeBasePeriod(uint32_t base)
Definition: etpwm.h:8566
EPWM_GL_LOAD_PULSE_CNTR_CMPC_D
@ EPWM_GL_LOAD_PULSE_CNTR_CMPC_D
load when counter is equal to cmpc and cmpc is decrementing
Definition: etpwm.h:1551
EPWM_DE_COUNT_DOWN
#define EPWM_DE_COUNT_DOWN
Definition: etpwm.h:2353
EPWM_TZ_ACTION_EVENT_DCAEVT2
@ EPWM_TZ_ACTION_EVENT_DCAEVT2
DCAEVT2 (Digital Compare A event 2)
Definition: etpwm.h:941
EPWM_setInterruptSource
static void EPWM_setInterruptSource(uint32_t base, uint16_t interruptSource, uint16_t mixedSource)
Definition: etpwm.h:5530
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM2
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM2
Sync-in source is EPWM2 sync-out signal.
Definition: etpwm.h:192
EPWM_DC_TYPE_DCBH
@ EPWM_DC_TYPE_DCBH
Digital Compare B High.
Definition: etpwm.h:1310
EPWM_enableDigitalCompareSyncEvent
static void EPWM_enableDigitalCompareSyncEvent(uint32_t base, EPWM_DigitalCompareModule dcModule)
Definition: etpwm.h:7003
EPWM_clearSyncEvent
static void EPWM_clearSyncEvent(uint32_t base)
Definition: etpwm.h:2994
EPWM_XCMP_XLOADCTL_SHDWLEVEL_2
@ EPWM_XCMP_XLOADCTL_SHDWLEVEL_2
SHDW2, SHDW1 and Active registers are available.
Definition: etpwm.h:2167
EPWM_EMULATION_FREE_RUN
@ EPWM_EMULATION_FREE_RUN
Free run.
Definition: etpwm.h:126
EPWM_getDigitalCompareCBCLatchStatus
static bool EPWM_getDigitalCompareCBCLatchStatus(uint32_t base, EPWM_DigitalCompareModule dcModule, EPWM_DigitalCompareEvent dcEvent)
Definition: etpwm.h:7184
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM22
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM22
Sync-in source is EPWM22 sync-out signal.
Definition: etpwm.h:232
EPWM_setDigitalCompareEdgeFilterEdgeCount
static void EPWM_setDigitalCompareEdgeFilterEdgeCount(uint32_t base, EPWM_DigitalCompareEdgeFilterEdgeCount edgeCount)
Definition: etpwm.h:6668
EPWM_XCMP_XLOADCTL_SHDWLEVEL_1
@ EPWM_XCMP_XLOADCTL_SHDWLEVEL_1
SHDW1 and Active registers are available.
Definition: etpwm.h:2165
EPWM_AQ_LOAD_FREEZE
@ EPWM_AQ_LOAD_FREEZE
Freeze shadow to active load.
Definition: etpwm.h:516
EPWM_XCMP7_ACTIVE
@ EPWM_XCMP7_ACTIVE
XCMP7_ACTIVE.
Definition: etpwm.h:1995
EPWM_DC_TRIP_TRIPIN5
@ EPWM_DC_TRIP_TRIPIN5
Trip 5.
Definition: etpwm.h:1326
HRPWM_PWMSYNC_SOURCE_COMPC_UP
@ HRPWM_PWMSYNC_SOURCE_COMPC_UP
Counter equals COMPC when counting up.
Definition: etpwm.h:1921
EPWM_VALLEY_DELAY_MODE_SW_DELAY
@ EPWM_VALLEY_DELAY_MODE_SW_DELAY
Delay value equals the offset value defines by software.
Definition: etpwm.h:1636
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT10
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT10
Trip source is INPUTXBAR out10 signal.
Definition: etpwm.h:2236
EPWM_XTBPRD_SHADOW2
@ EPWM_XTBPRD_SHADOW2
XTBPRD_SHADOW2.
Definition: etpwm.h:2041
EPWM_XCMP2_SHADOW2
@ EPWM_XCMP2_SHADOW2
XCMP2_SHADOW2.
Definition: etpwm.h:2027
EPWM_DE_TRIP_SRC_INPUTXBAR_OUT27
@ EPWM_DE_TRIP_SRC_INPUTXBAR_OUT27
Trip source is INPUTXBAR out27 signal.
Definition: etpwm.h:2270
EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPA
@ EPWM_AQ_OUTPUT_ON_TIMEBASE_UP_CMPA
Time base counter up equals COMPA.
Definition: etpwm.h:559
EPWM_XCMP7_SHADOW1
@ EPWM_XCMP7_SHADOW1
XCMP7_SHADOW1.
Definition: etpwm.h:2016
EPWM_XCMP5_ACTIVE
@ EPWM_XCMP5_ACTIVE
XCMP5_ACTIVE.
Definition: etpwm.h:1991
EPWM_setTimeBasePeriod
static void EPWM_setTimeBasePeriod(uint32_t base, uint16_t periodCount)
Definition: etpwm.h:3070
HRPWM_CHANNEL_A
@ HRPWM_CHANNEL_A
HRPWM A.
Definition: etpwm.h:1839
EPWM_DB_COUNTER_CLOCK_FULL_CYCLE
@ EPWM_DB_COUNTER_CLOCK_FULL_CYCLE
Dead band counter runs at TBCLK rate.
Definition: etpwm.h:849
EPWM_SYNC_IN_PULSE_SRC_INPUTXBAR_OUT20
@ EPWM_SYNC_IN_PULSE_SRC_INPUTXBAR_OUT20
Sync-in source is Input XBAR out20 signal.
Definition: etpwm.h:274
EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM29
@ EPWM_SYNC_IN_PULSE_SRC_SYNCOUT_EPWM29
Sync-in source is EPWM29 sync-out signal.
Definition: etpwm.h:246
EPWM_XCMP_XLOADCTL_SHDWBUFPTR
EPWM_XCMP_XLOADCTL_SHDWBUFPTR
Definition: etpwm.h:2180
EPWM_DC_WINDOW_SOURCE_DCAEVT2
@ EPWM_DC_WINDOW_SOURCE_DCAEVT2
DC filter signal source is DCAEVT2.
Definition: etpwm.h:1432
EPWM_LINK_WITH_EPWM_31
@ EPWM_LINK_WITH_EPWM_31
link current ePWM with ePWM31
Definition: etpwm.h:419
HRPWM_getCounterCompareValue
static uint32_t HRPWM_getCounterCompareValue(uint32_t base, HRPWM_CounterCompareModule compModule)
Definition: etpwm.h:9018
EPWM_DC_TRIP_TRIPIN1
@ EPWM_DC_TRIP_TRIPIN1
Trip 1.
Definition: etpwm.h:1322
EPWM_DB_LOAD_ON_CNTR_ZERO
@ EPWM_DB_LOAD_ON_CNTR_ZERO
load when counter equals zero
Definition: etpwm.h:795
EPWM_TZ_DC_OUTPUT_A1
@ EPWM_TZ_DC_OUTPUT_A1
Digital Compare output 1 A.
Definition: etpwm.h:908
EPWM_AQ_OUTPUT_HIGH_DOWN_CMPB
@ EPWM_AQ_OUTPUT_HIGH_DOWN_CMPB
Time base counter down equals COMPB and set output pins to high.
Definition: etpwm.h:656