mirror of
https://github.com/thelsing/knx.git
synced 2025-08-22 13:46:21 +02:00
Add printing of uint64_t
This commit is contained in:
parent
b5b0f4f0d2
commit
318a384532
@ -111,6 +111,23 @@ int ArduinoPlatform::readWriteSpi(uint8_t *data, size_t len)
|
||||
return 0;
|
||||
}
|
||||
|
||||
void printUint64(uint64_t value, int base = DEC)
|
||||
{
|
||||
char buf[8 * sizeof(uint64_t) + 1];
|
||||
char* str = &buf[sizeof(buf) - 1];
|
||||
*str = '\0';
|
||||
|
||||
uint64_t n = value;
|
||||
do {
|
||||
char c = n % base;
|
||||
n /= base;
|
||||
|
||||
*--str = c < 10 ? c + '0' : c + 'A' - 10;
|
||||
} while (n > 0);
|
||||
|
||||
print(str);
|
||||
}
|
||||
|
||||
void print(const char* s)
|
||||
{
|
||||
ArduinoPlatform::SerialDebug->print(s);
|
||||
@ -170,6 +187,16 @@ void print(unsigned long num, int base)
|
||||
ArduinoPlatform::SerialDebug->print(num, base);
|
||||
}
|
||||
|
||||
void print(unsigned long long num)
|
||||
{
|
||||
printUint64(num);
|
||||
}
|
||||
|
||||
void print(unsigned long long num, int base)
|
||||
{
|
||||
printUint64(num, base);
|
||||
}
|
||||
|
||||
void print(double num)
|
||||
{
|
||||
ArduinoPlatform::SerialDebug->print(num);
|
||||
@ -235,6 +262,18 @@ void println(unsigned long num, int base)
|
||||
ArduinoPlatform::SerialDebug->println(num, base);
|
||||
}
|
||||
|
||||
void println(unsigned long long num)
|
||||
{
|
||||
printUint64(num);
|
||||
println("");
|
||||
}
|
||||
|
||||
void println(unsigned long long num, int base)
|
||||
{
|
||||
printUint64(num, base);
|
||||
println("");
|
||||
}
|
||||
|
||||
void println(double num)
|
||||
{
|
||||
ArduinoPlatform::SerialDebug->println(num);
|
||||
|
@ -58,6 +58,7 @@ void print(int, int = DEC);
|
||||
void print(unsigned int, int = DEC);
|
||||
void print(long, int = DEC);
|
||||
void print(unsigned long, int = DEC);
|
||||
void print(unsigned long long, int = DEC);
|
||||
void print(double);
|
||||
|
||||
void println(const char[]);
|
||||
@ -67,6 +68,7 @@ void println(int, int = DEC);
|
||||
void println(unsigned int, int = DEC);
|
||||
void println(long, int = DEC);
|
||||
void println(unsigned long, int = DEC);
|
||||
void println(unsigned long long, int = DEC);
|
||||
void println(double);
|
||||
void println(void);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user