Сообщение от
AlexBel
Практический пример. Допустим, я подключил контроллер. В список вывел его порты, скажем, их два - порт команд/статуса (в списке номер 0) и порт данных (в списке номер 1). Остальные порты из списка нужно удалить. Можно и не удалять, но, в процессе работы они никак не должны затрагиваться, даже на чтение. Порт номер 0 используется на чтение и на запись по разному - при записи в него пишется команда для контроллера, при чтении - состояние контроллера. Я пишу команду и мне нужно далее прочитать этот порт, чтобы посмотреть состояние. Но прочитать именно тогда, когда мне это нужно. Т.е. нажал кнопку - получил значение этого (и только этого) порта. Далее - чтение данных. У контроллера есть особенность - после чтения данных его регистр данных обнуляется. Т.е. данные можно прочитать только один раз, потом будут считываться нули. В этом случае, как и в предыдущем, нужно иметь возможность прочитать данные из порта 1 и только тогда, когда это нужно, режим постоянного чтения, попросту говоря, всё испортит.