Loading include/arch/lora32u4ii/driver/stdout.h +2 −0 Original line number Diff line number Diff line #ifndef STANDARDOUTPUT_H #define STANDARDOUTPUT_H #include <avr/pgmspace.h> #include "object/outputstream.h" class StandardOutput : public OutputStream { Loading @@ -12,6 +13,7 @@ class StandardOutput : public OutputStream { void setup(); virtual void put(char c) override; OutputStream & pprint(const char *text); }; extern StandardOutput kout; Loading src/arch/lora32u4ii/driver/stdout.cc +11 −1 Original line number Diff line number Diff line #include "driver/stdout.h" #include <avr/io.h> #include <avr/interrupt.h> #ifndef BAUD #define BAUD 9600UL Loading @@ -24,6 +23,17 @@ void StandardOutput::setup() //UCSR1D = 0; } OutputStream & StandardOutput::pprint(const char *text) { PGM_P p = reinterpret_cast<PGM_P>(text); char c; while ((c = pgm_read_byte(p++))) { put(c); } return *this; } void StandardOutput::put(char c) { while (!(UCSR1A & _BV(UDRE1))); Loading Loading
include/arch/lora32u4ii/driver/stdout.h +2 −0 Original line number Diff line number Diff line #ifndef STANDARDOUTPUT_H #define STANDARDOUTPUT_H #include <avr/pgmspace.h> #include "object/outputstream.h" class StandardOutput : public OutputStream { Loading @@ -12,6 +13,7 @@ class StandardOutput : public OutputStream { void setup(); virtual void put(char c) override; OutputStream & pprint(const char *text); }; extern StandardOutput kout; Loading
src/arch/lora32u4ii/driver/stdout.cc +11 −1 Original line number Diff line number Diff line #include "driver/stdout.h" #include <avr/io.h> #include <avr/interrupt.h> #ifndef BAUD #define BAUD 9600UL Loading @@ -24,6 +23,17 @@ void StandardOutput::setup() //UCSR1D = 0; } OutputStream & StandardOutput::pprint(const char *text) { PGM_P p = reinterpret_cast<PGM_P>(text); char c; while ((c = pgm_read_byte(p++))) { put(c); } return *this; } void StandardOutput::put(char c) { while (!(UCSR1A & _BV(UDRE1))); Loading