Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: Arduino-mbed-APIs/arduino-util.cpp
- Revision:
- 79:8ae448a3c1fd
- Parent:
- 75:7330dd86cdea
- Child:
- 81:d288917af0ce
diff -r 9d2cc07d9525 -r 8ae448a3c1fd Arduino-mbed-APIs/arduino-util.cpp
--- a/Arduino-mbed-APIs/arduino-util.cpp	Wed Aug 02 10:34:14 2017 +0200
+++ b/Arduino-mbed-APIs/arduino-util.cpp	Thu Aug 03 11:59:54 2017 +0200
@@ -14,11 +14,18 @@
 void
 dprintf(const char *format, ...)
 {
+    static volatile bool busy;
+    if (busy)
+        return;
+    busy = true;
+    
     int secs = s_getTicker();
     int s = secs % 60;
     int m = secs / 60;
     int h = secs / 3600;
-    int us = us_getTicker() & ((1000000)-1);
+    int us = us_getTicker();
+    while(us > 999999)
+        us /= 10;	// get it to 6 digits only
 
     snprintf(tmpbuf, sizeof(tmpbuf)-1, "%02d:%02d:%02d.%.06d ", h, m, s, us);
     ser->write(tmpbuf, (int) sizeof "00:00:34.3436868 " -1);
@@ -31,6 +38,7 @@
 	tmpbuf[len+2] = 0;
 	ser->write(tmpbuf, len+3);
 	va_end(arg);
+    busy = false;
 }
 
 void