Subversion Repositories MK3Mag

Rev

Rev 26 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 26 Rev 29
1
#ifndef _UART_H_
1
#ifndef _UART_H_
2
#define _UART_H_
2
#define _UART_H_
3
 
3
 
4
#include <inttypes.h>
4
#include <inttypes.h>
5
 
5
 
6
#define NICK 0
6
#define NICK 0
7
#define ROLL 1
7
#define ROLL 1
8
 
8
 
9
 
9
 
10
#define BAUD_RATE 57600
10
#define BAUD_RATE 57600
11
 
11
 
12
 
12
 
13
extern uint16_t Debug_Timer;
13
extern uint16_t Debug_Timer;
14
 
14
 
15
 
15
 
16
void USART0_Init (void);
16
void USART0_Init (void);
17
void USART0_EnableTXD(void);
17
void USART0_EnableTXD(void);
18
void USART0_DisableTXD(void);
18
void USART0_DisableTXD(void);
19
void USART0_TransmitTxData(void);
19
void USART0_TransmitTxData(void);
20
void USART0_ProcessRxData(void);
20
void USART0_ProcessRxData(void);
21
int uart_putchar (int8_t c);
21
int16_t USART0_putchar(int8_t c);
-
 
22
void USART0_Print(int8_t *msg);
22
 
23
 
23
 
24
 
24
 
25
 
25
struct DebugOut_t
26
struct DebugOut_t
26
{
27
{
27
        uint8_t Digital[2];
28
        uint8_t Digital[2];
28
        uint16_t Analog[32];    // Debugvalues
29
        uint16_t Analog[32];    // Debugvalues
29
} ;
30
} ;
30
 
31
 
31
extern struct DebugOut_t DebugOut;
32
extern struct DebugOut_t DebugOut;
32
 
33
 
33
 
34
 
34
 
35
 
35
struct ExternData_t
36
struct ExternData_t
36
{
37
{
37
        int16_t Attitude[2];  // nick and roll angle in 0.1 deg
38
        int16_t Attitude[2];  // nick and roll angle in 0.1 deg
38
        uint8_t UserParam[2];
39
        uint8_t UserParam[2];
39
        uint8_t CalState;
40
        uint8_t CalState;
40
        uint8_t Orientation;
41
        uint8_t Orientation;
41
} ;
42
} ;
42
 
43
 
43
extern struct ExternData_t  ExternData;
44
extern struct ExternData_t  ExternData;
44
 
45
 
45
 
46
 
46
struct ExternControl_t
47
struct ExternControl_t
47
{
48
{
48
        uint8_t Digital[2];
49
        uint8_t Digital[2];
49
        uint8_t RemoteButtons;
50
        uint8_t RemoteButtons;
50
        int8_t  Nick;
51
        int8_t  Nick;
51
        int8_t  Roll;
52
        int8_t  Roll;
52
        int8_t  Yaw;
53
        int8_t  Yaw;
53
        uint8_t Gas;
54
        uint8_t Gas;
54
        int8_t  Height;
55
        int8_t  Height;
55
        uint8_t Par1;
56
        uint8_t Par1;
56
        uint8_t Par2;
57
        uint8_t Par2;
57
        uint8_t Par3;
58
        uint8_t Par3;
58
} ;
59
} ;
59
 
60
 
60
extern struct ExternControl_t  ExternControl;
61
extern struct ExternControl_t  ExternControl;
61
 
62
 
62
 
63
 
63
struct VersionInfo_t
64
struct VersionInfo_t
64
{
65
{
65
        uint8_t Major;
66
        uint8_t Major;
66
        uint8_t Minor;
67
        uint8_t Minor;
67
        uint8_t PCCompatible;
68
        uint8_t PCCompatible;
68
        uint8_t Reserved[7];
69
        uint8_t Reserved[7];
69
}  VersionInfo_t;
70
}  VersionInfo_t;
70
 
71
 
71
extern struct VersionInfo_t VersionInfo;
72
extern struct VersionInfo_t VersionInfo;
-
 
73
 
-
 
74
extern uint8_t PC_Connected;
72
 
75
extern uint8_t FC_Connected;
73
 
76
 
74
#endif //_UART_H_
77
#endif //_UART_H_
75
 
78