Tiva Driver Lib
|
Functions | |
void | QEIEnable (uint32_t ui32Base) |
void | QEIDisable (uint32_t ui32Base) |
void | QEIConfigure (uint32_t ui32Base, uint32_t ui32Config, uint32_t ui32MaxPosition) |
uint32_t | QEIPositionGet (uint32_t ui32Base) |
void | QEIPositionSet (uint32_t ui32Base, uint32_t ui32Position) |
int32_t | QEIDirectionGet (uint32_t ui32Base) |
bool | QEIErrorGet (uint32_t ui32Base) |
void | QEIVelocityEnable (uint32_t ui32Base) |
void | QEIVelocityDisable (uint32_t ui32Base) |
void | QEIVelocityConfigure (uint32_t ui32Base, uint32_t ui32PreDiv, uint32_t ui32Period) |
uint32_t | QEIVelocityGet (uint32_t ui32Base) |
void | QEIIntRegister (uint32_t ui32Base, void(*pfnHandler)(void)) |
void | QEIIntUnregister (uint32_t ui32Base) |
void | QEIIntEnable (uint32_t ui32Base, uint32_t ui32IntFlags) |
void | QEIIntDisable (uint32_t ui32Base, uint32_t ui32IntFlags) |
uint32_t | QEIIntStatus (uint32_t ui32Base, bool bMasked) |
void | QEIIntClear (uint32_t ui32Base, uint32_t ui32IntFlags) |
void QEIConfigure | ( | uint32_t | ui32Base, |
uint32_t | ui32Config, | ||
uint32_t | ui32MaxPosition | ||
) |
Configures the quadrature encoder.
ui32Base | is the base address of the quadrature encoder module. |
ui32Config | is the configuration for the quadrature encoder. See below for a description of this parameter. |
ui32MaxPosition | specifies the maximum position value. |
This function configures the operation of the quadrature encoder. The ui32Config parameter provides the configuration of the encoder and is the logical OR of several values:
ui32MaxPosition is the maximum value of the position integrator and is the value used to reset the position capture when in index reset mode and moving in the reverse (negative) direction.
int32_t QEIDirectionGet | ( | uint32_t | ui32Base | ) |
Gets the current direction of rotation.
ui32Base | is the base address of the quadrature encoder module. |
This function returns the current direction of rotation. In this case, current means the most recently detected direction of the encoder; it may not be presently moving but this is the direction it last moved before it stopped.
void QEIDisable | ( | uint32_t | ui32Base | ) |
Disables the quadrature encoder.
ui32Base | is the base address of the quadrature encoder module. |
This function disables operation of the quadrature encoder module.
void QEIEnable | ( | uint32_t | ui32Base | ) |
Enables the quadrature encoder.
ui32Base | is the base address of the quadrature encoder module. |
This function enables operation of the quadrature encoder module. The module must be configured before it is enabled.
bool QEIErrorGet | ( | uint32_t | ui32Base | ) |
Gets the encoder error indicator.
ui32Base | is the base address of the quadrature encoder module. |
This function returns the error indicator for the quadrature encoder. It is an error for both of the signals of the quadrature input to change at the same time.
void QEIIntClear | ( | uint32_t | ui32Base, |
uint32_t | ui32IntFlags | ||
) |
Clears quadrature encoder interrupt sources.
ui32Base | is the base address of the quadrature encoder module. |
ui32IntFlags | is a bit mask of the interrupt sources to be cleared. This parameter can be any of the QEI_INTERROR, QEI_INTDIR, QEI_INTTIMER, or QEI_INTINDEX values. |
The specified quadrature encoder interrupt sources are cleared, so that they no longer assert. This function must be called in the interrupt handler to keep the interrupt from being triggered again immediately upon exit.
void QEIIntDisable | ( | uint32_t | ui32Base, |
uint32_t | ui32IntFlags | ||
) |
Disables individual quadrature encoder interrupt sources.
ui32Base | is the base address of the quadrature encoder module. |
ui32IntFlags | is a bit mask of the interrupt sources to be disabled. This parameter can be any of the QEI_INTERROR, QEI_INTDIR, QEI_INTTIMER, or QEI_INTINDEX values. |
This function disables the indicated quadrature encoder interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt; disabled sources have no effect on the processor.
void QEIIntEnable | ( | uint32_t | ui32Base, |
uint32_t | ui32IntFlags | ||
) |
Enables individual quadrature encoder interrupt sources.
ui32Base | is the base address of the quadrature encoder module. |
ui32IntFlags | is a bit mask of the interrupt sources to be enabled. Can be any of the QEI_INTERROR, QEI_INTDIR, QEI_INTTIMER, or QEI_INTINDEX values. |
This function enables the indicated quadrature encoder interrupt sources. Only the sources that are enabled can be reflected to the processor interrupt; disabled sources have no effect on the processor.
void QEIIntRegister | ( | uint32_t | ui32Base, |
void(*)(void) | pfnHandler | ||
) |
Registers an interrupt handler for the quadrature encoder interrupt.
ui32Base | is the base address of the quadrature encoder module. |
pfnHandler | is a pointer to the function to be called when the quadrature encoder interrupt occurs. |
This function registers the handler to be called when a quadrature encoder interrupt occurs. This function enables the global interrupt in the interrupt controller; specific quadrature encoder interrupts must be enabled via QEIIntEnable(). It is the interrupt handler's responsibility to clear the interrupt source via QEIIntClear().
uint32_t QEIIntStatus | ( | uint32_t | ui32Base, |
bool | bMasked | ||
) |
Gets the current interrupt status.
ui32Base | is the base address of the quadrature encoder module. |
bMasked | is false if the raw interrupt status is required and true if the masked interrupt status is required. |
This function returns the interrupt status for the quadrature encoder module. Either the raw interrupt status or the status of interrupts that are allowed to reflect to the processor can be returned.
void QEIIntUnregister | ( | uint32_t | ui32Base | ) |
Unregisters an interrupt handler for the quadrature encoder interrupt.
ui32Base | is the base address of the quadrature encoder module. |
This function unregisters the handler to be called when a quadrature encoder interrupt occurs. This function also masks off the interrupt in the interrupt controller so that the interrupt handler no longer is called.
uint32_t QEIPositionGet | ( | uint32_t | ui32Base | ) |
Gets the current encoder position.
ui32Base | is the base address of the quadrature encoder module. |
This function returns the current position of the encoder. Depending upon the configuration of the encoder, and the incident of an index pulse, this value may or may not contain the expected data (that is, if in reset on index mode, if an index pulse has not been encountered, the position counter is not yet aligned with the index pulse).
void QEIPositionSet | ( | uint32_t | ui32Base, |
uint32_t | ui32Position | ||
) |
Sets the current encoder position.
ui32Base | is the base address of the quadrature encoder module. |
ui32Position | is the new position for the encoder. |
This function sets the current position of the encoder; the encoder position is then measured relative to this value.
void QEIVelocityConfigure | ( | uint32_t | ui32Base, |
uint32_t | ui32PreDiv, | ||
uint32_t | ui32Period | ||
) |
Configures the velocity capture.
ui32Base | is the base address of the quadrature encoder module. |
ui32PreDiv | specifies the predivider applied to the input quadrature signal before it is counted; can be one of QEI_VELDIV_1, QEI_VELDIV_2, QEI_VELDIV_4, QEI_VELDIV_8, QEI_VELDIV_16, QEI_VELDIV_32, QEI_VELDIV_64, or QEI_VELDIV_128. |
ui32Period | specifies the number of clock ticks over which to measure the velocity; must be non-zero. |
This function configures the operation of the velocity capture portion of the quadrature encoder. The position increment signal is predivided as specified by ui32PreDiv before being accumulated by the velocity capture. The divided signal is accumulated over ui32Period system clock before being saved and resetting the accumulator.
void QEIVelocityDisable | ( | uint32_t | ui32Base | ) |
Disables the velocity capture.
ui32Base | is the base address of the quadrature encoder module. |
This function disables operation of the velocity capture in the quadrature encoder module.
void QEIVelocityEnable | ( | uint32_t | ui32Base | ) |
Enables the velocity capture.
ui32Base | is the base address of the quadrature encoder module. |
This function enables operation of the velocity capture in the quadrature encoder module. The module must be configured before velocity capture is enabled.
uint32_t QEIVelocityGet | ( | uint32_t | ui32Base | ) |
Gets the current encoder speed.
ui32Base | is the base address of the quadrature encoder module. |
This function returns the current speed of the encoder. The value returned is the number of pulses detected in the specified time period; this number can be multiplied by the number of time periods per second and divided by the number of pulses per revolution to obtain the number of revolutions per second.