Ok, so now I've got:
char digits[5];
char intToChar(int value) {
//blank the char values
for(int i=0;i<5;i++) {
digits[i]=' ';
}
digits[5] = '\0';
digits[4]=(char)((value%10)+48);
value=value/10;
digits[3]=(char)((value%10)+48);
value=value/10;
digits[2]=(char)((value%10)+48);
value=value/10;
digits[1]=(char)((value%10)+48);
value=value/10;
digits[0]=(char)((value%10)+48);
}
...
lcd.print(intToChar(2));
Seems to be closer! But no matter what number I put in there, it returns 0.
Do I need to put a return in the function?
I'm not sure if the LCD library accepts an array to tell you the truth.