This is the project for the Old Model Robots for OU's Dr. Davis's Configurable Robots Research. This is being published so future robots can be set up easily.

Dependencies:   FatFileSystem MCP3008 Motor PinDetect QTR_8A SRF05 SSD1308_128x64_I2C mbed

Committer:
DrewSchaef
Date:
Wed Nov 01 15:57:59 2017 +0000
Revision:
0:bcad524c1856
Published the project to allow access for future work on the Configurable Robots Research Project(s).

Who changed what in which revision?

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