Subversion Repositories FlightCtrl

Rev

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

#ifndef _UART0_H
#define _UART0_H

#define RXD_BUFFER_LEN  150
// must be at least 4('#'+Addr+'CmdID'+'\r')+ (80 * 4)/3 = 111 bytes
#define TXD_BUFFER_LEN  150
#define RXD_BUFFER_LEN  150

#include <inttypes.h>

//Baud rate of the USART
#define USART0_BAUD 57600

extern void usart0_Init(void);
extern void usart0_TransmitTxData(void);
extern void usart0_ProcessRxData(void);
extern int16_t uart_putchar(int8_t c);

extern uint8_t RemotePollDisplayLine;

extern uint8_t motorTestActive;
extern uint8_t motorTest[16];

typedef struct {
        uint8_t digital[2];
        uint16_t analog[32]; // Debugvalues
}__attribute__((packed)) DebugOut_t;

extern DebugOut_t debugOut;

typedef struct {
        int16_t AngleNick; // in 0.1 deg
        int16_t AngleRoll; // in 0.1 deg
        int16_t Heading; // in 0.1 deg
        uint8_t reserve[8];
}__attribute__((packed)) Data3D_t;

typedef struct {
        uint8_t SWMajor;
        uint8_t SWMinor;
        uint8_t ProtoMajor;
        uint8_t ProtoMinor;
        uint8_t SWPatch;
        uint8_t Reserved[5];
}__attribute__((packed)) UART_VersionInfo_t;

#endif //_UART0_H