Simons Wii controlled m3pi program

Dependencies:   mbed m3pi ID12RFIDIRQ

Committer:
chris
Date:
Wed May 18 14:50:46 2011 +0000
Revision:
0:0ab65a1aef12
Added some printing to the m3pi screen

Who changed what in which revision?

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