Вт апр 04, 2023 13:03:07
Использование прерываний
При изменении физического состояния входа состояние внутреннего регистра может и не соответствовать текущему состоянию входов - состояние регистра обновляется только во время обмена данными с мастером. Но если напряжение на входе отличается от состояния внутреннего регистра, генерируется сигнал прерывания для микроконтроллера.
Вывод прерывания INT может быть подключен к GPIO микроконтроллера для уведомления микроконтроллера о том, что состояние входных портов расширителя изменилось. Получив этот сигнал прерывания, ваш микроконтроллер должен заново считать состояние регистра PCF8574 и самостоятельно определить, на каких входах изменился уровень. Во время обмена данными по шине в регистр будет записано текущее состояние входов и всё придет в соответствие до следующего изменения. Разумеется, для того, чтобы определить на каких выводах произошли изменения после последнего чтения, придется где-то хранить последнее считанное состояние на стороне MCU, как как чтение регистра вернет состояние всех выводов, а не только тех, которые были изменены.
Вт апр 04, 2023 13:26:29
Вт апр 04, 2023 13:48:27
Вт апр 04, 2023 14:07:14
Вт апр 04, 2023 14:13:23
Di123 писал(а):я пробовал подключать кнопки и там без него всё прекрасно работает
Вт апр 04, 2023 14:23:37
Вт апр 04, 2023 14:52:20
Вт апр 04, 2023 15:29:36