2022-02-14 18:33:52 +03:00
# pragma once
# include <Arduino.h>
class IoTGpio {
public :
2022-02-14 21:23:40 +03:00
IoTGpio ( int pins ) ;
2022-02-14 18:33:52 +03:00
~ IoTGpio ( ) ;
void pinMode ( uint8_t pin , uint8_t mode ) ;
void digitalWrite ( uint8_t pin , uint8_t val ) ;
int digitalRead ( uint8_t pin ) ;
int analogRead ( uint8_t pin ) ;
void analogWrite ( uint8_t pin , int val ) ;
2022-02-14 21:23:40 +03:00
int pinNums ; // база для определения диапазона номеров пинов. pinNums + используемый
2022-02-14 18:33:52 +03:00
void regDriver ( IoTGpio * newDriver ) ;
private :
2022-02-14 21:23:40 +03:00
IoTGpio * _drivers [ 5 ] ; //ссылки на объекты доступа к портам более 100, 200, 300, 400. Нулевой элемент используется как маркер - и возвращается nullptr при обращении
2022-02-14 18:33:52 +03:00
} ;