АБСОЛЮТНО соглаасен! Я так делаю прям вот всегда! У меня этому даже кусок статьи посвящён (рекомендую прочитать, без шуток): https://cs-cs.net/technologii-testir...a-plk#4_____io
Только я НЕ использую прямую адресацию, а разбираю в таких переменных битовые маски и именую переменные понятным текстом. Вот так:
Мои методы и технологии описаны в статье. Берите все на вооружение!Код:hwBtnLgt1EPrihojMain : BOOL; (* W2.I1: Кнопки LT-41: 1 Этаж Прихожая Общий *)
hwBtnLgt1EPrihojTrackShkaf : BOOL; (* W2.I2: Кнопки LT-42: 1 Этаж Прихожая Трек у Шкафа *)
hwBtnLgt1EPrihojZerkalo : BOOL; (* W2.I3: Кнопки LT-43: 1 Этаж Прихожая Зеркало *)
hwBtnLgt1EPrihojSpotDver : BOOL; (* W2.I4: Кнопки LT-44: 1 Этаж Прихожая Споты Дверь *)
hwBtnLgt1EPrihojFuncShkaf : BOOL; (* W2.I5: Кнопки LT-45: 1 Этаж Прихожая Функциональный у Шкафа *)
hwBtnLgt1EPrihojIgrDecor : BOOL; (* W2.I6: Кнопки LT-46: 1 Этаж Прихожая/Игровая Декор *)
hwBtnLgt1EZakutok : BOOL; (* W2.I7: Кнопки LT-47: 1 Этаж Закуток *)
hwBtnLgt1EMicroKabinet : BOOL; (* W2.I8: Кнопки LT-48: 1 Этаж Микрокабинет *)
hwBtnLgt1EIgrMain : BOOL; (* W2.I9: Кнопки LT-49: 1 Этаж Игровая Общий *)
hwBtnLgt1EIgrTrack : BOOL; (* W2.I10: Кнопки LT-50: 1 Этаж Игровая Трек Окно *)
hwBtnLgt1EPrihojMain := W2_DI32.0; (* W2.I1: Кнопки LT-41: 1 Этаж Прихожая Общий *)
hwBtnLgt1EPrihojTrackShkaf := W2_DI32.1; (* W2.I2: Кнопки LT-42: 1 Этаж Прихожая Трек у Шкафа *)
hwBtnLgt1EPrihojZerkalo := W2_DI32.2; (* W2.I3: Кнопки LT-43: 1 Этаж Прихожая Зеркало *)
hwBtnLgt1EPrihojSpotDver := W2_DI32.3; (* W2.I4: Кнопки LT-44: 1 Этаж Прихожая Споты Дверь *)
hwBtnLgt1EPrihojFuncShkaf := W2_DI32.4; (* W2.I5: Кнопки LT-45: 1 Этаж Прихожая Функциональный у Шкафа *)
hwBtnLgt1EPrihojIgrDecor := W2_DI32.5; (* W2.I6: Кнопки LT-46: 1 Этаж Прихожая/Игровая Декор *)
hwBtnLgt1EZakutok := W2_DI32.6; (* W2.I7: Кнопки LT-47: 1 Этаж Закуток *)
hwBtnLgt1EMicroKabinet := W2_DI32.7; (* W2.I8: Кнопки LT-48: 1 Этаж Микрокабинет *)
hwBtnLgt1EIgrMain := W2_DI32.8; (* W2.I9: Кнопки LT-49: 1 Этаж Игровая Общий *)
hwBtnLgt1EIgrTrack := W2_DI32.9; (* W2.I10: Кнопки LT-50: 1 Этаж Игровая Трек Окно *)
Там ещё и технология теестирования IO и обработки ошибок IO есть!