local fix version of myBlueUSB (http://mbed.org/users/networker/code/myBlueUSB/). - merge deleted files which are required to compile. - enable echo back of received data via RFCOMM.
Dependencies: AvailableMemory FatFileSystem mbed myUSBHost
ftclasslibusbdevbt.h
00001 #ifndef FTCLASSLIBUSBDEVBT_H 00002 #define FTCLASSLIBUSBDEVBT_H 00003 00004 00005 class ftbtdev {//small object for ft BT enumeration 00006 inquiry_info info; 00007 public: 00008 ftbtdev(inquiry_info* ii) { 00009 info = *ii; 00010 } 00011 BD_ADDR* BtAddr() { 00012 return &info.bdaddr; 00013 } 00014 }; 00015 00016 class ftdev {//this should in the future encapsulate the real TXC 00017 int sock; 00018 int parseState; 00019 unsigned short X1_crc, X1_len, X1_pos; 00020 unsigned char *X1_pkt; 00021 unsigned short chksum(); 00022 void parse(const unsigned char *, unsigned); 00023 public: 00024 ftdev(): sock(0) { parseState = 0;} 00025 int Open(BD_ADDR *bt_addr, int chan=1, SocketCallback cb=&ftdev::recv) { 00026 L2CAPAddr s; 00027 s.bdaddr = *bt_addr; 00028 s.psm = chan;//abuse the psm for the channelID 00029 sock = Socket_Open(SOCKET_RFCOM, &s.hdr, cb, this);//Open the serial connection via RFCOMM 00030 if (sock<=0) 00031 printf("Opening of RFCOMM socket for ftdevice failed (%d)\n", sock); 00032 return sock; 00033 } 00034 static void recv(int socket, SocketState state, const u8* data, int len, void* userData) { 00035 if (userData) ((ftdev*)userData)->receive(socket, state, data, len); 00036 } 00037 void receive(int socket, SocketState state, const u8* data, int len);// {printf("ftdev::receive was called: socket %d, state=%d, length=%d\n", socket, state, len);} 00038 }; 00039 00040 extern ftdev _ftdev; 00041 00042 unsigned InitFtBtDeviceList(); 00043 int GetNrOfFtBtDevices(); 00044 ftbtdev* GetFtUsbDeviceHandle(unsigned Num); 00045 unsigned OpenFtBtDevice(ftbtdev* d); 00046 00047 #endif
Generated on Tue Jul 12 2022 18:48:53 by 1.7.2