diff options
author | Daniel Friesel <daniel.friesel@uos.de> | 2022-06-28 16:00:06 +0200 |
---|---|---|
committer | Daniel Friesel <daniel.friesel@uos.de> | 2022-06-28 16:00:06 +0200 |
commit | 2a9250606e00c4729db79811e6c50f9ddeb29188 (patch) | |
tree | c44cd1c5235308659aabc7373a20876ed4ffa59b /include/arch/infineon-tc397-mock | |
parent | 0a9bce42c0e09432cd34b415f106621c851bb8a6 (diff) |
tc1796/tc397 are not properly implemented → rename to -mock
Diffstat (limited to 'include/arch/infineon-tc397-mock')
-rw-r--r-- | include/arch/infineon-tc397-mock/driver/counter.h | 31 | ||||
-rw-r--r-- | include/arch/infineon-tc397-mock/driver/gpio.h | 47 | ||||
-rw-r--r-- | include/arch/infineon-tc397-mock/driver/stdout.h | 24 | ||||
-rw-r--r-- | include/arch/infineon-tc397-mock/driver/uptime.h | 32 |
4 files changed, 134 insertions, 0 deletions
diff --git a/include/arch/infineon-tc397-mock/driver/counter.h b/include/arch/infineon-tc397-mock/driver/counter.h new file mode 100644 index 0000000..b7330db --- /dev/null +++ b/include/arch/infineon-tc397-mock/driver/counter.h @@ -0,0 +1,31 @@ +/* + * Copyright 2022 Daniel Friesel + * + * SPDX-License-Identifier: BSD-2-Clause + */ +#ifndef COUNTER_H +#define COUNTER_H + +typedef unsigned int counter_value_t; +typedef unsigned int counter_overflow_t; + +class Counter { + private: + Counter(const Counter ©); + + public: + counter_value_t value; + volatile counter_overflow_t overflow; + + Counter() : overflow(0) {} + + inline void start() { + } + + inline void stop() { + } +}; + +extern Counter counter; + +#endif diff --git a/include/arch/infineon-tc397-mock/driver/gpio.h b/include/arch/infineon-tc397-mock/driver/gpio.h new file mode 100644 index 0000000..83689b6 --- /dev/null +++ b/include/arch/infineon-tc397-mock/driver/gpio.h @@ -0,0 +1,47 @@ +/* + * Copyright 2022 Daniel Friesel + * + * SPDX-License-Identifier: BSD-2-Clause + */ +#ifndef GPIO_H +#define GPIO_H + +class GPIO { + private: + GPIO(const GPIO ©); + + public: + GPIO () {} + + enum Pin : unsigned char { + PIN_INVALID + }; + + inline void setup() { + } + inline void led_on(unsigned char id = 0) { + } + inline void led_off(unsigned char id = 0) { + } + inline void led_toggle(unsigned char id = 0) { + } + inline void input(unsigned char const pin) { + } + inline void input(unsigned char const pin, unsigned char const pull) { + } + inline void output(unsigned char const pin) { + } + inline void output(unsigned char const pin, unsigned char const value) { + } + inline unsigned char read(unsigned char const pin) { + return 0; + } + inline void write(unsigned char const pin, unsigned char value) { + } + inline void write_mask(unsigned char const pin_base, unsigned char set_mask, unsigned char clear_mask) { + } +}; + +extern GPIO gpio; + +#endif diff --git a/include/arch/infineon-tc397-mock/driver/stdout.h b/include/arch/infineon-tc397-mock/driver/stdout.h new file mode 100644 index 0000000..b701dc1 --- /dev/null +++ b/include/arch/infineon-tc397-mock/driver/stdout.h @@ -0,0 +1,24 @@ +/* + * Copyright 2022 Daniel Friesel + * + * SPDX-License-Identifier: BSD-2-Clause + */ +#ifndef STANDARDOUTPUT_H +#define STANDARDOUTPUT_H + +#include "object/outputstream.h" + +class StandardOutput : public OutputStream { + private: + StandardOutput(const StandardOutput ©); + + public: + StandardOutput () {} + void setup(); + + virtual void put(char c) override; +}; + +extern StandardOutput kout; + +#endif diff --git a/include/arch/infineon-tc397-mock/driver/uptime.h b/include/arch/infineon-tc397-mock/driver/uptime.h new file mode 100644 index 0000000..6f52f8f --- /dev/null +++ b/include/arch/infineon-tc397-mock/driver/uptime.h @@ -0,0 +1,32 @@ +/* + * Copyright 2022 Daniel Friesel + * + * SPDX-License-Identifier: BSD-2-Clause + */ +#ifndef UPTIME_H +#define UPTIME_H + +class Uptime { + private: + Uptime(const Uptime ©); +#ifdef TIMER_S + uint16_t seconds; +#endif + + public: +#ifdef TIMER_S + Uptime () : seconds(0) {} +#else + Uptime () {} +#endif + inline uint16_t get_us() { return 0; } + inline uint16_t get_cycles() { return 0; } +#ifdef TIMER_S + inline uint16_t get_s() { return seconds; } + inline void tick_s() { seconds++; } +#endif +}; + +extern Uptime uptime; + +#endif |