Добавляем очистку драйверов GPIO перед сбросом конфигурации

Для предотвращения исключения при обращении по не существующим ссылкам
This commit is contained in:
2023-02-17 20:28:02 +03:00
parent 1189b7c289
commit a3b99a9e8d
2 changed files with 7 additions and 0 deletions

View File

@@ -15,6 +15,7 @@ class IoTGpio {
int index;
void regDriver(IoTGpio* newDriver);
void clearDrivers();
private:
IoTGpio* _drivers[5] = {nullptr}; //ссылки на объекты доступа к портам более 100, 200, 300, 400. Нулевой элемент используется как маркер - и возвращается nullptr при обращении

View File

@@ -57,4 +57,10 @@ void IoTGpio::digitalInvert(uint8_t pin) {
void IoTGpio::regDriver(IoTGpio* newDriver) {
_drivers[newDriver->index] = newDriver;
}
void IoTGpio::clearDrivers() {
for (int i=0; i<5; i++) {
_drivers[i] = nullptr;
}
}