/* ----------------------------------------------------- HardwareSerial_v003.h Header fuer nicht im Core verfuegbaren Funktionen des CH32V003 MCU : CH32V003 Takt : 48 MHz 30.11.2025 R. Seelig ------------------------------------------------------ */ #ifdef CH32V00x #ifndef in_v003_serial #define in_v003_serial #include #include "Arduino.h" class HardwareSerial_v003 : public Stream { #define FUNCONF_SYSTEM_CORE_CLOCK 48000000l #define GPIO_CNF_OUT_PP_AF 8 #define GPIO_CNF_IN_PUPD 8 #define CTLR1_UE_Set ((uint16_t)0x2000) // USART enable mask public: HardwareSerial_v003(); void begin(uint32_t brate); void putchar(uint8_t ch); uint8_t getchar(void); uint8_t ischar(void); // Stream Methoden int available() override; int read() override; int peek() override; size_t write(uint8_t) override; operator bool() { return 1; } void end () { } private: uint32_t baudrate; }; #endif #endif