13
13
#include < stdarg.h>
14
14
15
15
#include < Arduino.h>
16
- #include < api/ HardwareSerial.h>
16
+ #include < HardwareSerial.h>
17
17
18
18
// clang-format off
19
19
#include " sfTkArdUART.h"
22
22
#include " sfTk/sfTkIUART.h"
23
23
// clang-format on
24
24
25
- sfTkError_t sfTkArdUART::init (arduino:: HardwareSerial &hwSerial, sfTkIUART::UARTConfig_t &config, bool bInit)
25
+ sfTkError_t sfTkArdUART::init (HardwareSerial &hwSerial, sfTkIUART::UARTConfig_t &config, bool bInit)
26
26
{
27
27
_hwSerial = &hwSerial; // set the serial port
28
28
@@ -34,7 +34,7 @@ sfTkError_t sfTkArdUART::init(arduino::HardwareSerial &hwSerial, sfTkIUART::UART
34
34
return ksfTkErrOk;
35
35
}
36
36
37
- sfTkError_t sfTkArdUART::init (arduino:: HardwareSerial &hwSerial, uint32_t baudRate, bool bInit)
37
+ sfTkError_t sfTkArdUART::init (HardwareSerial &hwSerial, uint32_t baudRate, bool bInit)
38
38
{
39
39
_hwSerial = &hwSerial; // set the serial port
40
40
@@ -103,7 +103,11 @@ sfTkError_t sfTkArdUART::read(uint8_t *data, size_t length, size_t &bytesRead)
103
103
104
104
bytesRead = 0 ; // zero out value
105
105
106
- bytesRead = readBytes (data, length);
106
+ // #ifdef ARDUINO_ARCH_AVR
107
+ bytesRead = _hwSerial->readBytes (data, length);
108
+ // #else
109
+ // bytesRead = readBytes(data, length);
110
+ // #endif
107
111
108
112
if (bytesRead == 0 )
109
113
return ksfTkErrFail;
@@ -179,7 +183,12 @@ sfTkError_t sfTkArdUART::_start(void)
179
183
if (_running)
180
184
end (); // close the port if already running
181
185
// set the config
186
+ #ifdef ARDUINO_ARCH_ESP8266
187
+ // ESP8266 does not support setting stop bits, parity, and data bits in a stanard manner.
188
+ _hwSerial->begin (_config.baudRate );
189
+ #else
182
190
_hwSerial->begin (_config.baudRate , _config.stopBits | _config.parity | _config.dataBits );
191
+ #endif
183
192
if (!availableForWrite ())
184
193
return ksfTkErrSerialNotInit; // check if the port is available
185
194
// set the running flag to true
@@ -241,31 +250,32 @@ unsigned long sfTkArdUART::getTimeout()
241
250
return _hwSerial->getTimeout ();
242
251
}
243
252
244
- bool sfTkArdUART::find (const char *target)
253
+ #if !defined(ARDUINO_ARCH_AVR) && !defined(ARDUINO_ARCH_ESP8266)
254
+ bool sfTkArdUART::find (CONSTVAR char *target)
245
255
{
246
256
if (!_hwSerial)
247
257
return false ;
248
258
249
259
return _hwSerial->find (target);
250
260
}
251
261
252
- bool sfTkArdUART::find (const uint8_t *target)
262
+ bool sfTkArdUART::find (CONSTVAR uint8_t *target)
253
263
{
254
264
if (!_hwSerial)
255
265
return false ;
256
266
257
267
return _hwSerial->find (target);
258
268
}
259
269
260
- bool sfTkArdUART::find (const char *target, size_t length)
270
+ bool sfTkArdUART::find (CONSTVAR char *target, size_t length)
261
271
{
262
272
if (!_hwSerial)
263
273
return false ;
264
274
265
275
return _hwSerial->find (target, length);
266
276
}
267
277
268
- bool sfTkArdUART::find (const uint8_t *target, size_t length)
278
+ bool sfTkArdUART::find (CONSTVAR uint8_t *target, size_t length)
269
279
{
270
280
if (!_hwSerial)
271
281
return false ;
@@ -281,53 +291,71 @@ bool sfTkArdUART::find(char target)
281
291
return _hwSerial->find (target);
282
292
}
283
293
284
- bool sfTkArdUART::findUntil (const char *target, const char *terminator)
294
+ bool sfTkArdUART::findUntil (CONSTVAR char *target, CONSTVAR char *terminator)
285
295
{
286
296
if (!_hwSerial)
287
297
return false ;
288
298
289
299
return _hwSerial->findUntil (target, terminator);
290
300
}
291
301
292
- bool sfTkArdUART::findUntil (const uint8_t *target, const char *terminator)
302
+ bool sfTkArdUART::findUntil (CONSTVAR uint8_t *target, CONSTVAR char *terminator)
293
303
{
294
304
if (!_hwSerial)
295
305
return false ;
296
306
297
307
return _hwSerial->findUntil (target, terminator);
298
308
}
299
309
300
- bool sfTkArdUART::findUntil (const char *target, size_t targetLen, const char *terminate, size_t termLen)
310
+ bool sfTkArdUART::findUntil (CONSTVAR char *target, size_t targetLen, CONSTVAR char *terminate, size_t termLen)
301
311
{
302
312
if (!_hwSerial)
303
313
return false ;
304
314
305
315
return _hwSerial->findUntil (target, targetLen, terminate, termLen);
306
316
}
307
317
308
- bool sfTkArdUART::findUntil (const uint8_t *target, size_t targetLen, const char *terminate, size_t termLen)
318
+ bool sfTkArdUART::findUntil (CONSTVAR uint8_t *target, size_t targetLen, CONSTVAR char *terminate, size_t termLen)
309
319
{
310
320
if (!_hwSerial)
311
321
return false ;
312
322
313
323
return _hwSerial->findUntil (target, targetLen, terminate, termLen);
314
324
}
315
325
316
- long sfTkArdUART::parseInt (arduino::LookaheadMode lookahead, char ignore)
326
+ #ifdef ARDUINO_ARCH_ESP8266
327
+ long sfTkArdUART::parseInt ()
328
+ {
329
+ if (!_hwSerial)
330
+ return 0 ;
331
+
332
+ return _hwSerial->parseInt ();
333
+ }
334
+
335
+ float sfTkArdUART::parseFloat ()
336
+ {
337
+ if (!_hwSerial)
338
+ return 0 .0f ;
339
+
340
+ return _hwSerial->parseFloat ();
341
+ }
342
+ #else
343
+ long sfTkArdUART::parseInt (LookaheadMode lookahead, char ignore)
317
344
{
318
345
if (!_hwSerial)
319
346
return 0 ;
320
347
321
348
return _hwSerial->parseInt (lookahead, ignore);
322
349
}
323
350
324
- float sfTkArdUART::parseFloat (arduino:: LookaheadMode lookahead, char ignore)
351
+ float sfTkArdUART::parseFloat (LookaheadMode lookahead, char ignore)
325
352
{
326
353
if (!_hwSerial)
327
354
return 0 .0f ;
328
355
329
356
return _hwSerial->parseFloat (lookahead, ignore);
330
357
}
358
+ #endif
331
359
332
360
size_t sfTkArdUART::readBytes (char *buffer, size_t length)
333
361
{
@@ -361,18 +389,18 @@ size_t sfTkArdUART::readBytesUntil(char terminator, uint8_t *buffer, size_t leng
361
389
return _hwSerial->readBytesUntil (terminator, buffer, length);
362
390
}
363
391
364
- arduino:: String sfTkArdUART::readString ()
392
+ String sfTkArdUART::readString ()
365
393
{
366
394
if (!_hwSerial)
367
- return arduino:: String (" " );
395
+ return String (" " );
368
396
369
397
return _hwSerial->readString ();
370
398
}
371
399
372
- arduino:: String sfTkArdUART::readStringUntil (char terminator)
400
+ String sfTkArdUART::readStringUntil (char terminator)
373
401
{
374
402
if (!_hwSerial)
375
- return arduino:: String (" " );
403
+ return String (" " );
376
404
377
405
return _hwSerial->readStringUntil (terminator);
378
406
}
@@ -381,15 +409,15 @@ arduino::String sfTkArdUART::readStringUntil(char terminator)
381
409
* @brief Print mappings
382
410
*
383
411
*/
384
- size_t sfTkArdUART::print (const arduino:: __FlashStringHelper *ifsh)
412
+ size_t sfTkArdUART::print (const __FlashStringHelper *ifsh)
385
413
{
386
414
if (!_hwSerial)
387
415
return 0 ;
388
416
389
417
return _hwSerial->print (ifsh);
390
418
}
391
419
392
- size_t sfTkArdUART::print (const arduino:: String &s)
420
+ size_t sfTkArdUART::print (const String &s)
393
421
{
394
422
if (!_hwSerial)
395
423
return 0 ;
@@ -477,23 +505,23 @@ size_t sfTkArdUART::print(double n, int digits)
477
505
return _hwSerial->print (n, digits);
478
506
}
479
507
480
- size_t sfTkArdUART::print (const arduino:: Printable &x)
508
+ size_t sfTkArdUART::print (const Printable &x)
481
509
{
482
510
if (!_hwSerial)
483
511
return 0 ;
484
512
485
513
return _hwSerial->print (x);
486
514
}
487
515
488
- size_t sfTkArdUART::println (const arduino:: __FlashStringHelper *ifsh)
516
+ size_t sfTkArdUART::println (const __FlashStringHelper *ifsh)
489
517
{
490
518
if (!_hwSerial)
491
519
return 0 ;
492
520
493
521
return _hwSerial->println (ifsh);
494
522
}
495
523
496
- size_t sfTkArdUART::println (const arduino:: String &s)
524
+ size_t sfTkArdUART::println (const String &s)
497
525
{
498
526
if (!_hwSerial)
499
527
return 0 ;
@@ -581,7 +609,7 @@ size_t sfTkArdUART::println(double n, int digits)
581
609
return _hwSerial->println (n, digits);
582
610
}
583
611
584
- size_t sfTkArdUART::println (const arduino:: Printable &x)
612
+ size_t sfTkArdUART::println (const Printable &x)
585
613
{
586
614
if (!_hwSerial)
587
615
return 0 ;
@@ -596,27 +624,4 @@ size_t sfTkArdUART::println(void)
596
624
597
625
return _hwSerial->println ();
598
626
}
599
-
600
- size_t sfTkArdUART::printf (const char *format, ...)
601
- {
602
- if (!_hwSerial)
603
- return 0 ;
604
-
605
- va_list argptr;
606
- va_start (argptr, format);
607
- size_t retVal = _hwSerial->printf (format, argptr);
608
- va_end (argptr);
609
- return retVal;
610
- }
611
-
612
- size_t sfTkArdUART::printf_P (const char *format, ...)
613
- {
614
- if (!_hwSerial)
615
- return 0 ;
616
-
617
- va_list argptr;
618
- va_start (argptr, format);
619
- size_t retVal = _hwSerial->printf_P (format, argptr);
620
- va_end (argptr);
621
- return retVal;
622
- }
627
+ #endif
0 commit comments