Oskar Weigl
/
USBHost_Barcode
This program uses code taken from another program called BlueUSB
barcodecallback.h@0:31713f62f35b, 2011-12-10 (annotated)
- Committer:
- madcowswe
- Date:
- Sat Dec 10 18:45:31 2011 +0000
- Revision:
- 0:31713f62f35b
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
madcowswe | 0:31713f62f35b | 1 | |
madcowswe | 0:31713f62f35b | 2 | #include <string> |
madcowswe | 0:31713f62f35b | 3 | |
madcowswe | 0:31713f62f35b | 4 | /* |
madcowswe | 0:31713f62f35b | 5 | void printfBytes(const char* s, const u8* data, int len) |
madcowswe | 0:31713f62f35b | 6 | { |
madcowswe | 0:31713f62f35b | 7 | printf("%s %d:",s,len); |
madcowswe | 0:31713f62f35b | 8 | if (len > 256) |
madcowswe | 0:31713f62f35b | 9 | len = 256; |
madcowswe | 0:31713f62f35b | 10 | while (len-- > 0) |
madcowswe | 0:31713f62f35b | 11 | printf(" %02X",*data++); |
madcowswe | 0:31713f62f35b | 12 | printf("\n"); |
madcowswe | 0:31713f62f35b | 13 | }*/ |
madcowswe | 0:31713f62f35b | 14 | |
madcowswe | 0:31713f62f35b | 15 | void barcodeparser(unsigned char* data, int len) { |
madcowswe | 0:31713f62f35b | 16 | |
madcowswe | 0:31713f62f35b | 17 | //printf("%X ", data[2]); |
madcowswe | 0:31713f62f35b | 18 | |
madcowswe | 0:31713f62f35b | 19 | static string buildstring; |
madcowswe | 0:31713f62f35b | 20 | |
madcowswe | 0:31713f62f35b | 21 | char inchar; |
madcowswe | 0:31713f62f35b | 22 | if (data[2] == 0) |
madcowswe | 0:31713f62f35b | 23 | return; |
madcowswe | 0:31713f62f35b | 24 | else if (data[2] < 0x27) |
madcowswe | 0:31713f62f35b | 25 | inchar = (char)(data[2] - 0x1e + '1'); |
madcowswe | 0:31713f62f35b | 26 | else if (data[2] == 0x27) |
madcowswe | 0:31713f62f35b | 27 | inchar = '0'; |
madcowswe | 0:31713f62f35b | 28 | else if (data[2] == 0x28) |
madcowswe | 0:31713f62f35b | 29 | inchar = '\n'; |
madcowswe | 0:31713f62f35b | 30 | |
madcowswe | 0:31713f62f35b | 31 | //printf("%X ", data[2]); |
madcowswe | 0:31713f62f35b | 32 | //fflush(stdout); |
madcowswe | 0:31713f62f35b | 33 | |
madcowswe | 0:31713f62f35b | 34 | buildstring += inchar; |
madcowswe | 0:31713f62f35b | 35 | |
madcowswe | 0:31713f62f35b | 36 | if (data[2] == 0x28){ |
madcowswe | 0:31713f62f35b | 37 | printf("%s", buildstring.c_str()); |
madcowswe | 0:31713f62f35b | 38 | fflush(stdout); |
madcowswe | 0:31713f62f35b | 39 | buildstring = ""; |
madcowswe | 0:31713f62f35b | 40 | } |
madcowswe | 0:31713f62f35b | 41 | |
madcowswe | 0:31713f62f35b | 42 | //printfBytes("Data is: ", data, len); |
madcowswe | 0:31713f62f35b | 43 | } |