UVC host library

Dependents:   LifeCam WebcamServer

Committer:
va009039
Date:
Wed Aug 15 13:52:53 2012 +0000
Revision:
3:3eb41d749f9a
Parent:
0:b0f04c137829
add USB_USE_MALLOC

Who changed what in which revision?

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