Subversion Repositories MK3Mag


Rev 19 | Rev 26 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed

#ifndef _UART_H_
#define _UART_H_

#include <inttypes.h>

#define NICK 0
#define ROLL 1

#define BAUD_RATE 57600

extern uint16_t Debug_Timer;

void USART0_Init (void);
void USART0_EnableTXD(void);
void USART0_DisableTXD(void);
void USART0_TransmitTxData(void);
void USART0_ProcessRxData(void);
int uart_putchar (int8_t c);

typedef struct
        uint8_t Digital[2];
        uint16_t Analog[32];    // Debugvalues
} DebugOut_t;

extern DebugOut_t DebugOut;

typedef struct
        int16_t Attitude[2];  // nock and roll angle in 0.1 deg
        uint8_t UserParam[2];
        uint8_t CalState;
        uint8_t Orientation;
} ExternData_t;

extern ExternData_t  ExternData;

typedef struct
        uint8_t Digital[2];
        uint8_t RemoteButtons;
        int8_t  Nick;
        int8_t  Roll;
        int8_t  Yaw;
        uint8_t Gas;
        int8_t  Height;
        uint8_t Par1;
        uint8_t Par2;
        uint8_t Par3;
} ExternControl_t;

extern ExternControl_t  ExternControl;

typedef struct
        uint8_t Major;
        uint8_t Minor;
        uint8_t PCCompatible;
        uint8_t Reserved[7];
}  VersionInfo_t;

extern VersionInfo_t VersionInfo;

#endif //_UART_H_