Subversion Repositories Projects

Rev

Rev 231 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
231 killagreg 1
#ifndef _UART0_H
2
#define _UART0_H
3
 
333 killagreg 4
#include "ubx.h"
5
 
231 killagreg 6
#define RXD_BUFFER_LEN  150
7
// must be at least 4('#'+Addr+'CmdID'+'\r')+ (80 * 4)/3 = 111 bytes
8
#define TXD_BUFFER_LEN  150
9
#define RXD_BUFFER_LEN  150
10
 
11
#include <inttypes.h>
12
 
13
//Baud rate of the USART
14
#define USART0_BAUD 57600
15
 
16
 
17
extern void USART0_Init (void);
18
extern void USART0_TransmitTxData(void);
19
extern void USART0_ProcessRxData(void);
20
extern int16_t uart_putchar(int8_t c);
21
 
22
extern uint8_t PcAccess;
23
extern uint8_t RemotePollDisplayLine;
24
 
25
typedef struct
26
{
27
        uint8_t Digital[2];
28
        uint8_t RemoteButtons;
29
        int8_t  Nick;
30
        int8_t  Roll;
31
        int8_t  Yaw;
32
        uint8_t Gas;
33
        int8_t  Height;
34
        uint8_t free;
35
        uint8_t Frame;
36
        uint8_t Config;
37
} __attribute__((packed)) ExternControl_t;
38
 
39
extern ExternControl_t ExternControl;
40
 
41
 
42
typedef struct
43
{
44
        uint8_t Digital[2];
45
        uint16_t Analog[32];    // Debugvalues
46
} __attribute__((packed)) DebugOut_t;
47
 
48
extern DebugOut_t DebugOut;
49
 
50
typedef struct
51
{
52
        uint8_t SWMajor;
53
        uint8_t SWMinor;
54
        uint8_t ProtoMajor;
55
        uint8_t ProtoMinor;
56
        uint8_t SWPatch;
57
        uint8_t Reserved[5];
58
}  __attribute__((packed)) UART_VersionInfo_t;
59
 
333 killagreg 60
typedef struct
61
{
62
        GPS_Pos_t Position;             // the gps position of the waypoint, see ubx.h for details
63
        int16_t Heading;                        // orientation, future implementation
64
        uint8_t ToleranceRadius;        // in meters, if the MK is within that range around the target, then the next target is triggered
65
        uint8_t HoldTime;                       // in seconds, if the was once in the tolerance area around a WP, this time defines the delay before the next WP is triggered
66
        uint8_t Event_Flag;                     // future implementation
67
        uint8_t reserve[12];            // reserve
68
} __attribute__((packed)) Waypoint_t;
231 killagreg 69
 
333 killagreg 70
extern Waypoint_t FollowMe;
71
extern uint8_t Request_SendFollowMe;
72
 
231 killagreg 73
#endif //_UART0_H