diff options
Diffstat (limited to 'hal/pin.tpp')
-rw-r--r-- | hal/pin.tpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/hal/pin.tpp b/hal/pin.tpp new file mode 100644 index 0000000..4f6bd4a --- /dev/null +++ b/hal/pin.tpp @@ -0,0 +1,30 @@ +/* + * File: pin.cpp + * Author: naopross + * + * Created on May 3, 2018, 8:02 PM + */ + +#include "pin.hpp" + +template<typename reg, unsigned bit> +pin<reg, bit>::pin(reg *r) +{ + _register = r; +} + + +template<typename reg, unsigned bit> +pin<reg, bit>::~pin() +{ + +} + +template<typename reg, unsigned bit> +void pin<reg, bit>::set(bool v) +{ + if (v) + *reinterpret_cast<volatile uint8_t *>(_register) |= 1<<bit; + else + *reinterpret_cast<volatile uint8_t *>(_register) &= ~(1<<bit); +}
\ No newline at end of file |