//********************************// /* */ /* Soubor: xbee_api.h */ /* */ /* Knihovna pro Xbee moduly */ /* Marek Frelich */ /* Projekt MMIA */ /* Datum: 5.5.2012 */ /* */ //********************************// #ifndef _XBEE_API #define _XBEE_API #include //-------------------------------- Definice konstant ------------------------------// #define F_OSC 14745600 //frekvence oscilátoru v Hz // Nastavení USART //#define USART0 // definice USART0 nebo USART1 #define USART1 #ifdef USART0 #define US_INT USART0_RX_vect #define UDR UDR0 #endif #ifdef USART1 #define US_INT USART1_RX_vect #define UDR UDR1 #endif #define US_UBR (F_OSC/(16*38400))-1 // Prvky Xbee paketu #define START_DELIMITER 0x00 #define LENGTH_MSB 0x01 #define LENGTH_LSB 0x02 #define FRAME_TYPE 0x03 #define FRAME_ID 0x04 // Příkazy Xbee #define XBEE_DELIMITER 0x7E #define AT_COMAND 0x08 #define TRANSMIT_REQ 0x10 #define REM_AT_COMAND 0x17 #define AT_RESPONSE 0x88 #define MODEM_STATUS 0x8A #define TRANSMIT_STATUS 0x8B #define RECEIVE_PACKET 0x90 #define RECEIVE_IO 0x92 #define REMOTE_AT_RESPONSE 0x97 #define XBEE_ADDRESS 0x05 #define NTW_ADDRESS 13 // Maximální délka paketu #define XBEE_PACKET_LENGTH 100 // Hodnoty které vracejí funkce #define ERROR 1 #define OK 0 #define OK_DATA 2 #define FALSE 0 #define TRUE 1 //-------------------------------- Deklarace funkcí -------------------------------// void Xbee_Send_AT (uint8_t AT_1, uint8_t AT_2, uint8_t value, uint8_t value_en); void Xbee_Transmit (uint8_t *address, uint8_t *network, uint8_t *data, uint8_t count_data); void Xbee_Send_Remote_AT (uint8_t *address, uint8_t *network, uint8_t AT_1, uint8_t AT_2, uint8_t value, uint8_t value_en); uint8_t Xbee_AT_Response (uint8_t *data); uint8_t Xbee_Status (uint8_t *data); uint8_t Xbee_Transmit_Status (uint8_t *data); uint8_t Xbee_Receive (uint8_t *data); uint8_t Xbee_Receive_IO (uint8_t *data); uint8_t Xbee_Remote_AT_Response (uint8_t *data); uint8_t CRC_Count(uint8_t *data, uint8_t count); void USART_Send (uint8_t *data, uint8_t length); void Init (void); #endif