Rev 685 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 685 | Rev 701 | ||
---|---|---|---|
1 | #ifndef _UART_H |
1 | #ifndef _UART_H |
2 | #define _UART_H |
2 | #define _UART_H |
3 | 3 | ||
4 | #define TXD_BUFFER_LEN 150 |
4 | #define TXD_BUFFER_LEN 150 |
5 | #define RXD_BUFFER_LEN 150 |
5 | #define RXD_BUFFER_LEN 150 |
6 | 6 | ||
7 | #define DUB_KEY_UP 4 |
7 | #define DUB_KEY_UP 4 |
8 | #define DUB_KEY_DOWN 8 |
8 | #define DUB_KEY_DOWN 8 |
9 | #define DUB_KEY_RIGHT 32 |
9 | #define DUB_KEY_RIGHT 32 |
10 | #define DUB_KEY_LEFT 16 |
10 | #define DUB_KEY_LEFT 16 |
11 | #define DUB_KEY_FIRE 64 |
11 | #define DUB_KEY_FIRE 64 |
12 | 12 | ||
13 | #include <inttypes.h> |
13 | #include <inttypes.h> |
14 | 14 | ||
15 | void BearbeiteRxDaten(void); |
15 | void BearbeiteRxDaten(void); |
16 | 16 | ||
17 | extern unsigned char DebugGetAnforderung; |
17 | extern unsigned char DebugGetAnforderung; |
18 | 18 | ||
19 | //Baud rate of the USART |
19 | //Baud rate of the USART |
20 | #define USART0_BAUD 57600 |
20 | #define USART0_BAUD 57600 |
21 | 21 | ||
22 | 22 | ||
23 | extern void USART0_Init (void); |
23 | extern void USART0_Init (void); |
24 | 24 | ||
25 | extern unsigned volatile char txd_buffer[TXD_BUFFER_LEN]; |
25 | extern unsigned volatile char txd_buffer[TXD_BUFFER_LEN]; |
26 | extern unsigned volatile char rxd_buffer[RXD_BUFFER_LEN]; |
26 | extern unsigned volatile char rxd_buffer[RXD_BUFFER_LEN]; |
27 | 27 | ||
28 | extern unsigned volatile char UebertragungAbgeschlossen; |
28 | extern unsigned volatile char UebertragungAbgeschlossen; |
29 | extern unsigned volatile char PC_DebugTimeout; |
29 | extern unsigned volatile char PC_DebugTimeout; |
30 | extern unsigned volatile char NeueKoordinateEmpfangen; |
30 | extern unsigned volatile char NeueKoordinateEmpfangen; |
31 | extern unsigned char MeineSlaveAdresse; |
31 | extern unsigned char MeineSlaveAdresse; |
32 | extern unsigned char PcZugriff; |
32 | extern unsigned char PcZugriff; |
33 | extern unsigned char RemotePollDisplayLine; |
33 | extern unsigned char RemotePollDisplayLine; |
34 | extern int Debug_Timer; |
34 | extern int Debug_Timer; |
35 | 35 | ||
36 | extern int16_t uart_putchar (int8_t c); |
36 | extern int16_t uart_putchar (int8_t c); |
37 | extern void boot_program_page (uint32_t page, uint8_t *buf); |
37 | extern void boot_program_page (uint32_t page, uint8_t *buf); |
38 | extern void DatenUebertragung(void); |
38 | extern void DatenUebertragung(void); |
39 | 39 | ||
40 | extern void BearbeiteRxDaten(void); |
40 | extern void BearbeiteRxDaten(void); |
41 | extern unsigned char MotorTest[4]; |
41 | extern unsigned char MotorTest[4]; |
42 | extern unsigned char DubWiseKeys[4]; |
42 | extern unsigned char DubWiseKeys[4]; |
43 | struct str_DebugOut |
43 | struct str_DebugOut |
44 | { |
44 | { |
45 | unsigned char Digital[2]; |
45 | unsigned char Digital[2]; |
46 | unsigned int Analog[32]; // Debugwerte |
46 | unsigned int Analog[32]; // Debugwerte |
47 | }; |
47 | }; |
48 | 48 | ||
49 | extern struct str_DebugOut DebugOut; |
49 | extern struct str_DebugOut DebugOut; |
50 | 50 | ||
51 | struct str_ExternControl |
51 | struct str_ExternControl |
52 | { |
52 | { |
53 | unsigned char Digital[2]; |
53 | uint8_t Digital[2]; |
54 | unsigned char RemoteButtons; |
54 | uint8_t RemoteButtons; |
55 | signed char Nick; |
55 | int8_t Pitch; |
56 | signed char Roll; |
56 | int8_t Roll; |
57 | signed char Gier; |
57 | int8_t Yaw; |
58 | unsigned char Gas; |
58 | uint8_t Gas; |
59 | signed char Hight; |
59 | int8_t Hight; |
60 | unsigned char free; |
60 | uint8_t free; |
61 | unsigned char Frame; |
61 | uint8_t Frame; |
62 | unsigned char Config; |
62 | uint8_t Config; |
63 | }; |
63 | }; |
64 | extern struct str_ExternControl ExternControl; |
64 | extern struct str_ExternControl ExternControl; |
65 | 65 | ||
66 | struct str_VersionInfo |
66 | struct str_VersionInfo |
67 | { |
67 | { |
68 | unsigned char Hauptversion; |
68 | unsigned char Hauptversion; |
69 | unsigned char Nebenversion; |
69 | unsigned char Nebenversion; |
70 | unsigned char PCKompatibel; |
70 | unsigned char PCKompatibel; |
71 | unsigned char Rserved[7]; |
71 | unsigned char Rserved[7]; |
72 | }; |
72 | }; |
73 | extern struct str_VersionInfo VersionInfo; |
73 | extern struct str_VersionInfo VersionInfo; |
74 | 74 | ||
75 | 75 | ||
76 | #if defined (__AVR_ATmega644__) |
76 | #if defined (__AVR_ATmega644__) |
77 | # define USR UCSR0A |
77 | # define USR UCSR0A |
78 | # define UCR UCSR0B |
78 | # define UCR UCSR0B |
79 | # define UDR UDR0 |
79 | # define UDR UDR0 |
80 | # define UBRR UBRR0L |
80 | # define UBRR UBRR0L |
81 | # define EICR EICR0B |
81 | # define EICR EICR0B |
82 | # define TXEN TXEN0 |
82 | # define TXEN TXEN0 |
83 | # define RXEN RXEN0 |
83 | # define RXEN RXEN0 |
84 | # define RXCIE RXCIE0 |
84 | # define RXCIE RXCIE0 |
85 | # define TXCIE TXCIE0 |
85 | # define TXCIE TXCIE0 |
86 | # define U2X U2X0 |
86 | # define U2X U2X0 |
87 | # define UCSRB UCSR0B |
87 | # define UCSRB UCSR0B |
88 | # define UDRE UDRE0 |
88 | # define UDRE UDRE0 |
89 | # define INT_VEC_RX SIG_USART_RECV |
89 | # define INT_VEC_RX SIG_USART_RECV |
90 | # define INT_VEC_TX SIG_USART_TRANS |
90 | # define INT_VEC_TX SIG_USART_TRANS |
91 | #endif |
91 | #endif |
92 | 92 | ||
93 | 93 | ||
94 | #endif //_UART_H |
94 | #endif //_UART_H |
95 | 95 |