61 void gpioMode (uint16_t gpio, uint16_t mode);
62 bool gpioRead (uint16_t gpio);
63 void gpioWrite (uint16_t gpio,
bool value);
64 void gpioToggle(uint16_t gpio);
67 void gpioAttachIrq (uint16_t gpio,
69 function<
void()> handler);
70 void gpioDetachIrq (uint16_t gpio);
71 void gpioEnableIrq (uint16_t gpio);
72 void gpioDisableIrq(uint16_t gpio);
73 void handleInterrupt();
76 bool configPWM (uint8_t port, uint8_t pin, CY8C95XXA::pwm_clk clk,
77 uint8_t period,uint8_t width);
78 void setDivider(uint8_t div);
79 void enablePWM (uint16_t gpio);
80 void disablePWM(uint16_t gpio);
83 void sendCommand (CY8C95XXA::gpio_cmd cmd);
84 void setEnableReg(CY8C95XXA::gpio_en en);
99 function<void()> intHandler[8][8];
100 uint16_t intMode[8][8];
104 uint8_t readRegister (uint8_t reg);
105 bool writeRegister(uint8_t reg, uint8_t value,
106 uint8_t mask = 0xff);