FreeCalypso > hg > freecalypso-tools
comparison target-utils/buzplayer/timer.c @ 77:0f11da299b7d
buzplayer: beginning of timer implementation
| author | Mychaela Falconia <falcon@freecalypso.org> |
|---|---|
| date | Thu, 27 Oct 2016 04:01:16 +0000 |
| parents | |
| children | e3d40f49d8c4 |
comparison
equal
deleted
inserted
replaced
| 76:5bbba2cab6f3 | 77:0f11da299b7d |
|---|---|
| 1 /* | |
| 2 * FreeCalypso buzzer "melodies" have times measured in TDMA frames, | |
| 3 * as that is the time unit in the main firmware which will ultimately | |
| 4 * play them. In this standalone buzzer player we simulate TDMA frame | |
| 5 * timing by programming Calypso TIMER1 with the period of 1875, and | |
| 6 * we detect timer overflow (one virtual TDMA frame time having passed) | |
| 7 * by polling the read register to avoid the need for interrupt handling | |
| 8 * infrastructure. | |
| 9 */ | |
| 10 | |
| 11 #include "types.h" | |
| 12 #include "timer.h" | |
| 13 | |
| 14 timer_init() | |
| 15 { | |
| 16 TIMER1_REGS.cntl = CNTL_CLOCK_ENABLE; | |
| 17 TIMER1_REGS.load = 1875; | |
| 18 TIMER1_REGS.cntl = CNTL_CLOCK_ENABLE | CNTL_AUTO_RELOAD | CNTL_START; | |
| 19 } |
