diff --git a/VERSION_HISTORY.md b/VERSION_HISTORY.md index 35a45a1..229ac43 100644 --- a/VERSION_HISTORY.md +++ b/VERSION_HISTORY.md @@ -78,9 +78,9 @@ * Fix examples/mode0/timer2 compilation * Fix timer0_mode2_reload - TH0 value should be set, now used TL0 * Fix INT0 should be defined in timer0 modes +* timerX_modeX_direct_{reload, start}(TxH, TxL) for direct set TLx, THx registers implemented Next releases todo -* TODO Implement timer_modeX_direct_*(TxH, TxL) for direct set TLx, THx registers * TODO Does not recompile examples every time. Compile only when it changed. * TODO Suppress compiler output for examples on non verbose build * TODO Implement counters diff --git a/docs/html/dir_000003_000012.html b/docs/html/dir_000003_000012.html index cb3e4a0..91e67ef 100644 --- a/docs/html/dir_000003_000012.html +++ b/docs/html/dir_000003_000012.html @@ -66,7 +66,7 @@
File in examples/timer/mode3/async | Includes file in include |
---|---|
timer0_mode3_1T_interrupt_example.c | delay.h |
timer0_mode3_1T_interrupt_example.c | timer0_mode3.h |
timer0_mode3_direct_reload_example.c | delay.h |
timer0_mode3_direct_reload_example.c | timer0_mode3.h |
timer0_mode3_direct_start_example.c | frequency.h |
timer0_mode3_direct_start_example.c | timer0_mode3.h |
timer0_mode3_pause_by_gate_example.c | delay.h |
timer0_mode3_pause_by_gate_example.c | timer0_mode3.h |
timer0_mode3_reload_example.c | delay.h |
timer0_mode3_reload_example.c | timer0_mode3.h |
File in examples/timer/mode3/async | Includes file in include |
---|---|
timer0_mode3_1T_interrupt_example.c | delay.h |
timer0_mode3_1T_interrupt_example.c | timer0_mode3.h |
timer0_mode3_direct_reload_example.c | delay.h |
timer0_mode3_direct_reload_example.c | timer0_mode3.h |
timer0_mode3_direct_start_example.c | frequency.h |
timer0_mode3_direct_start_example.c | timer0_mode3.h |
timer0_mode3_pause_by_gate_example.c | delay.h |
timer0_mode3_pause_by_gate_example.c | timer0_mode3.h |
timer0_mode3_reload_example.c | delay.h |
timer0_mode3_reload_example.c | timer0_mode3.h |
timer2_mode0_direct_start_example.c | frequency.h |
timer2_mode0_direct_start_example.c | timer2_mode0.h |
File in examples/timer/mode3 | Includes file in include |
---|---|
async / timer0_mode3_1T_interrupt_example.c | delay.h |
async / timer0_mode3_1T_interrupt_example.c | timer0_mode3.h |
async / timer0_mode3_direct_reload_example.c | delay.h |
async / timer0_mode3_direct_reload_example.c | timer0_mode3.h |
async / timer0_mode3_direct_start_example.c | frequency.h |
async / timer0_mode3_direct_start_example.c | timer0_mode3.h |
async / timer0_mode3_pause_by_gate_example.c | delay.h |
async / timer0_mode3_pause_by_gate_example.c | timer0_mode3.h |
async / timer0_mode3_reload_example.c | delay.h |
async / timer0_mode3_reload_example.c | timer0_mode3.h |
sync / timer0_mode3_12T_sync_example.c | timer0_mode3.h |
sync / timer0_mode3_12T_sync_example.c | frequency.h |
sync / timer0_mode3_1T_sync_example.c | timer0_mode3.h |
sync / timer0_mode3_1T_sync_example.c | frequency.h |
File in examples/timer/mode3 | Includes file in include |
---|---|
async / timer0_mode3_1T_interrupt_example.c | delay.h |
async / timer0_mode3_1T_interrupt_example.c | timer0_mode3.h |
async / timer0_mode3_direct_reload_example.c | delay.h |
async / timer0_mode3_direct_reload_example.c | timer0_mode3.h |
async / timer0_mode3_direct_start_example.c | frequency.h |
async / timer0_mode3_direct_start_example.c | timer0_mode3.h |
async / timer0_mode3_pause_by_gate_example.c | delay.h |
async / timer0_mode3_pause_by_gate_example.c | timer0_mode3.h |
async / timer0_mode3_reload_example.c | delay.h |
async / timer0_mode3_reload_example.c | timer0_mode3.h |
async / timer2_mode0_direct_start_example.c | frequency.h |
async / timer2_mode0_direct_start_example.c | timer2_mode0.h |
sync / timer0_mode3_12T_sync_example.c | timer0_mode3.h |
sync / timer0_mode3_12T_sync_example.c | frequency.h |
sync / timer0_mode3_1T_sync_example.c | timer0_mode3.h |
sync / timer0_mode3_1T_sync_example.c | frequency.h |
File in examples/timer | Includes file in include |
---|---|
common / timer0_common_example.c | delay.h |
common / timer0_common_example.c | timer0_mode0.h |
common / timer0_common_example.c | timer0_mode1.h |
common / timer0_common_example.c | timer_common.h |
common / timer0_common_example.c | uart.h |
mode0 / timer0 / async / timer0_mode0_12T_interrupt_example.c | timer0_mode0.h |
mode0 / timer0 / sync / timer0_mode0_12T_sync_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_1T_interrupt_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_1T_interrupt_example.c | timer0_mode0.h |
mode0 / timer0 / sync / timer0_mode0_1T_sync_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_direct_reload_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_direct_reload_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_direct_start_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_pause_by_gate_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_pause_by_gate_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_reload_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_reload_example.c | timer0_mode0.h |
mode1 / sync / timer0_mode1_12T_sync_example.c | timer0_mode1.h |
mode1 / async / timer0_mode1_1T_interrupt_example.c | delay.h |
mode1 / async / timer0_mode1_1T_interrupt_example.c | frequency.h |
mode1 / async / timer0_mode1_1T_interrupt_example.c | timer0_mode1.h |
mode1 / sync / timer0_mode1_1T_sync_example.c | frequency.h |
mode1 / sync / timer0_mode1_1T_sync_example.c | timer0_mode1.h |
mode1 / async / timer0_mode1_direct_start_example.c | timer0_mode1.h |
mode1 / async / timer0_mode1_pause_by_gate_example.c | delay.h |
mode1 / async / timer0_mode1_pause_by_gate_example.c | timer0_mode1.h |
mode2 / async / timer0_mode2_12T_interrupt_example.c | timer0_mode2.h |
mode2 / sync / timer0_mode2_12T_sync_example.c | timer0_mode2.h |
mode2 / sync / timer0_mode2_1T_sync_example.c | timer0_mode2.h |
mode2 / async / timer0_mode2_direct_reload_example.c | delay.h |
mode2 / async / timer0_mode2_direct_reload_example.c | frequency.h |
mode2 / async / timer0_mode2_direct_reload_example.c | timer0_mode2.h |
mode2 / async / timer0_mode2_direct_start_example.c | frequency.h |
mode2 / async / timer0_mode2_direct_start_example.c | timer0_mode2.h |
mode3 / sync / timer0_mode3_12T_sync_example.c | frequency.h |
mode3 / sync / timer0_mode3_12T_sync_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_1T_interrupt_example.c | delay.h |
mode3 / async / timer0_mode3_1T_interrupt_example.c | timer0_mode3.h |
mode3 / sync / timer0_mode3_1T_sync_example.c | frequency.h |
mode3 / sync / timer0_mode3_1T_sync_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_direct_reload_example.c | delay.h |
mode3 / async / timer0_mode3_direct_reload_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_direct_start_example.c | frequency.h |
mode3 / async / timer0_mode3_direct_start_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_pause_by_gate_example.c | delay.h |
mode3 / async / timer0_mode3_pause_by_gate_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_reload_example.c | delay.h |
mode3 / async / timer0_mode3_reload_example.c | timer0_mode3.h |
common / timer0_ms2ticks_example.c | timer0_mode0.h |
common / timer0_ms2ticks_example.c | timer0_to_ms.h |
common / timer0_ms2ticks_example.c | uart.h |
common / timer2_common_example.c | delay.h |
common / timer2_common_example.c | timer2_mode0.h |
common / timer2_common_example.c | timer_common.h |
common / timer2_common_example.c | uart.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | timer0_to_ms.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | frequency.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | delay.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | uart.h |
aux / timer0 / timer0_12T_freq_uint8_example.c | timer0_mode2.h |
aux / timer0 / timer0_12T_freq_uint8_example.c | timer0_to_ms.h |
aux / timer0 / timer0_12T_freq_uint8_example.c | uart.h |
aux / timer0 / timer0_12T_ticks_example.c | timer0_mode0.h |
aux / timer0 / timer0_12T_ticks_example.c | timer0_to_ms.h |
aux / timer0 / timer0_12T_ticks_example.c | uart.h |
aux / timer0 / timer0_1T_freq_uint16_example.c | timer0_to_ms.h |
aux / timer0 / timer0_1T_freq_uint16_example.c | uart.h |
aux / timer0 / timer0_1T_freq_uint16_example.c | delay.h |
aux / timer0 / timer0_ticks_to_ms_example.c | timer0_to_ms.h |
aux / timer0 / timer0_ticks_to_ms_example.c | uart.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | timer2_to_ms.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | frequency.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | delay.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | uart.h |
aux / timer2 / timer2_ticks_to_ms_example.c | timer2_to_ms.h |
aux / timer2 / timer2_ticks_to_ms_example.c | timer2_mode0.h |
aux / timer2 / timer2_ticks_to_ms_example.c | uart.h |
aux / timer2 / timer2_uart_baud_rate_example.c | uart.h |
aux / timer2 / timer2_uart_baud_rate_example.c | timer2_mode0.h |
aux / timer2 / timer2_uart_baud_rate_example.c | timer2_to_ms.h |
aux / timer2 / timer2_uart_baud_rate_example.c | delay.h |
mode0 / timer2 / timer2_mode0_1T_interrupt_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_1T_interrupt_example.c | frequency.h |
mode0 / timer2 / timer2_mode0_direct_reload_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_direct_reload_example.c | delay.h |
mode0 / timer2 / timer2_mode0_direct_reload_example.c | frequency.h |
mode0 / timer2 / timer2_mode0_P30_output_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_reload_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_reload_example.c | delay.h |
mode0 / timer2 / timer2_mode0_reload_example.c | frequency.h |
mode0 / timer2 / uart1_baud_rate / timer2_mode0_uart1_baud_rate.c | timer2_mode0.h |
mode0 / timer2 / uart1_baud_rate / timer2_mode0_uart1_baud_rate.c | delay.h |
File in examples/timer | Includes file in include |
---|---|
common / timer0_common_example.c | delay.h |
common / timer0_common_example.c | timer0_mode0.h |
common / timer0_common_example.c | timer0_mode1.h |
common / timer0_common_example.c | timer_common.h |
common / timer0_common_example.c | uart.h |
mode0 / timer0 / async / timer0_mode0_12T_interrupt_example.c | timer0_mode0.h |
mode0 / timer0 / sync / timer0_mode0_12T_sync_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_1T_interrupt_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_1T_interrupt_example.c | timer0_mode0.h |
mode0 / timer0 / sync / timer0_mode0_1T_sync_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_direct_reload_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_direct_reload_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_direct_start_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_pause_by_gate_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_pause_by_gate_example.c | timer0_mode0.h |
mode0 / timer0 / async / timer0_mode0_reload_example.c | delay.h |
mode0 / timer0 / async / timer0_mode0_reload_example.c | timer0_mode0.h |
mode1 / sync / timer0_mode1_12T_sync_example.c | timer0_mode1.h |
mode1 / async / timer0_mode1_1T_interrupt_example.c | delay.h |
mode1 / async / timer0_mode1_1T_interrupt_example.c | frequency.h |
mode1 / async / timer0_mode1_1T_interrupt_example.c | timer0_mode1.h |
mode1 / sync / timer0_mode1_1T_sync_example.c | frequency.h |
mode1 / sync / timer0_mode1_1T_sync_example.c | timer0_mode1.h |
mode1 / async / timer0_mode1_direct_start_example.c | timer0_mode1.h |
mode1 / async / timer0_mode1_pause_by_gate_example.c | delay.h |
mode1 / async / timer0_mode1_pause_by_gate_example.c | timer0_mode1.h |
mode2 / async / timer0_mode2_12T_interrupt_example.c | timer0_mode2.h |
mode2 / sync / timer0_mode2_12T_sync_example.c | timer0_mode2.h |
mode2 / sync / timer0_mode2_1T_sync_example.c | timer0_mode2.h |
mode2 / async / timer0_mode2_direct_reload_example.c | delay.h |
mode2 / async / timer0_mode2_direct_reload_example.c | frequency.h |
mode2 / async / timer0_mode2_direct_reload_example.c | timer0_mode2.h |
mode2 / async / timer0_mode2_direct_start_example.c | frequency.h |
mode2 / async / timer0_mode2_direct_start_example.c | timer0_mode2.h |
mode3 / sync / timer0_mode3_12T_sync_example.c | frequency.h |
mode3 / sync / timer0_mode3_12T_sync_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_1T_interrupt_example.c | delay.h |
mode3 / async / timer0_mode3_1T_interrupt_example.c | timer0_mode3.h |
mode3 / sync / timer0_mode3_1T_sync_example.c | frequency.h |
mode3 / sync / timer0_mode3_1T_sync_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_direct_reload_example.c | delay.h |
mode3 / async / timer0_mode3_direct_reload_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_direct_start_example.c | frequency.h |
mode3 / async / timer0_mode3_direct_start_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_pause_by_gate_example.c | delay.h |
mode3 / async / timer0_mode3_pause_by_gate_example.c | timer0_mode3.h |
mode3 / async / timer0_mode3_reload_example.c | delay.h |
mode3 / async / timer0_mode3_reload_example.c | timer0_mode3.h |
common / timer0_ms2ticks_example.c | timer0_mode0.h |
common / timer0_ms2ticks_example.c | timer0_to_ms.h |
common / timer0_ms2ticks_example.c | uart.h |
common / timer2_common_example.c | delay.h |
common / timer2_common_example.c | timer2_mode0.h |
common / timer2_common_example.c | timer_common.h |
common / timer2_common_example.c | uart.h |
mode3 / async / timer2_mode0_direct_start_example.c | frequency.h |
mode3 / async / timer2_mode0_direct_start_example.c | timer2_mode0.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | timer0_to_ms.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | frequency.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | delay.h |
aux / timer0 / timer0_12T_freq_uint16_example.c | uart.h |
aux / timer0 / timer0_12T_freq_uint8_example.c | timer0_mode2.h |
aux / timer0 / timer0_12T_freq_uint8_example.c | timer0_to_ms.h |
aux / timer0 / timer0_12T_freq_uint8_example.c | uart.h |
aux / timer0 / timer0_12T_ticks_example.c | timer0_mode0.h |
aux / timer0 / timer0_12T_ticks_example.c | timer0_to_ms.h |
aux / timer0 / timer0_12T_ticks_example.c | uart.h |
aux / timer0 / timer0_1T_freq_uint16_example.c | timer0_to_ms.h |
aux / timer0 / timer0_1T_freq_uint16_example.c | uart.h |
aux / timer0 / timer0_1T_freq_uint16_example.c | delay.h |
aux / timer0 / timer0_ticks_to_ms_example.c | timer0_to_ms.h |
aux / timer0 / timer0_ticks_to_ms_example.c | uart.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | timer2_to_ms.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | frequency.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | delay.h |
aux / timer2 / timer2_12T_freq_uint16_example.c | uart.h |
aux / timer2 / timer2_ticks_to_ms_example.c | timer2_to_ms.h |
aux / timer2 / timer2_ticks_to_ms_example.c | timer2_mode0.h |
aux / timer2 / timer2_ticks_to_ms_example.c | uart.h |
aux / timer2 / timer2_uart_baud_rate_example.c | uart.h |
aux / timer2 / timer2_uart_baud_rate_example.c | timer2_mode0.h |
aux / timer2 / timer2_uart_baud_rate_example.c | timer2_to_ms.h |
aux / timer2 / timer2_uart_baud_rate_example.c | delay.h |
mode0 / timer2 / timer2_mode0_1T_interrupt_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_1T_interrupt_example.c | frequency.h |
mode0 / timer2 / timer2_mode0_direct_reload_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_direct_reload_example.c | delay.h |
mode0 / timer2 / timer2_mode0_direct_reload_example.c | frequency.h |
mode0 / timer2 / timer2_mode0_P30_output_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_reload_example.c | timer2_mode0.h |
mode0 / timer2 / timer2_mode0_reload_example.c | delay.h |
mode0 / timer2 / timer2_mode0_reload_example.c | frequency.h |
mode0 / timer2 / uart1_baud_rate / timer2_mode0_uart1_baud_rate.c | timer2_mode0.h |
mode0 / timer2 / uart1_baud_rate / timer2_mode0_uart1_baud_rate.c | delay.h |
#define timer2_mode0_direct_start | +( | ++ | th0, | +
+ | + | + | tl0 | +
+ | ) | ++ |
Run timer2 mode0 with direct set of TH0 and TL0 registers.
+Before run timer2_mode0_12T_init or timer2_mode0_1T_init should be called.
+After run program flow not blocked and interrupt will raised when timer is overloaded. Interrupt handler void timer2ISR(void) __interrupt(12) should be defined in user code.
+Timer rerun occurs after overloading and interuppt handler calling. Timer overloading occurs when [TH0, TL0] = 0xff + 1
+th0 | uint8_t TH0 value |
tl0 | uint8_t TL0 value |
Next releases todo