Subversion Repositories Code-Repo

Compare Revisions

Ignore whitespace Rev 126 → Rev 127

/PIC Stuff/PIC_27J13/xbee.h/xbee.h
1,15 → 1,29
#ifndef __xbee_h
#define __xbee_h
 
#define XBEE_BUFFER_SIZE MSGLEN
#define XBEE_START_DELIMITER 0x7E
#define XBEE_BUFFER_SIZE 256
 
#define XBEE_CTS_TRIS TRISBbits.TRISB0
#define XBEE_RTS_TRIS TRISBbits.TRISB1
#define XBEE_CTS_LAT LATBbits.LATB0
#define XBEE_RTS_LAT LATBbits.LATB1
#define XBEE_CTS_PORT PORTBbits.RB0
 
// If API mode = 2 is enabled
#define XBEE_USE_ESCAPE_CHAR
 
#define XBEE_ESCAPE_VAL 0x20
#define XBEE_START_DELIMITER 0x7E
#define XBEE_ESCAPE_CHAR 0x7D
#define XBEE_XON 0x11
#define XBEE_XOFF 0x13
 
// Expected 'next' state
#define XBEE_STATE_READ_START 10
#define XBEE_STATE_READ_LENGTH_HIGH 11
#define XBEE_STATE_READ_LENGTH_LOW 12
#define XBEE_STATE_READ_FRAME_DATA 14
#define XBEE_STATE_READ_CHECKSUM 15
#define XBEE_STATE_READ_FRAME_DATA 13
#define XBEE_STATE_READ_CHECKSUM 14
 
// Command Frame Type
#define XBEE_TX_AT_COMMAND 0x08
237,20 → 251,25
// Overall Data Structure
typedef struct __xbee_data {
XBEE_FRAME rcv_frame;
unsigned char dataind;
unsigned int dataind;
unsigned char checksum_sum;
unsigned char read_state;
unsigned char msgtype;
unsigned char frame_rdy;
unsigned char escape_flag;
} XBEE_DATA;
 
 
void xbee_init(XBEE_DATA *);
void xbee_read_serial(unsigned char);
void xbee_process_recieved_frame(void);
//void xbee_process_transmit_frame_interrupt(void);
void xbee_process_transmit_frame(void *data, unsigned char length);
void XBee_Init(void);
void XBee_Serial_In(unsigned char);
void XBee_Process_Received_Frame(void);
void XBee_Process_Transmit_Frame(unsigned char *data, unsigned char length);
 
void xbee_set_RTS(unsigned char);
unsigned char xbee_read_CTS(void);
unsigned int XBee_Get_Received_Frame(unsigned char *frame);
 
void XBee_Set_RTS(unsigned char);
unsigned char XBee_Read_CTS(void);
 
void XBee_ConvertEndian64(XBEE_ADDRESS_64 *src);
void XBee_ConvertEndian16(XBEE_ADDRESS_16 *src);
 
#endif