keybrd library is an open source library for creating custom-keyboard firmware.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

123456789101112131415161718192021
  1. #ifndef PORTREAD_H
  2. #define PORTREAD_H
  3. #include <Arduino.h>
  4. #include <inttypes.h>
  5. /*
  6. PortRead is an abstract base class.
  7. Port classes are the keybrd library's interface to microcontroller ports or I/O expander ports.
  8. If your 8-bit AVR (Teensy 2) is running low on memory, using a smaller read_pins_t type saves SRAM.
  9. Details are in config_key.h
  10. */
  11. class PortRead
  12. {
  13. protected:
  14. const uint8_t readPins; //bitwise pin configuration, 1 means read pin
  15. public:
  16. PortRead(const uint8_t readPins): readPins(readPins) {}
  17. virtual uint8_t read()=0;
  18. };
  19. #endif