mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-30 11:59:12 +03:00
Добавляем очистку драйверов GPIO перед сбросом конфигурации
Для предотвращения исключения при обращении по не существующим ссылкам
This commit is contained in:
@@ -15,6 +15,7 @@ class IoTGpio {
|
|||||||
|
|
||||||
int index;
|
int index;
|
||||||
void regDriver(IoTGpio* newDriver);
|
void regDriver(IoTGpio* newDriver);
|
||||||
|
void clearDrivers();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
IoTGpio* _drivers[5] = {nullptr}; //ссылки на объекты доступа к портам более 100, 200, 300, 400. Нулевой элемент используется как маркер - и возвращается nullptr при обращении
|
IoTGpio* _drivers[5] = {nullptr}; //ссылки на объекты доступа к портам более 100, 200, 300, 400. Нулевой элемент используется как маркер - и возвращается nullptr при обращении
|
||||||
|
|||||||
@@ -58,3 +58,9 @@ void IoTGpio::digitalInvert(uint8_t pin) {
|
|||||||
void IoTGpio::regDriver(IoTGpio* newDriver) {
|
void IoTGpio::regDriver(IoTGpio* newDriver) {
|
||||||
_drivers[newDriver->index] = newDriver;
|
_drivers[newDriver->index] = newDriver;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void IoTGpio::clearDrivers() {
|
||||||
|
for (int i=0; i<5; i++) {
|
||||||
|
_drivers[i] = nullptr;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user