![]() |
RTEMS 6.1
|
#include "chip.h"#include <stdint.h>Go to the source code of this file.
Functions | |
| void | PWMC_ConfigureChannel (Pwm *pPwm, uint8_t channel, uint32_t prescaler, uint32_t alignment, uint32_t polarity) |
| Configures PWM a channel with the given parameters, basic configure function. | |
| void | PWMC_ConfigureChannelExt (Pwm *pPwm, uint8_t channel, uint32_t prescaler, uint32_t alignment, uint32_t polarity, uint32_t countEventSelect, uint32_t DTEnable, uint32_t DTHInverte, uint32_t DTLInverte) |
| Configures PWM a channel with the given parameters, extend configure function. The PWM controller must have been clocked in the PMC prior to calling this function. Beware: this function disables the channel. It waits until disable is effective. | |
| void | PWMC_ConfigureClocks (Pwm *pPwm, uint32_t clka, uint32_t clkb, uint32_t mck) |
| Configures PWM clocks A & B to run at the given frequencies. | |
| void | PWMC_SetPeriod (Pwm *pPwm, uint8_t channel, uint16_t period) |
| Sets the period value used by a PWM channel. | |
| void | PWMC_SetDutyCycle (Pwm *pPwm, uint8_t channel, uint16_t duty) |
| Sets the duty cycle used by a PWM channel. This function writes directly to the CDTY register if the channel is disabled; otherwise it uses the update register CDTYUPD. Note that the duty cycle must always be inferior or equal to the channel period. | |
| void | PWMC_SetDeadTime (Pwm *pPwm, uint8_t channel, uint16_t timeH, uint16_t timeL) |
| Sets the dead time used by a PWM channel. This function writes directly to the DT register if the channel is disabled; otherwise it uses the update register DTUPD. Note that the dead time must always be inferior or equal to the channel period. | |
| void | PWMC_ConfigureSyncChannel (Pwm *pPwm, uint32_t channels, uint32_t updateMode, uint32_t requestMode, uint32_t requestComparisonSelect) |
| Configures Synchronous channel with the given parameters. Beware: At this time, the channels should be disabled. | |
| void | PWMC_SetSyncChannelUpdatePeriod (Pwm *pPwm, uint8_t period) |
| Sets the update period of the synchronous channels. This function writes directly to the SCUP register if the channel #0 is disabled; otherwise it uses the update register SCUPUPD. | |
| void | PWMC_SetSyncChannelUpdateUnlock (Pwm *pPwm) |
| Sets synchronous channels update unlock. | |
| void | PWMC_EnableChannel (Pwm *pPwm, uint8_t channel) |
| Enables the given PWM channel. | |
| void | PWMC_DisableChannel (Pwm *pPwm, uint8_t channel) |
| Disables the given PWM channel. | |
| void | PWMC_EnableChannelIt (Pwm *pPwm, uint8_t channel) |
| Enables the period interrupt for the given PWM channel. | |
| void | PWMC_DisableChannelIt (Pwm *pPwm, uint8_t channel) |
| Disables the period interrupt for the given PWM channel. | |
| void | PWMC_EnableIt (Pwm *pPwm, uint32_t sources1, uint32_t sources2) |
| Enables the selected interrupts sources on a PWMC peripheral. | |
| void | PWMC_DisableIt (Pwm *pPwm, uint32_t sources1, uint32_t sources2) |
| Disables the selected interrupts sources on a PWMC peripheral. | |
| uint8_t | PWMC_WriteBuffer (Pwm *pwmc, void *buffer, uint32_t length) |
| void | PWMC_SetOverrideValue (Pwm *pPwm, uint32_t value) |
| Set PWM output override value. | |
| void | PWMC_EnableOverrideOutput (Pwm *pPwm, uint32_t value, uint32_t sync) |
| Enable override output. | |
| void | PWMC_OutputOverrideSelection (Pwm *pPwm, uint32_t value) |
| Output Selection for override PWM output. | |
| void | PWMC_DisableOverrideOutput (Pwm *pPwm, uint32_t value, uint32_t sync) |
| Disable override output. | |
| void | PWMC_SetFaultMode (Pwm *pPwm, uint32_t mode) |
| Set PWM fault mode. | |
| void | PWMC_FaultClear (Pwm *pPwm, uint32_t fault) |
| PWM fault clear. | |
| void | PWMC_SetFaultProtectionValue (Pwm *pPwm, uint32_t value) |
| Set PWM fault protection value. | |
| void | PWMC_EnableFaultProtection (Pwm *pPwm, uint32_t value) |
| Enable PWM fault protection. | |
| void | PWMC_ConfigureComparisonUnit (Pwm *pPwm, uint32_t x, uint32_t value, uint32_t mode) |
| Configure comparison unit. | |
| void | PWMC_ConfigureEventLineMode (Pwm *pPwm, uint32_t x, uint32_t mode) |
| Configure event line mode. | |
| uint32_t | PWMC_GetStatus2 (Pwm *pPwm) |
| Return PWM Interrupt Status2 Register. | |
Interface for configuration the Pulse Width Modulation Controller (PWM) peripheral.
| void PWMC_ConfigureChannel | ( | Pwm * | pPwm, |
| uint8_t | channel, | ||
| uint32_t | prescaler, | ||
| uint32_t | alignment, | ||
| uint32_t | polarity | ||
| ) |
Configures PWM a channel with the given parameters, basic configure function.
The PWM controller must have been clocked in the PMC prior to calling this function. Beware: this function disables the channel. It waits until disable is effective.
| channel | Channel number. |
| prescaler | Channel prescaler. |
| alignment | Channel alignment. |
| polarity | Channel polarity. |
| void PWMC_ConfigureChannelExt | ( | Pwm * | pPwm, |
| uint8_t | channel, | ||
| uint32_t | prescaler, | ||
| uint32_t | alignment, | ||
| uint32_t | polarity, | ||
| uint32_t | countEventSelect, | ||
| uint32_t | DTEnable, | ||
| uint32_t | DTHInverte, | ||
| uint32_t | DTLInverte | ||
| ) |
Configures PWM a channel with the given parameters, extend configure function. The PWM controller must have been clocked in the PMC prior to calling this function. Beware: this function disables the channel. It waits until disable is effective.
| channel | Channel number. |
| prescaler | Channel prescaler. |
| alignment | Channel alignment. |
| polarity | Channel polarity. |
| countEventSelect | Channel counter event selection. |
| DTEnable | Channel dead time generator enable. |
| DTHInverte | Channel Dead-Time PWMHx output Inverted. |
| DTLInverte | Channel Dead-Time PWMHx output Inverted. |
| void PWMC_ConfigureClocks | ( | Pwm * | pPwm, |
| uint32_t | clka, | ||
| uint32_t | clkb, | ||
| uint32_t | mck | ||
| ) |
Configures PWM clocks A & B to run at the given frequencies.
This function finds the best MCK divisor and prescaler values automatically.
| clka | Desired clock A frequency (0 if not used). |
| clkb | Desired clock B frequency (0 if not used). |
| mck | Master clock frequency. |
| void PWMC_ConfigureComparisonUnit | ( | Pwm * | pPwm, |
| uint32_t | x, | ||
| uint32_t | value, | ||
| uint32_t | mode | ||
| ) |
Configure comparison unit.
| x | comparison x index |
| value | comparison x value. |
| mode | comparison x mode |
| void PWMC_ConfigureEventLineMode | ( | Pwm * | pPwm, |
| uint32_t | x, | ||
| uint32_t | mode | ||
| ) |
Configure event line mode.
| x | Line x |
| mode | Bitwise OR of line mode selection |
| void PWMC_ConfigureSyncChannel | ( | Pwm * | pPwm, |
| uint32_t | channels, | ||
| uint32_t | updateMode, | ||
| uint32_t | requestMode, | ||
| uint32_t | requestComparisonSelect | ||
| ) |
Configures Synchronous channel with the given parameters. Beware: At this time, the channels should be disabled.
| channels | Bitwise OR of Synchronous channels. |
| updateMode | Synchronous channel update mode. |
| requestMode | PDC transfer request mode. |
| requestComparisonSelect | PDC transfer request comparison selection. |
| void PWMC_DisableChannel | ( | Pwm * | pPwm, |
| uint8_t | channel | ||
| ) |
Disables the given PWM channel.
Beware, channel will be effectively disabled at the end of the current period. Application can check channel is disabled using the following wait loop: while ((PWM->PWM_SR & (1 << channel)) != 0);
| channel | Channel number. |
| void PWMC_DisableChannelIt | ( | Pwm * | pPwm, |
| uint8_t | channel | ||
| ) |
Disables the period interrupt for the given PWM channel.
| channel | Channel number. |
| void PWMC_DisableIt | ( | Pwm * | pPwm, |
| uint32_t | sources1, | ||
| uint32_t | sources2 | ||
| ) |
Disables the selected interrupts sources on a PWMC peripheral.
| sources1 | Bitwise OR of selected interrupt sources of PWM_IDR1. |
| sources2 | Bitwise OR of selected interrupt sources of PWM_IDR2. |
| void PWMC_DisableOverrideOutput | ( | Pwm * | pPwm, |
| uint32_t | value, | ||
| uint32_t | sync | ||
| ) |
Disable override output.
| value | Bitwise OR of output selection. |
| sync | 0: enable the output asynchronously, 1: enable it synchronously |
| void PWMC_EnableChannel | ( | Pwm * | pPwm, |
| uint8_t | channel | ||
| ) |
Enables the given PWM channel.
This does NOT enable the corresponding pin;this must be done in the user code.
| channel | Channel number. |
| void PWMC_EnableChannelIt | ( | Pwm * | pPwm, |
| uint8_t | channel | ||
| ) |
Enables the period interrupt for the given PWM channel.
| channel | Channel number. |
| void PWMC_EnableFaultProtection | ( | Pwm * | pPwm, |
| uint32_t | value | ||
| ) |
Enable PWM fault protection.
| value | Bitwise OR of FPEx[y]. |
| void PWMC_EnableIt | ( | Pwm * | pPwm, |
| uint32_t | sources1, | ||
| uint32_t | sources2 | ||
| ) |
Enables the selected interrupts sources on a PWMC peripheral.
| sources1 | Bitwise OR of selected interrupt sources of PWM_IER1. |
| sources2 | Bitwise OR of selected interrupt sources of PWM_IER2. |
| void PWMC_EnableOverrideOutput | ( | Pwm * | pPwm, |
| uint32_t | value, | ||
| uint32_t | sync | ||
| ) |
Enable override output.
| value | Bitwise OR of output selection. |
| sync | 0: enable the output asynchronously, 1: enable it synchronously |
| void PWMC_FaultClear | ( | Pwm * | pPwm, |
| uint32_t | fault | ||
| ) |
PWM fault clear.
| fault | Bitwise OR of fault to clear. |
| uint32_t PWMC_GetStatus2 | ( | Pwm * | pPwm | ) |
Return PWM Interrupt Status2 Register.
| void PWMC_OutputOverrideSelection | ( | Pwm * | pPwm, |
| uint32_t | value | ||
| ) |
Output Selection for override PWM output.
| value | Bitwise OR of output override value. |
| void PWMC_SetDeadTime | ( | Pwm * | pPwm, |
| uint8_t | channel, | ||
| uint16_t | timeH, | ||
| uint16_t | timeL | ||
| ) |
Sets the dead time used by a PWM channel. This function writes directly to the DT register if the channel is disabled; otherwise it uses the update register DTUPD. Note that the dead time must always be inferior or equal to the channel period.
| channel | Channel number. |
| timeH | Dead time value for PWMHx output. |
| timeL | Dead time value for PWMLx output. |
| void PWMC_SetDutyCycle | ( | Pwm * | pPwm, |
| uint8_t | channel, | ||
| uint16_t | duty | ||
| ) |
Sets the duty cycle used by a PWM channel. This function writes directly to the CDTY register if the channel is disabled; otherwise it uses the update register CDTYUPD. Note that the duty cycle must always be inferior or equal to the channel period.
| channel | Channel number. |
| duty | Duty cycle value. |
| void PWMC_SetFaultMode | ( | Pwm * | pPwm, |
| uint32_t | mode | ||
| ) |
Set PWM fault mode.
| mode | Bitwise OR of fault mode. |
| void PWMC_SetFaultProtectionValue | ( | Pwm * | pPwm, |
| uint32_t | value | ||
| ) |
Set PWM fault protection value.
| value | Bitwise OR of fault protection value. |
| void PWMC_SetOverrideValue | ( | Pwm * | pPwm, |
| uint32_t | value | ||
| ) |
Set PWM output override value.
| value | Bitwise OR of output override value. |
| void PWMC_SetPeriod | ( | Pwm * | pPwm, |
| uint8_t | channel, | ||
| uint16_t | period | ||
| ) |
Sets the period value used by a PWM channel.
This function writes directly to the CPRD register if the channel is disabled; otherwise, it uses the update register CPRDUPD.
| channel | Channel number. |
| period | Period value. |
| void PWMC_SetSyncChannelUpdatePeriod | ( | Pwm * | pPwm, |
| uint8_t | period | ||
| ) |
Sets the update period of the synchronous channels. This function writes directly to the SCUP register if the channel #0 is disabled; otherwise it uses the update register SCUPUPD.
| period | update period. |
| void PWMC_SetSyncChannelUpdateUnlock | ( | Pwm * | pPwm | ) |
Sets synchronous channels update unlock.
Note: If the UPDM field is set to 0, writing the UPDULOCK bit to 1 triggers the update of the period value, the duty-cycle and the dead-time values of synchronous channels at the beginning of the next PWM period. If the field UPDM is set to 1 or 2, writing the UPDULOCK bit to 1 triggers only the update of the period value and of the dead-time values of synchronous channels. This bit is automatically reset when the update is done.