class library to access fischertechnik interfaces via USB

Dependencies:   FatFileSystem mbed myBlueUSB neigbourhood rfcomm sdp

Committer:
networker
Date:
Wed Jun 15 19:12:25 2011 +0000
Revision:
0:7da612835693
initial version
; Bluetooth support incomplete

Who changed what in which revision?

UserRevisionLine numberNew contents of line
networker 0:7da612835693 1
networker 0:7da612835693 2
networker 0:7da612835693 3 #include "mbed.h"
networker 0:7da612835693 4 #include "Utils.h"
networker 0:7da612835693 5
networker 0:7da612835693 6 void printfBytes(const char* s, const u8* data, int len)
networker 0:7da612835693 7 {
networker 0:7da612835693 8 printf("%s %d:",s,len);
networker 0:7da612835693 9 if (len > 256)
networker 0:7da612835693 10 len = 256;
networker 0:7da612835693 11 while (len-- > 0)
networker 0:7da612835693 12 printf(" %02X",*data++);
networker 0:7da612835693 13 printf("\n");
networker 0:7da612835693 14 }
networker 0:7da612835693 15
networker 0:7da612835693 16 void printHexLine(const u8* d, int addr, int len)
networker 0:7da612835693 17 {
networker 0:7da612835693 18 printf("%04X ",addr);
networker 0:7da612835693 19 int i;
networker 0:7da612835693 20 for (i = 0; i < len; i++)
networker 0:7da612835693 21 printf("%02X ",d[i]);
networker 0:7da612835693 22 for (;i < 16; i++)
networker 0:7da612835693 23 printf(" ");
networker 0:7da612835693 24 char s[16+1];
networker 0:7da612835693 25 memset(s,0,sizeof(s));
networker 0:7da612835693 26 for (i = 0; i < len; i++)
networker 0:7da612835693 27 {
networker 0:7da612835693 28 int c = d[i];
networker 0:7da612835693 29 if (c < 0x20 || c > 0x7E)
networker 0:7da612835693 30 c = '.';
networker 0:7da612835693 31 s[i] = c;
networker 0:7da612835693 32 }
networker 0:7da612835693 33 printf("%s\n",s);
networker 0:7da612835693 34 }
networker 0:7da612835693 35
networker 0:7da612835693 36 void printHex(const u8* d, int len)
networker 0:7da612835693 37 {
networker 0:7da612835693 38 int addr = 0;
networker 0:7da612835693 39 while (len)
networker 0:7da612835693 40 {
networker 0:7da612835693 41 int count = len;
networker 0:7da612835693 42 if (count > 16)
networker 0:7da612835693 43 count = 16;
networker 0:7da612835693 44 printHexLine(d+addr,addr,count);
networker 0:7da612835693 45 addr += 16;
networker 0:7da612835693 46 len -= count;
networker 0:7da612835693 47 }
networker 0:7da612835693 48 }
networker 0:7da612835693 49