Hardware Interfaces and Registers
Interfaces
Referring to the Comportable guideline for peripheral device functionality, the module pwm
has the following hardware interfaces defined.
Primary Clock: clk_i
Other Clocks: clk_core_i
Bus Device Interfaces (TL-UL): tl
Bus Host Interfaces (TL-UL): none
Peripheral Pins for Chip IO:
Pin name | direction | Description |
---|---|---|
pwm[5:0] | output | Pulse output. Note that though this output is always enabled, there is a formal set of enable pins (pwm_en_o) which are required for top-level integration of comportable IPs. |
Inter-Module Signals: Reference
Port Name | Package::Struct | Type | Act | Width | Description |
---|---|---|---|---|---|
tl | tlul_pkg::tl | req_rsp | rsp | 1 |
Interrupts: none
Security Alerts:
Alert Name | Description |
---|---|
fatal_fault | This fatal alert is triggered when a fatal TL-UL bus integrity fault is detected. |
Security Countermeasures:
Countermeasure ID | Description |
---|---|
PWM.BUS.INTEGRITY | End-to-end bus integrity scheme. |
Registers
Summary | |||
---|---|---|---|
Name | Offset | Length | Description |
pwm.ALERT_TEST | 0x0 | 4 | Alert Test Register |
pwm.REGWEN | 0x4 | 4 | Register write enable for all control registers |
pwm.CFG | 0x8 | 4 | Configuration register |
pwm.PWM_EN | 0xc | 4 | Enable PWM operation for each channel |
pwm.INVERT | 0x10 | 4 | Invert the PWM output for each channel |
pwm.PWM_PARAM_0 | 0x14 | 4 | Basic PWM Channel Parameters |
pwm.PWM_PARAM_1 | 0x18 | 4 | Basic PWM Channel Parameters |
pwm.PWM_PARAM_2 | 0x1c | 4 | Basic PWM Channel Parameters |
pwm.PWM_PARAM_3 | 0x20 | 4 | Basic PWM Channel Parameters |
pwm.PWM_PARAM_4 | 0x24 | 4 | Basic PWM Channel Parameters |
pwm.PWM_PARAM_5 | 0x28 | 4 | Basic PWM Channel Parameters |
pwm.DUTY_CYCLE_0 | 0x2c | 4 | Controls the duty_cycle of each channel. |
pwm.DUTY_CYCLE_1 | 0x30 | 4 | Controls the duty_cycle of each channel. |
pwm.DUTY_CYCLE_2 | 0x34 | 4 | Controls the duty_cycle of each channel. |
pwm.DUTY_CYCLE_3 | 0x38 | 4 | Controls the duty_cycle of each channel. |
pwm.DUTY_CYCLE_4 | 0x3c | 4 | Controls the duty_cycle of each channel. |
pwm.DUTY_CYCLE_5 | 0x40 | 4 | Controls the duty_cycle of each channel. |
pwm.BLINK_PARAM_0 | 0x44 | 4 | Hardware controlled blink/heartbeat parameters. |
pwm.BLINK_PARAM_1 | 0x48 | 4 | Hardware controlled blink/heartbeat parameters. |
pwm.BLINK_PARAM_2 | 0x4c | 4 | Hardware controlled blink/heartbeat parameters. |
pwm.BLINK_PARAM_3 | 0x50 | 4 | Hardware controlled blink/heartbeat parameters. |
pwm.BLINK_PARAM_4 | 0x54 | 4 | Hardware controlled blink/heartbeat parameters. |
pwm.BLINK_PARAM_5 | 0x58 | 4 | Hardware controlled blink/heartbeat parameters. |
pwm.ALERT_TEST @ 0x0
Alert Test Register Reset default = 0x0, mask 0x1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0 | wo | 0x0 | fatal_fault | Write 1 to trigger one alert event of this kind. |
pwm.REGWEN @ 0x4
Register write enable for all control registers Reset default = 0x1, mask 0x1
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0 | rw0c | 0x1 | REGWEN | When true, all writable registers can be modified. When false, they become read-only. Defaults true, write zero to clear. This can be cleared after initial configuration at boot in order to lock in the listed register settings. |
pwm.CFG @ 0x8
Configuration register Reset default = 0x38008000, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
26:0 | rw | 0x8000 | CLK_DIV | Sets the period of each PWM beat to be (CLK_DIV+1) input clock periods. Since PWM pulses are generated once every 2^(DC_RESN+1) beats, the period between output pulses is 2^(DC_RESN+1)*(CLK_DIV+1) times longer than the input clock period. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30:27 | rw | 0x7 | DC_RESN | Phase Resolution (logarithmic). All duty-cycle and phase shift registers represent fractional PWM cycles, expressed in units of 2^16 PWM cycles. Each PWM cycle is divided into 2^(DC_RESN+1) time slices, and thus only the (DC_RESN+1) most significant bits of each phase or duty cycle register are relevant. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | CNTR_EN | Assert this bit to enable the PWM phase counter. Clearing this bit disables and resets the phase counter. |
pwm.PWM_EN @ 0xc
Enable PWM operation for each channel Reset default = 0x0, mask 0x3f
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0 | rw | 0x0 | EN_0 | Write 1 to this bit to enable PWM pulses on the corresponding channel. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1 | rw | 0x0 | EN_1 | Write 1 to this bit to enable PWM pulses on the corresponding channel. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | rw | 0x0 | EN_2 | Write 1 to this bit to enable PWM pulses on the corresponding channel. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | rw | 0x0 | EN_3 | Write 1 to this bit to enable PWM pulses on the corresponding channel. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | rw | 0x0 | EN_4 | Write 1 to this bit to enable PWM pulses on the corresponding channel. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 | rw | 0x0 | EN_5 | Write 1 to this bit to enable PWM pulses on the corresponding channel. |
pwm.INVERT @ 0x10
Invert the PWM output for each channel Reset default = 0x0, mask 0x3f
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
0 | rw | 0x0 | INVERT_0 | Write 1 to this bit to invert the output for each channel, so that the corresponding output is active-low. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1 | rw | 0x0 | INVERT_1 | Write 1 to this bit to invert the output for each channel, so that the corresponding output is active-low. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
2 | rw | 0x0 | INVERT_2 | Write 1 to this bit to invert the output for each channel, so that the corresponding output is active-low. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 | rw | 0x0 | INVERT_3 | Write 1 to this bit to invert the output for each channel, so that the corresponding output is active-low. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4 | rw | 0x0 | INVERT_4 | Write 1 to this bit to invert the output for each channel, so that the corresponding output is active-low. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
5 | rw | 0x0 | INVERT_5 | Write 1 to this bit to invert the output for each channel, so that the corresponding output is active-low. |
pwm.PWM_PARAM_0 @ 0x14
Basic PWM Channel Parameters Reset default = 0x0, mask 0xc000ffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | PHASE_DELAY_0 | Phase delay of the PWM rising edge, in units of 2^(-16) PWM cycles | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29:16 | Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | rw | 0x0 | HTBT_EN_0 | Modulates blink behavior to create a heartbeat effect. When HTBT_EN is set, the duty cycle increases (or decreases) linearly from DUTY_CYCLE.A to DUTY_CYCLE.B and back, in steps of (BLINK_PARAM.Y+1), with an increment (decrement) once every (BLINK_PARAM.X+1) PWM cycles. When HTBT_EN is cleared, the standard blink behavior applies, meaning that the output duty cycle alternates between DUTY_CYCLE.A for (BLINK_PARAM.X+1) pulses and DUTY_CYCLE.B for (BLINK_PARAM.Y+1) pulses. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | BLINK_EN_0 | Enables blink (or heartbeat). If cleared, the output duty cycle will remain constant at DUTY_CYCLE.A. Enabling this bit causes the PWM duty cycle to fluctuate between DUTY_CYCLE.A and DUTY_CYCLE.B |
pwm.PWM_PARAM_1 @ 0x18
Basic PWM Channel Parameters Reset default = 0x0, mask 0xc000ffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | PHASE_DELAY_1 | For pwm_params1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29:16 | Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | rw | 0x0 | HTBT_EN_1 | For pwm_params1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | BLINK_EN_1 | For pwm_params1 |
pwm.PWM_PARAM_2 @ 0x1c
Basic PWM Channel Parameters Reset default = 0x0, mask 0xc000ffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | PHASE_DELAY_2 | For pwm_params2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29:16 | Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | rw | 0x0 | HTBT_EN_2 | For pwm_params2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | BLINK_EN_2 | For pwm_params2 |
pwm.PWM_PARAM_3 @ 0x20
Basic PWM Channel Parameters Reset default = 0x0, mask 0xc000ffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | PHASE_DELAY_3 | For pwm_params3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29:16 | Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | rw | 0x0 | HTBT_EN_3 | For pwm_params3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | BLINK_EN_3 | For pwm_params3 |
pwm.PWM_PARAM_4 @ 0x24
Basic PWM Channel Parameters Reset default = 0x0, mask 0xc000ffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | PHASE_DELAY_4 | For pwm_params4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29:16 | Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | rw | 0x0 | HTBT_EN_4 | For pwm_params4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | BLINK_EN_4 | For pwm_params4 |
pwm.PWM_PARAM_5 @ 0x28
Basic PWM Channel Parameters Reset default = 0x0, mask 0xc000ffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | PHASE_DELAY_5 | For pwm_params5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
29:16 | Reserved | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
30 | rw | 0x0 | HTBT_EN_5 | For pwm_params5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31 | rw | 0x0 | BLINK_EN_5 | For pwm_params5 |
pwm.DUTY_CYCLE_0 @ 0x2c
Controls the duty_cycle of each channel. Reset default = 0x7fff7fff, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x7fff | A_0 | The initial duty cycle for PWM output, in units of 2^(-16)ths of a pulse cycle. The actual precision is however limited to the (DC_RESN+1) most significant bits. This setting applies continuously when not blinking and determines the initial duty cycle when blinking. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x7fff | B_0 | The target duty cycle for PWM output, in units of 2^(-16)ths of a pulse cycle. The actual precision is however limited to the (DC_RESN+1) most significant bits. This setting only applies when blinking, and determines the target duty cycle. |
pwm.DUTY_CYCLE_1 @ 0x30
Controls the duty_cycle of each channel. Reset default = 0x7fff7fff, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x7fff | A_1 | For duty_cycle1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x7fff | B_1 | For duty_cycle1 |
pwm.DUTY_CYCLE_2 @ 0x34
Controls the duty_cycle of each channel. Reset default = 0x7fff7fff, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x7fff | A_2 | For duty_cycle2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x7fff | B_2 | For duty_cycle2 |
pwm.DUTY_CYCLE_3 @ 0x38
Controls the duty_cycle of each channel. Reset default = 0x7fff7fff, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x7fff | A_3 | For duty_cycle3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x7fff | B_3 | For duty_cycle3 |
pwm.DUTY_CYCLE_4 @ 0x3c
Controls the duty_cycle of each channel. Reset default = 0x7fff7fff, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x7fff | A_4 | For duty_cycle4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x7fff | B_4 | For duty_cycle4 |
pwm.DUTY_CYCLE_5 @ 0x40
Controls the duty_cycle of each channel. Reset default = 0x7fff7fff, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x7fff | A_5 | For duty_cycle5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x7fff | B_5 | For duty_cycle5 |
pwm.BLINK_PARAM_0 @ 0x44
Hardware controlled blink/heartbeat parameters. Reset default = 0x0, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | X_0 | This blink-rate timing parameter has two different interpretations depending on whether or not the heartbeat feature is enabled. If heartbeat is disabled, a blinking PWM will pulse at duty cycle A for (X+1) pulses before switching to duty cycle B. If heartbeat is enabled the duty-cycle will start at the duty cycle A, but will be incremented (or decremented) every (X+1) cycles. In heartbeat mode is enabled, the size of each step is controlled by BLINK_PARAM.Y. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x0 | Y_0 | This blink-rate timing parameter has two different interpretations depending on whether or not the heartbeat feature is enabled. If heartbeat is disabled, a blinking PWM will pulse at duty cycle B for (Y+1) pulse cycles before returning to duty cycle A. If heartbeat is enabled the duty cycle will increase (or decrease) by (Y+1) units every time it is incremented (or decremented) |
pwm.BLINK_PARAM_1 @ 0x48
Hardware controlled blink/heartbeat parameters. Reset default = 0x0, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | X_1 | For blink_param1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x0 | Y_1 | For blink_param1 |
pwm.BLINK_PARAM_2 @ 0x4c
Hardware controlled blink/heartbeat parameters. Reset default = 0x0, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | X_2 | For blink_param2 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x0 | Y_2 | For blink_param2 |
pwm.BLINK_PARAM_3 @ 0x50
Hardware controlled blink/heartbeat parameters. Reset default = 0x0, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | X_3 | For blink_param3 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x0 | Y_3 | For blink_param3 |
pwm.BLINK_PARAM_4 @ 0x54
Hardware controlled blink/heartbeat parameters. Reset default = 0x0, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | X_4 | For blink_param4 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x0 | Y_4 | For blink_param4 |
pwm.BLINK_PARAM_5 @ 0x58
Hardware controlled blink/heartbeat parameters. Reset default = 0x0, mask 0xffffffff
Register enable = REGWEN |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Bits | Type | Reset | Name | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
15:0 | rw | 0x0 | X_5 | For blink_param5 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
31:16 | rw | 0x0 | Y_5 | For blink_param5 |