Rev 2099 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 2099 | Rev 2124 | ||
---|---|---|---|
1 | #ifndef _TIMER0_H |
1 | #ifndef _TIMER0_H |
2 | #define _TIMER0_H |
2 | #define _TIMER0_H |
3 | 3 | ||
4 | #include <inttypes.h> |
4 | #include <inttypes.h> |
5 | 5 | ||
6 | // Normally it is 20MHz/2048 = 9765.625 Hz |
6 | // Normally it is 20MHz/2048 = 9765.625 Hz |
7 | #define F_TIMER0IRQ ((float)F_CPU/2048.0) |
7 | #define F_TIMER0IRQ ((float)F_CPU/2048.0) |
8 | #define MAINLOOP_DIVIDER 10 |
8 | #define MAINLOOP_DIVIDER 10 |
9 | // Originally it is 488 |
9 | // Originally it is 488 |
10 | #define F_MAINLOOP (F_TIMER0IRQ/(2.0*MAINLOOP_DIVIDER)) |
10 | #define F_MAINLOOP (F_TIMER0IRQ/(2.0*MAINLOOP_DIVIDER)) |
11 | 11 | ||
12 | #define BEEP_MODULATION_NONE 0xFFFF |
12 | #define BEEP_MODULATION_NONE 0xFFFF |
13 | #define BEEP_MODULATION_RCALARM 0x0C00 |
13 | #define BEEP_MODULATION_RCALARM 0x0C00 |
14 | #define BEEP_MODULATION_I2CALARM 0x0080 |
14 | #define BEEP_MODULATION_I2CALARM 0x0080 |
15 | #define BEEP_MODULATION_BATTERYALARM 0x0300 |
15 | #define BEEP_MODULATION_BATTERYALARM 0x0300 |
16 | #define BEEP_MODULATION_EEPROMALARM 0x0007 |
16 | #define BEEP_MODULATION_EEPROMALARM 0x0007 |
17 | 17 | ||
18 | extern volatile uint32_t globalMillisClock; |
18 | extern volatile uint32_t globalMillisClock; |
19 | extern volatile uint8_t runFlightControl; |
19 | extern volatile uint8_t runFlightControl; |
20 | extern volatile uint16_t beepModulation; |
20 | extern volatile uint16_t beepModulation; |
21 | extern volatile uint16_t beepTime; |
21 | extern volatile uint16_t beepTime; |
22 | #ifdef USE_NAVICTRL |
22 | #ifdef USE_NAVICTRL |
23 | extern volatile uint8_t SendSPI; |
23 | extern volatile uint8_t SendSPI; |
24 | #endif |
24 | #endif |
25 | 25 | ||
26 | extern void timer0_init(void); |
26 | void timer0_init(void); |
27 | extern void delay_ms(uint16_t w); |
27 | void delay_ms(uint16_t w); |
28 | extern void delay_ms_with_adc_measurement(uint16_t w, uint8_t stop); |
28 | void delay_ms_with_adc_measurement(uint16_t w, uint8_t stop); |
29 | extern uint16_t setDelay(uint16_t t); |
29 | uint16_t setDelay(uint16_t t); |
- | 30 | int8_t checkDelay(uint16_t t); |
|
- | 31 | ||
- | 32 | #ifdef DO_PROFILE |
|
- | 33 | #define NUM_PROFILE_TIMERS 4 |
|
- | 34 | #define ATTITUDE 0 |
|
- | 35 | #define CONTROLMIXER 1 |
|
- | 36 | #define COMMANDS 2 |
|
- | 37 | #define FLIGHT 3 |
|
- | 38 | ||
- | 39 | void startProfileTimer(uint8_t timer); |
|
- | 40 | void stopProfileTimer(uint8_t timer); |
|
- | 41 | void debugProfileTimers(uint8_t index); |
|
30 | extern int8_t checkDelay(uint16_t t); |
42 | #endif |
31 | 43 | ||
32 | #endif //_TIMER0_H |
44 | #endif //_TIMER0_H |
33 | 45 |