Rev 18 | Rev 28 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 18 | Rev 19 | ||
---|---|---|---|
1 | #ifndef _MAIN_H |
1 | #ifndef _MAIN_H_ |
2 | #define _MAIN_H |
2 | #define _MAIN_H_ |
3 | - | ||
4 | - | ||
5 | #include <stdio.h> |
- | |
6 | #include <math.h> |
- | |
7 | #include <stdlib.h> |
- | |
8 | #include <string.h> |
- | |
9 | #include <avr/io.h> |
- | |
10 | #include <avr/pgmspace.h> |
3 | |
11 | #include <avr/interrupt.h> |
4 | |
12 | #include <avr/eeprom.h> |
- | |
13 | #include <avr/boot.h> |
- | |
14 | #include <avr/wdt.h> |
- | |
15 | #include <avr/eeprom.h> |
- | |
16 | - | ||
17 | #include "twislave.h" |
- | |
18 | #include "old_macros.h" |
- | |
19 | #include "analog.h" |
- | |
20 | #include "uart.h" |
- | |
21 | #include "timer0.h" |
- | |
22 | - | ||
23 | - | ||
24 | #if defined(__AVR_ATmega8__) |
- | |
25 | # define OC1 PB1 |
- | |
26 | # define DDROC DDRB |
- | |
27 | # define OCR OCR1A |
5 | #include <avr/eeprom.h> |
28 | # define PWM10 WGM10 |
6 | #include <inttypes.h> |
29 | # define PWM11 WGM11 |
7 | |
30 | #endif |
8 | |
31 | 9 | ||
32 | #define SYSCLK 8000000L //Quarz Frequenz in Hz |
10 | #define SYSCLK 8000000L //Quarz Frequenz in Hz |
33 | - | ||
34 | #define INT0_ENABLE GIMSK |= 0x40 |
- | |
35 | #define INT0_DISABLE GIMSK &= ~0x40 |
- | |
36 | #define TIM0_START TIMSK0 |= _BV(TOIE0) |
- | |
37 | #define TIM0_STOPP TIMSK0 &= ~_BV(TOIE0) |
- | |
38 | - | ||
39 | #define ICP_INT_ENABLE TIMSK0 |= 0x20 |
- | |
40 | #define ICP_INT_DISABLE TIMSK0 &= ~0x20 |
- | |
41 | #define TIMER1_INT_ENABLE TIMSK0 |= 0x04 |
- | |
42 | #define TIMER1_INT_DISABLE TIMSK0 &= ~0x04 |
- | |
43 | #define TIMER2_INT_ENABLE TIMSK0 |= 0x40 |
- | |
44 | #define TIMER2_INT_DISABLE TIMSK0 &= ~0x40 |
- | |
45 | #define INT0_POS_FLANKE MCUCR |= 0x01 |
- | |
46 | #define INT0_ANY_FLANKE MCUCR |= 0x01 |
- | |
47 | #define INT0_NEG_FLANKE MCUCR &= ~0x01 |
- | |
48 | #define CLR_INT0_FLAG GIFR &= ~0x40 |
- | |
49 | #define INIT_INT0_FLANKE MCUCR &= ~0x03; MCUCR |= 0x02; |
- | |
50 | #define TIMER0_PRESCALER TCCR0 |
- | |
51 | #define ICP_POS_FLANKE TCCR1B |= (1<<ICES1) |
- | |
52 | #define ICP_NEG_FLANKE TCCR1B &= ~(1<<ICES1) |
- | |
53 | - | ||
54 | #define LED_ON PORTD |= 0x80 |
- | |
55 | #define LED_OFF PORTD &= ~0x80 |
- | |
56 | #define FLIP_HIGH PORTD |= 0x60 |
- | |
57 | #define FLIP_LOW PORTD &= ~0x60 |
- | |
58 | - | ||
59 | extern unsigned int PwmHeading; |
- | |
60 | extern unsigned int PC_Connected; |
- | |
61 | extern unsigned int Heading; |
- | |
62 | extern signed int MagnetN,MagnetR,MagnetZ; |
- | |
63 | - | ||
64 | extern uint16_t eeXmin EEMEM; |
- | |
65 | extern uint16_t eeXmax EEMEM; |
- | |
66 | extern uint16_t eeYmin EEMEM; |
- | |
67 | extern uint16_t eeYmax EEMEM; |
- | |
68 | extern uint16_t eeZmin EEMEM; |
- | |
- | 11 | ||
- | 12 | ||
- | 13 | extern uint8_t PC_Connected; |
|
- | 14 | ||
- | 15 | extern int16_t Heading; |
|
- | 16 | ||
- | 17 | extern int16_t MagnetX, MagnetY, MagnetZ; |
|
- | 18 | ||
69 | extern uint16_t eeZmax EEMEM; |
19 | void SetDebugValues(void); |
70 | 20 | ||
71 | #endif //_MAIN_H |
21 | #endif //_MAIN_H_ |
72 | 22 | ||
73 | 23 | ||
74 | 24 | ||
75 | 25 | ||
76 | 26 | ||
77 | 27 |