Subversion Repositories MK3Mag

Rev

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