X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/c77f136661ae0fa779c02ef6efeab95aa4b92068..ceb16ee24f1e6add5e2ad0398369c24d2d868cd8:/Demos/Host/Incomplete/BluetoothHost/Lib/BluetoothACLPackets.h diff --git a/Demos/Host/Incomplete/BluetoothHost/Lib/BluetoothACLPackets.h b/Demos/Host/Incomplete/BluetoothHost/Lib/BluetoothACLPackets.h index 6038ea40e..1a72cede3 100644 --- a/Demos/Host/Incomplete/BluetoothHost/Lib/BluetoothACLPackets.h +++ b/Demos/Host/Incomplete/BluetoothHost/Lib/BluetoothACLPackets.h @@ -35,18 +35,23 @@ #include #include #include + #include #include + #include #include "BluetoothStack.h" /* Macros: */ - #define BT_ACL_DEBUG(s, ...) printf_P(PSTR("(ACL) " s "\r\n"), __VA_ARGS__) - #define ACL_DEBUG_LEVEL 1 + #define BT_ACL_DEBUG(l, s, ...) do { if (ACL_DEBUG_LEVEL >= l) printf_P(PSTR("(ACL) " s "\r\n"), ##__VA_ARGS__); } while (0) + #define ACL_DEBUG_LEVEL 0 + + #define BT_CHANNELNUMBER_BASEOFFSET 0x0040 #define BT_CHANNEL_SIGNALING 0x0001 #define BT_CHANNEL_CONNECTIONLESS 0x0002 + #define BT_SIGNAL_COMMAND_REJECT 0x01 #define BT_SIGNAL_CONNECTION_REQUEST 0x02 #define BT_SIGNAL_CONNECTION_RESPONSE 0x03 #define BT_SIGNAL_CONFIGURATION_REQUEST 0x04 @@ -65,12 +70,17 @@ #define BT_INFORMATION_NOTSUPPORTED 0x0001 #define BT_CONNECTION_SUCCESSFUL 0x0000 + #define BT_CONNECTION_REFUSED_PSM 0x0002 #define BT_CONNECTION_REFUSED_RESOURCES 0x0004 #define BT_CONFIGURATION_SUCCESSFUL 0x0000 #define BT_CONFIGURATION_REJECTED 0x0002 #define BT_CONFIGURATION_UNKNOWNOPTIONS 0x0003 + #define BT_CONFIG_OPTION_MTU 1 + + #define BT_ACL_FIRST_AUTOFLUSH (1 << 13) + /* Type Defines: */ typedef struct { @@ -140,29 +150,27 @@ uint16_t InfoType; uint16_t Result; } BT_Signal_InformationResp_t; + + typedef struct + { + uint8_t Type; + uint8_t Length; + } BT_Config_Option_Header_t; /* Function Prototypes: */ void Bluetooth_ACLTask(void); - uint8_t Bluetooth_SendPacket(uint8_t* Data, uint16_t DataLen, Bluetooth_Channel_t* Channel); #if defined(INCLUDE_FROM_BLUETOOTH_ACLPACKETS_C) - static void Bluetooth_ProcessACLPackets(void); - - static inline void Bluetooth_Signal_ConnectionReq(BT_ACL_Header_t* ACLPacketHeader, - BT_DataPacket_Header_t* DataHeader, - BT_Signal_Header_t* SignalCommandHeader); - static inline void Bluetooth_Signal_EchoReq(BT_ACL_Header_t* ACLPacketHeader, - BT_DataPacket_Header_t* DataHeader, - BT_Signal_Header_t* SignalCommandHeader); - static inline void Bluetooth_Signal_ConfigurationReq(BT_ACL_Header_t* ACLPacketHeader, - BT_DataPacket_Header_t* DataHeader, - BT_Signal_Header_t* SignalCommandHeader); - static inline void Bluetooth_Signal_DisconnectionReq(BT_ACL_Header_t* ACLPacketHeader, - BT_DataPacket_Header_t* DataHeader, - BT_Signal_Header_t* SignalCommandHeader); - static inline void Bluetooth_Signal_InformationReq(BT_ACL_Header_t* ACLPacketHeader, - BT_DataPacket_Header_t* DataHeader, - BT_Signal_Header_t* SignalCommandHeader); + static void Bluetooth_ProcessIncommingACLPackets(void); + + static inline void Bluetooth_Signal_ConnectionReq(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_ConnectionResp(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_ConfigurationReq(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_ConfigurationResp(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_DisconnectionReq(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_DisconnectionResp(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_EchoReq(const BT_Signal_Header_t* const SignalCommandHeader); + static inline void Bluetooth_Signal_InformationReq(const BT_Signal_Header_t* const SignalCommandHeader); #endif #endif