EPG Module¶
The Embedded Pattern Generator (EPG) module is a customizable pattern and clock generator which could serve many test and application scenarios that require a simple pattern generator or a periodic clock generator. The EPG module can also be used to capture and incoming serial stream of data. EPG driver provides functions for independent clock generation and clock division
-
group
epg_api
Defines
-
EPG_GCTL0_EPGOUTSEL_S
8U¶
-
EPG_GCTL0_EPGOUTSEL_M
0xFF00U¶
-
EPG_GCTL3_EPGOUT_SIGOUTSEL_BIT_L
4U¶
-
EPG_GCTL2_EPGOUT_CLKOUTSEL_BIT_L
4U¶
-
EPG_GCTL1_SIGGEN_CLKSEL_BIT_L
4U¶
-
EPG_CLKDIV_REG_OFF
12U¶
-
EPG_SIGGEN_REG_OFF
32U¶
-
EPG_CLKDIV_CLKOFFSET_BIT_L
8U¶
-
EPG_INT_GLOBAL_INT
0x1U¶ Global Interrupt Flag.
Interrupt Flags that can be passed to EPG_enableInterruptFlag(), EPG_diableInterruptFlag, EPG_forceInterruptFlag, EPG_clearInterruptFlag as intFlags parameter.
-
EPG_INT_SIGGEN0_DONE
0x2U¶ Signal Generator 0 Operation Done.
-
EPG_INT_SIGGEN0_FILL
0x4U¶ Signal Generator 0 Data Fill.
-
EPG_LOCK_REG_GCTL0
0x1U¶ GCTL0 Register.
Register Flags that can be passed to EPG_releaseLockReg, EPG_LockReg, EPG_commitRegLock as regFlags parameter.
-
EPG_LOCK_REG_GCTL1
0x2U¶ GCTL1 Register.
-
EPG_LOCK_REG_GCTL2
0x4U¶ GCTL2 Register.
-
EPG_LOCK_REG_GCTL3
0x8U¶ GCTL3 Register.
-
EPG_LOCK_REG_CLKDIV0_CTL0
0x10U¶ CLK divider 0 CTL0 Register.
-
EPG_LOCK_REG_CLKDIV1_CTL0
0x20U¶ CLK divider 1 CTL0 Register.
-
EPG_LOCK_REG_SIGGEN0_CTL0
0x40U¶ Signal gen 0 CTL0 Register.
-
EPG_LOCK_REG_SIGGEN0_CTL1
0x80U¶ Signal gen 0 CTL1 Register.
-
EPG_MX_SEL_LOCK_REG_MXSEL0
0x1U¶ Mux Select 0 Register.
Register Flags that can be passed to EPG_releaseLockMXSelReg, EPG_lockMXSelReg, EPG_commitMXSelRegLock as regFlags parameter.
Enums
-
enum
EPG_OutputSelect
¶ Values that can be passed to EPG_selectGlobalOutput() as the gPinOutSel parameter.
Values:
-
enumerator
EPG_OUT_SEL_SIG
= 0x0U¶ Signal Generator mux output.
-
enumerator
EPG_OUT_SEL_CLK
= 0x1U¶ Clock Generator mux output.
-
enumerator
-
enum
EPG_SignalGenOut
¶ Values that can be passed to EPG_selectSignalOutput() as the sigGenOutput parameter.
Values:
-
enumerator
EPG_SIGGEN0_DATATRANOUT0
= 0x0U¶ Signal Generator 0 Data Transform out 0.
-
enumerator
EPG_SIGGEN0_DATATRANOUT1
= 0x1U¶ Signal Generator 0 Data Transform out 1.
-
enumerator
EPG_SIGGEN0_DATATRANOUT2
= 0x2U¶ Signal Generator 0 Data Transform out 2.
-
enumerator
EPG_SIGGEN0_DATATRANOUT3
= 0x3U¶ Signal Generator 0 Data Transform out 3.
-
enumerator
EPG_SIGGEN0_DATATRANOUT4
= 0x4U¶ Signal Generator 0 Data Transform out 4.
-
enumerator
EPG_SIGGEN0_DATATRANOUT5
= 0x5U¶ Signal Generator 0 Data Transform out 5.
-
enumerator
EPG_SIGGEN0_DATATRANOUT6
= 0x6U¶ Signal Generator 0 Data Transform out 6.
-
enumerator
EPG_SIGGEN0_DATATRANOUT7
= 0x7U¶ Signal Generator 0 Data Transform out 7.
-
enumerator
-
enum
EPG_ClockGenOut
¶ Values that can be passed to EPG_selectClkOutput() as the clkGenOutput parameter.
Values:
-
enumerator
EPG_CLKGEN0_CLKOUT0_DCLK
= 0x0U¶ Clock Generator 0 Clk output 0 DCLK.
-
enumerator
EPG_CLKGEN0_CLKOUT1_DCLK
= 0x1U¶ Clock Generator 0 Clk output 1 DCLK.
-
enumerator
EPG_CLKGEN0_CLKOUT2_DCLK
= 0x2U¶ Clock Generator 0 Clk output 2 DCLK.
-
enumerator
EPG_CLKGEN0_CLKOUT3_DCLK
= 0x3U¶ Clock Generator 0 Clk output 3 DCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT0_DCLK
= 0x4U¶ Clock Generator 1 Clk output 0 DCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT1_DCLK
= 0x5U¶ Clock Generator 1 Clk output 1 DCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT2_DCLK
= 0x6U¶ Clock Generator 1 Clk output 2 DCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT3_DCLK
= 0x7U¶ Clock Generator 1 Clk output 3 DCLK.
-
enumerator
-
enum
EPG_ClockGenGclkOut
¶ Values that can be passed to EPG_selectSigGenClkSource() as the clkGenOutput parameter.
Values:
-
enumerator
EPG_CLKGEN0_CLKOUT0_GCLK
= 0x0U¶ Clock Generator 0 Clk output 0 GCLK.
-
enumerator
EPG_CLKGEN0_CLKOUT1_GCLK
= 0x1U¶ Clock Generator 0 Clk output 1 GCLK.
-
enumerator
EPG_CLKGEN0_CLKOUT2_GCLK
= 0x2U¶ Clock Generator 0 Clk output 2 GCLK.
-
enumerator
EPG_CLKGEN0_CLKOUT3_GCLK
= 0x3U¶ Clock Generator 0 Clk output 3 GCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT0_GCLK
= 0x4U¶ Clock Generator 1 Clk output 0 GCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT1_GCLK
= 0x5U¶ Clock Generator 1 Clk output 1 GCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT2_GCLK
= 0x6U¶ Clock Generator 1 Clk output 2 GCLK.
-
enumerator
EPG_CLKGEN1_CLKOUT3_GCLK
= 0x7U¶ Clock Generator 1 Clk output 3 GCLK.
-
enumerator
-
enum
EPG_ClockStopEdge
¶ Values that can be passed to EPG_setClkGenStopEdge(), as the stopEdge parameter.
Values:
-
enumerator
EPG_CLK_STOP_EDGE_CLKOUT0
= 0x000U¶ Stop on Clk output 0.
-
enumerator
EPG_CLK_STOP_EDGE_CLKOUT1
= 0x010U¶ Stop on Clk output 1.
-
enumerator
EPG_CLK_STOP_EDGE_CLKOUT2
= 0x100U¶ Stop on Clk output 2.
-
enumerator
EPG_CLK_STOP_EDGE_CLKOUT3
= 0x110U¶ Stop on Clk output 3.
-
enumerator
-
enum
EPG_SignalGenMode
¶ Values that can be passed to EPG_setSignalGenMode(), as the sigGenMode parameter.
Values:
-
enumerator
EPG_SIGGEN_MODE_BIT_BANG
= 0x0U¶ BIT BANG MODE.
-
enumerator
EPG_SIGGEN_MODE_SHIFT_RIGHT_ONCE
= 0x1U¶ SHIFT RIGHT ONCE MODE.
-
enumerator
EPG_SIGGEN_MODE_ROTATE_RIGHT_ONCE
= 0x2U¶ ROTATE RIGHT ONCE MODE.
-
enumerator
EPG_SIGGEN_MODE_ROTATE_RIGHT_REPEAT
= 0x3U¶ ROTATE RIGHT REPEAT MODE.
-
enumerator
EPG_SIGGEN_MODE_SHIFT_LEFT_ONCE
= 0x4U¶ SHIFT LEFT ONCE MODE.
-
enumerator
EPG_SIGGEN_MODE_ROTATE_LEFT_ONCE
= 0x5U¶ ROTATE LEFT ONCE MODE.
-
enumerator
EPG_SIGGEN_MODE_ROTATE_LEFT_REPEAT
= 0x6U¶ ROTATE LEFT REPEAT.
-
enumerator
EPG_SIGGEN_MODE_SHIFT_RIGHT_REPEAT
= 0x7U¶ SHIFT RIGHT REPEAT MODE.
-
enumerator
EPG_SIGGEN_MODE_SHIFT_LEFT_REPEAT
= 0x8U¶ SHIGT LEFT REPEAT MODE.
-
enumerator
-
enum
EPG_SignalGenData0In
¶ Values that can be passed to EPG_setData0In(), as the data0Input parameter.
Values:
-
enumerator
EPG_SIGGEN_DATA0_DATA_NEXT0
= 0x0U¶ DATA TRANSFORM NEXT[0].
-
enumerator
EPG_SIGGEN_DATA0_EPGIN0
= 0x1U¶ EPG Input 0.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN1
= 0x2U¶ EPG Input 1.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN2
= 0x3U¶ EPG Input 2.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN3
= 0x4U¶ EPG Input 3.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN4
= 0x5U¶ EPG Input 4.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN5
= 0x6U¶ EPG Input 5.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN6
= 0x7U¶ EPG Input 6.
-
enumerator
EPG_SIGGEN_DATA0_EPGIN7
= 0x8U¶ EPG Input 7.
-
enumerator
-
enum
EPG_SignalGenData63In
¶ Values that can be passed to EPG_setData63In(), as the data63Input parameter.
Values:
-
enumerator
EPG_SIGGEN_DATA63_DATA_NEXT63
= 0x0U¶ DATA TRANSFORM NEXT[63].
-
enumerator
EPG_SIGGEN_DATA63_EPGIN0
= 0x1U¶ EPG Input 0.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN1
= 0x2U¶ EPG Input 1.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN2
= 0x3U¶ EPG Input 2.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN3
= 0x4U¶ EPG Input 3.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN4
= 0x5U¶ EPG Input 4.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN5
= 0x6U¶ EPG Input 5.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN6
= 0x7U¶ EPG Input 6.
-
enumerator
EPG_SIGGEN_DATA63_EPGIN7
= 0x8U¶ EPG Input 7.
-
enumerator
-
enum
EPG_OUT
¶ Values that can be passed to EPG_selectEPGOutput(), EPG_selectClkOutput, EPG_selectSignalOutput as the gPinNum parameter.
Values:
-
enumerator
EPG_OUT0
= 0x0U¶ EPG Output 0.
-
enumerator
EPG_OUT1
= 0x1U¶ EPG Output 1.
-
enumerator
EPG_OUT2
= 0x2U¶ EPG Output 2.
-
enumerator
EPG_OUT3
= 0x3U¶ EPG Output 3.
-
enumerator
EPG_OUT4
= 0x4U¶ EPG Output 4.
-
enumerator
EPG_OUT5
= 0x5U¶ EPG Output 5.
-
enumerator
EPG_OUT6
= 0x6U¶ EPG Output 6.
-
enumerator
-
enum
EPG_SIGGEN
¶ Values that can be used for sigGenNum parameter.
Values:
-
enumerator
EPG_SIGGEN0
= 0x0U¶ Signal Generator 0.
-
enumerator
-
enum
EPG_CLKGEN
¶ Values that can be used for clkGenNum parameter.
Values:
-
enumerator
EPG_CLKGEN0
= 0x0U¶ Clock Generator 0.
-
enumerator
EPG_CLKGEN1
= 0x1U¶
-
enumerator
-
enum
EPG_DataIn
¶ Values that can be passed to EPG_selectEPGDataOut(), as the dataIn parameter.
Values:
-
enumerator
EPG_DATAIN_CANARX
= 0¶ CANA Receive input (RX)
-
enumerator
EPG_DATAIN_MCANARX
= 1¶ MCANA Receive input (RX)
-
enumerator
EPG_DATAIN_SD1C1
= 19¶ SDFM1 C1 input.
-
enumerator
EPG_DATAIN_SD1C2
= 20¶ SDFM1 C2 input.
-
enumerator
EPG_DATAIN_SD1C3
= 21¶ SDFM1 C3 input.
-
enumerator
EPG_DATAIN_SD1C4
= 22¶ SDFM1 C4 input.
-
enumerator
EPG_DATAIN_SD2C1
= 23¶ SDFM2 C1 input.
-
enumerator
EPG_DATAIN_SD2C2
= 24¶ SDFM2 C2 input.
-
enumerator
EPG_DATAIN_SD2C3
= 25¶ SDFM2 C3 input.
-
enumerator
EPG_DATAIN_SD2C4
= 26¶ SDFM2 C4 input.
-
enumerator
-
enum
EPG_DataOutSel
¶ Values that can be passed to EPG_selectEPGDataOut(), as the dataOutSel parameter.
Values:
-
enumerator
EPG_DATAOUT_DATAIN
= 0x0U¶ Input Data.
-
enumerator
EPG_DATAOUT_EPGOUT
= 0x1U¶ EPG output.
-
enumerator
Functions
-
void
EPG_enableGlobal
(uint32_t base)¶ Enable EPG and starts signal and clock generator
This function enables the EPG module and starts signal and clock generator.
- Parameters
base
: is the base address of the EPG module.
- Return
None.
-
void
EPG_disableGlobal
(uint32_t base)¶ Disable EPG and stops signal and clock generator
This function disables the EPG module and stops signal and clock generator.
- Parameters
base
: is the base address of the EPG module.
- Return
None.
-
void
EPG_selectEPGOutput
(uint32_t base, EPG_OUT gPinNum, EPG_OutputSelect gPinOutSel)¶ Select the EPG output source
This function selects the global EPG output source to be clock or signal. This output can then be routed to any GPIO through xbar, mux sel.
- Parameters
base
: is the base address of the EPG module.gPinNum
: is the global EPG Output number.gPinOutSel
: is the mux output of the gPinNum.
The gPinNum can take any of EPG_OUTX. The gPinOutSel can take any of the EPG_OUT_SEL_CLK, EPG_OUT_SEL_SIG values.
- Return
None.
-
void
EPG_selectSignalOutput
(uint32_t base, EPG_OUT gPinNum, EPG_SignalGenOut sigGenOutput)¶ Select the individual EPG pin signal data output
This function selects the individual EPG pin’s signal generator data output. This output can then be routed to EPG global output by selecting signal generator as source for that pin.
- Parameters
base
: is the base address of the EPG module.gPinNum
: is the global EPG Output number.sigGenOutput
: is the mux output of the gPinNum signal generators data output.
The gPinNum can take any of EPG_OUTX. The sigGenOutput can take any of the EPG_SIG_GEN0_DATATRANX values where X is a number from 0 to 7 specifying which data ouput of sig gen to be used.
- Return
None.
-
void
EPG_selectClkOutput
(uint32_t base, EPG_OUT gPinNum, EPG_ClockGenOut clkGenOutput)¶ Select the individual EPG pin clock data output
This function selects the individual EPG pin’s clock generator data output. This output can then be routed to EPG global output by selecting clock generator as source for that pin.
- Parameters
base
: is the base address of the EPG module.gPinNum
: is the global EPG Output number.clkGenOutput
: is the mux output of the gPinNum clock generator’s data output.
The gPinNum can take any of EPG_OUTX. The clkGenOutput can take any of the EPG_CLK_GENY_CLKOUTX_DCLK values where X is a number from 0 to 3 specifying which data ouput of clock gen and Y can be 0 or 1 specifying which clock generator to be used to be used
- Return
None.
-
void
EPG_selectSigGenClkSource
(uint32_t base, EPG_SIGGEN sigGenNum, EPG_ClockGenGclkOut clkGenOutput)¶ Select the signal generator’s clock source
This function selects the signal generator’s clock source. This clock source is used to generate the periodic or aperiodic signals by the signal generator.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number whose clk source is being configured based on the availability.clkGenOutput
: is the mux output of the clock generator’s data output to be selected as source.
The sigGenNum can take value of 0. The clkGenOutput can take any of the EPG_CLK_GENY_CLKOUTX_DCLK values where X is a number from 0 to 3 specifying which data ouput of clock gen to be used and Y can be 0 or 1 specifying which clock generator to be used
- Return
None.
-
void
EPG_setClkGenPeriod
(uint32_t base, EPG_CLKGEN clkGenNum, uint32_t periodValue)¶ Set the clock generator period
This function Sets the clock generator’s period Clock divider counter counts up to
periodValue and snaps back to 0.- Parameters
base
: is the base address of the EPG module.clkGenNum
: is the clock generator number whose period is being set.periodValue
: is the period value in number of system clk cycles
The clkGenNum can take values from 0 to 1 inclusive. The periodValue can take a maximum value of EPG_CLKDIV0_CTL0_PRD_M.
- Return
None.
-
void
EPG_setClkGenStopEdge
(uint32_t base, EPG_CLKGEN clkGenNum, EPG_ClockStopEdge stopEdge)¶ Set the clock generator stop value
This function Sets the clock generator’s stop value This Determines on which of the CLKOUTs edge clock generation is stopped following a clear of SIGGEN1_CTL0.EN.
- Parameters
base
: is the base address of the EPG module.clkGenNum
: is the clock generator number which is being configured.stopEdge
: is the Edge signal at which clock stops.
The clkGenNum can take values from 0 to 1 inclusive. The stopEdge can take any of EPG_CLK_STOP_EDGE_CLKOUTX value where X signifies the clock out number varying from 0 to 3 inclusive
- Return
None.
-
void
EPG_setClkGenOffset
(uint32_t base, EPG_CLKGEN clkGenNum, uint32_t clkGenOutputNum, uint32_t offsetValue)¶ Set the clock generator clock offset
This function Sets the clock generator output’s offset. This Determines number of source clock cycles by which the divided clock output is delayed.
- Parameters
base
: is the base address of the EPG module.clkGenNum
: is the clock generator number which is being configured.clkGenOutputNum
: is the output number of particular clock generator whose offset is being set.offsetValue
: is the offset value in number of system clk cycles
The clkGenNum can take values from 0 to 1 inclusive. The clkGenOutputNum can take values from 0 to 3 inclusive. The offsetValue can take a maximum value of EPG_CLKDIV0_CLKOFFSET_CLK0OFFSET_M.
- Return
None.
-
void
EPG_enableSignalGen
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Enable EPG signal generator
This function enables the Signal generator after which the signal generator functions as per the mode definition.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is enabled.
The sigGenNum can take value of 0.
- Return
None.
-
void
EPG_disableSignalGen
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Disable EPG signal generator
This function Disables the Signal generator and stops its operation.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is disabled.
The sigGenNum can take value of 0.
- Return
None.
-
void
EPG_setSignalGenMode
(uint32_t base, EPG_SIGGEN sigGenNum, EPG_SignalGenMode sigGenMode)¶ Set EPG signal generator Mode
This function Sets the EPG signal generator’s Mode. This mode effects the operation of the signal generator on the DATA input.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.sigGenMode
: is the Signal generator mode being set.
The sigGenNum can take value of 0. The sigGenMode can take any of the EPG_SIGGEN_MODE_BIT_BANG, EPG_SIGGEN_MODE_SHIFT_RIGHT_ONCE, EPG_SIGGEN_MODE_ROTATE_RIGHT_ONCE, EPG_SIGGEN_MODE_ROTATE_RIGHT_REPEAT, EPG_SIGGEN_MODE_SHIFT_LEFT_ONCE, EPG_SIGGEN_MODE_ROTATE_LEFT_ONCE, EPG_SIGGEN_MODE_ROTATE_LEFT_REPEAT, EPG_SIGGEN_MODE_SHIFT_RIGHT_REPEAT, EPG_SIGGEN_MODE_SHIFT_LEFT_REPEAT values.
- Return
None.
-
void
EPG_enableBitRevOnDataIn
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Perform bit reversal on input of signal generator
This function set’s signal generator to Perform bit reversal on input. This results in bit reversal on data input of data transform block.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.
The sigGenNum can take value of 0.
- Return
None.
-
void
EPG_disableBitRevOnDataIn
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Disable bit reversal on input of signal generator
This function set’s signal generator to disable bit reversal on input. This results in no bit reversal on data input of data transform block.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.
The sigGenNum can take value of 0.
- Return
None.
-
void
EPG_enableBitRevOnDataOut
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Perform bit reversal on output of signal generator
This function set’s signal generator to Perform bit reversal on output. This results in bit reversal on data output of data transform block.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.
The sigGenNum can take value of 0.
- Return
None.
-
void
EPG_disableBitRevOnDataOut
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Disable bit reversal on output of signal generator
This function set’s signal generator to disable bit reversal on output. This results in no bit reversal on data output of data transform block.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.
The sigGenNum can take value of 0.
- Return
None.
-
void
EPG_setDataBitLen
(uint32_t base, EPG_SIGGEN sigGenNum, uint32_t bitLength)¶ Set EPG signal generators data bit length
This function Sets EPG signal generators data bit length. This defines the number bits which participates in the shift rotate operations.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.bitLength
: is the number of bits of the signal generator input data.
The sigGenNum can take value of 0. The bitLength can have a maximum value of 64.
- Return
None.
-
void
EPG_setData0In
(uint32_t base, EPG_SIGGEN sigGenNum, EPG_SignalGenData0In data0Input)¶ Set EPG signal generator data bit 0 input
This function Sets EPG signal generator data bit 0 input. This provides the ability to capture the data.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.data0Input
: is the source input of bit 0 of Data Register.
The sigGenNum can take value of 0. The data0Input can take any of the EPG_SIGGEN_DATA0_DATA_NEXT0, EPG_SIGGEN_DATA0_EPGINX values where X can be from 0 to 7 which signifies signal input to the EPG.
- Return
None.
-
void
EPG_setData63In
(uint32_t base, EPG_SIGGEN sigGenNum, EPG_SignalGenData63In data63Input)¶ Set EPG signal generator data bit 63 input
This function Sets EPG signal generator data bit 63 input. This provides the ability to capture the data.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.data0Input
: is the source input of bit 63 of Data Register.
The sigGenNum can take value of 0. The data63Input can take any of the EPG_SIGGEN_DATA63_DATA_NEXT63, EPG_SIGGEN_DATA63_EPGINX values where X can be from 0 to 7 which signifies signal input to the EPG.
- Return
None.
-
void
EPG_setData0Word
(uint32_t base, EPG_SIGGEN sigGenNum, uint32_t data0)¶ Write EPG signal generator data 0 [0:31] input
This function Writes EPG signal generator data 0 [0:31] input. This is the Data used in signal bit stream.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.data0
: is the first 32 bits of Data Register.
The sigGenNum can take value of 0. The data0 can take any 32 bit value.
- Return
None.
-
void
EPG_setData1Word
(uint32_t base, EPG_SIGGEN sigGenNum, uint32_t data1)¶ Write EPG signal generator data 1 [32:63] input
This function Writes EPG signal generator data 1 [32:63] input. This is the Data used in signal bit stream.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.data0
: is the last 32 bits of 63 bit Data Register.
The sigGenNum can take value of 0. The data1 can take any 32 bit value.
- Return
None.
-
uint32_t
EPG_getData0ActiveReg
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Get EPG signal generator data 0 active register [0:31] value
This function Reads EPG signal generator data 0 active [0:31] value which is the Data resulted from the transformation.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.
The sigGenNum can take value of 0.
- Return
Returns the Data 0 Active register value.
-
uint32_t
EPG_getData1ActiveReg
(uint32_t base, EPG_SIGGEN sigGenNum)¶ Get EPG signal generator data 1 active register [32:64] value
This function Reads EPG signal generator data 1 active [32:64] value which is the Data resulted from the transformation.
- Parameters
base
: is the base address of the EPG module.sigGenNum
: is the Signal generator number which is beign configured.
The sigGenNum can take value of 0.
- Return
Returns the Data 1 Active register value.
-
void
EPG_enableInterruptFlag
(uint32_t base, uint32_t intFlags)¶ Enable the EPG interrupt sources
This function enables the indicated EPG interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor.
- Parameters
base
: is the base address of the EPG module.intFlags
: is a bit mask of the interrupt sources to be enabled.
The intFlags parameter can be any of the EPG_INT_GLOBAL_INT, EPG_INT_SIGGEN0_DONE, or EPG_INT_SIGGEN0_FILL values.
- Return
None.
-
void
EPG_disableInterruptFlag
(uint32_t base, uint32_t intFlags)¶ Disables the EPG interrupt sources
This function enables the indicated EPG interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor.
- Parameters
base
: is the base address of the EPG module.intFlags
: is a bit mask of the interrupt sources to be disabled.
The intFlags parameter can be any of the EPG_INT_GLOBAL_INT, EPG_INT_SIGGEN0_DONE, or EPG_INT_SIGGEN0_FILL values.
- Return
None.
-
uint32_t
EPG_getInterruptStatus
(uint32_t base)¶ Get the EPG interrupt sources
This function returns the EPG interrupt sources that are active.
- Parameters
base
: is the base address of the EPG module.
- Return
Returns the bit mask of the interrupt sources which are currently triggered.
-
void
EPG_clearInterruptFlag
(uint32_t base, uint32_t intFlags)¶ Clear EPG Interrupt Sources
This function clears the indicated EPG interrupt sources if pending.
- Parameters
base
: is the base address of the EPG module.intFlags
: is a bit mask of the interrupt sources to be clear.
The intFlags parameter can be any of the EPG_INT_GLOBAL_INT, EPG_INT_SIGGEN0_DONE, or EPG_INT_SIGGEN0_FILL values.
- Return
None.
-
void
EPG_forceInterruptFlag
(uint32_t base, uint32_t intFlags)¶ Force EPG Interrupt Sources
This function triggers the indicated EPG interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt. Disabled sources have no effect on the processor.
- Parameters
base
: is the base address of the EPG module.intFlags
: is a bit mask of the interrupt sources to be trigger.
The intFlags parameter can be any of the EPG_INT_GLOBAL_INT, EPG_INT_SIGGEN0_DONE, or EPG_INT_SIGGEN0_FILL values.
- Return
None.
-
void
EPG_lockReg
(uint32_t base, uint32_t regFlags)¶ Lock EPG Register
This function Locks EPG Register from being written further.
- Parameters
base
: is the base address of the EPG module.regFlags
: is a bit mask of the EPG registers that need to locked.
The regFlags parameter can be any of the EPG_LOCK_REG_GCTL0, EPG_LOCK_REG_GCTL1, EPG_LOCK_REG_GCTL2 EPG_LOCK_REG_GCTL3, EPG_LOCK_REG_CLKDIV0_CTL0, EPG_LOCK_REG_CLKDIV1_CTL0, EPG_LOCK_REG_SIGGEN0_CTL0, EPG_LOCK_REG_SIGGEN0_CTL1 values.
- Return
None.
-
void
EPG_releaseLockReg
(uint32_t base, uint32_t regFlags)¶ Release Locks of EPG Register
This function Releases Locks of EPG Register so they can be overwritten.
- Parameters
base
: is the base address of the EPG module.regFlags
: is a bit mask of EPG registers whose lock to be released.
The regFlags parameter can be any of the EPG_LOCK_REG_GCTL0, EPG_LOCK_REG_GCTL1, EPG_LOCK_REG_GCTL2 EPG_LOCK_REG_GCTL3, EPG_LOCK_REG_CLKDIV0_CTL0, EPG_LOCK_REG_CLKDIV1_CTL0, EPG_LOCK_REG_SIGGEN0_CTL0, EPG_LOCK_REG_SIGGEN0_CTL1 values.
- Return
None.
-
void
EPG_commitRegLock
(uint32_t base, uint32_t regFlags)¶ Commit EPG registers Lock
This function Commits Locks of EPG lock register so that the EPG locks cannot be removed.
- Parameters
base
: is the base address of the EPG module.regFlags
: is a bit mask of EPG registers whose locks to be commited.
The regFlags parameter can be any of the EPG_LOCK_REG_GCTL0, EPG_LOCK_REG_GCTL1, EPG_LOCK_REG_GCTL2 EPG_LOCK_REG_GCTL3, EPG_LOCK_REG_CLKDIV0_CTL0, EPG_LOCK_REG_CLKDIV1_CTL0, EPG_LOCK_REG_SIGGEN0_CTL0, EPG_LOCK_REG_SIGGEN0_CTL1 values.
- Return
None.
-
void
EPG_lockMXSelReg
(uint32_t muxbase, uint32_t regFlags)¶ Lock EPG Mux Select Register
This function Locks EPG Mux Select Register from being written further.
- Parameters
muxbase
: is the base address of the EPG Mux module.regFlags
: is a bit mask of the EPG Mux Select registers.
The regFlags parameter can be of the EPG_MX_SEL_LOCK_REG_MXSEL0
- Return
None.
-
void
EPG_releaseLockMXSelReg
(uint32_t muxbase, uint32_t regFlags)¶ Release Locks of EPG Mux Select Register
This function Releases Locks of EPG Mux Sel Registers to allow overwriting the registers.
- Parameters
muxbase
: is the base address of the EPG Mux module.regFlags
: is a bit mask of the EPG Mux Select registers.
The regFlags parameter can be of the EPG_MX_SEL_LOCK_REG_MXSEL0
- Return
None.
-
void
EPG_commitMXSelRegLock
(uint32_t muxbase, uint32_t regFlags)¶ Commit EPG Mux Select Registers Lock
This function Commits the Locks of EPG Mux Sel Registers so that the locks cannot be updated further.
- Parameters
muxbase
: is the base address of the EPG Mux module.regFlags
: is a bit mask of the EPG Mux Select registers.
The regFlags parameter can be of the EPG_MX_SEL_LOCK_REG_MXSEL0
- Return
None.
-
void
EPG_selectEPGDataOut
(uint32_t muxbase, EPG_DataIn dataIn, EPG_DataOutSel dataOutSel)¶ Select EPG Data Output
This function selects EPG Modules’s Final Data Output which can be used to feed EPG outputs to inputs of certain IPs or bypass the IP’s input as is.
- Parameters
muxbase
: is the base address of the EPG MUX module.dataIn
: is the bit of EPG Data Input to be configured.dataOutSel
: is the source of dataOutBit to configure.
The dataIn can take EPG_DATAIN. The dataOutSel can take any of the EPG_DATA_OUT_DATA_IN, EPG_DATA_OUT_EPG_OUT values.
- Return
None.
-
The code for this module is contained in driverlib/epg.c, with driverlib/epg.h containing the API declarations for use by applications.