Initial work for iGaging distance gauge.

This commit is contained in:
Jacob Alexander 2014-02-02 00:03:51 -08:00
parent f55ec0de1a
commit cd59498972
3 changed files with 142 additions and 0 deletions

View file

@ -116,6 +116,18 @@ void printInt16( uint16_t in )
dPrintStr( tmpStr );
}
void printInt32( uint32_t in )
{
// Max number of characters is 10 + 1 for null
char tmpStr[11];
// Convert number
int32ToStr( in, tmpStr );
// Print number
dPrintStr( tmpStr );
}
void printHex_op( uint16_t in, uint8_t op )
{
// With an op of 1, the max number of characters is 6 + 1 for null
@ -175,6 +187,27 @@ void int16ToStr( uint16_t in, char* out )
}
void int32ToStr( uint32_t in, char* out )
{
// Position and sign containers
uint32_t pos;
pos = 0;
// Evaluate through digits as decimal
do
{
out[pos++] = in % 10 + '0';
}
while ( (in /= 10) > 0 );
// Append null
out[pos] = '\0';
// Reverse the string to the correct order
revsStr(out);
}
void hexToStr_op( uint16_t in, char* out, uint8_t op )
{
// Position container

View file

@ -98,6 +98,7 @@ void usb_debug_putstrs( char* first, ... );
void printInt8 ( uint8_t in );
void printInt16 ( uint16_t in );
void printInt32 ( uint32_t in );
void printHex_op( uint16_t in, uint8_t op );
@ -106,6 +107,7 @@ void printHex_op( uint16_t in, uint8_t op );
void int8ToStr ( uint8_t in, char* out );
void int16ToStr ( uint16_t in, char* out );
void int32ToStr ( uint32_t in, char* out );
void hexToStr_op( uint16_t in, char* out, uint8_t op );
void revsStr ( char* in );
uint16_t lenStr ( char* in );