Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| products:laboratory_iot:exp36 [2021/05/23 14:05] – [Прерывания] labuser29 | products:laboratory_iot:exp36 [2024/11/17 16:27] (текущий) – [Программный код эксперимента] labuser30 | ||
|---|---|---|---|
| Строка 19: | Строка 19: | ||
| ==== Эксперимент ==== | ==== Эксперимент ==== | ||
| - | Попробуем применить прерывания для работы с энкодером. Нам потребуется сделать две вещи — настроить прерывание и написать функцию- обработчик прерывания. | + | Попробуем применить прерывания для работы с энкодером. Нам потребуется сделать две вещи — настроить прерывание и написать функцию-обработчик прерывания. |
| ==== Схема эксперимента ==== | ==== Схема эксперимента ==== | ||
| Строка 31: | Строка 31: | ||
| ==== Программный код эксперимента ==== | ==== Программный код эксперимента ==== | ||
| - | <file python | + | <file python |
| from machine import I2C, Pin | from machine import I2C, Pin | ||
| from esp8266_i2c_lcd import I2cLcd | from esp8266_i2c_lcd import I2cLcd | ||
| Строка 37: | Строка 37: | ||
| _init() | _init() | ||
| - | DEFAULT_I2C_ADDR = 0x3F | + | DEFAULT_I2C_ADDR = 0x3F # Или 0x27 в зависимости от модели микросхемы на плате |
| encA = Pin(13, Pin.IN) | encA = Pin(13, Pin.IN) | ||
| Строка 111: | Строка 111: | ||
| События можно комбинировать. Например, | События можно комбинировать. Например, | ||
| - | Рассмотрим функцию- обработчик прерывания: | + | Рассмотрим функцию-обработчик прерывания: |
| <code python[enable_line_numbers=" | <code python[enable_line_numbers=" | ||
| def callback(p): | def callback(p): | ||
| Строка 148: | Строка 148: | ||
| </ | </ | ||
| - | Ключеваое слово '' | + | Ключевое слово '' |
| Потом, как и раньше, | Потом, как и раньше, | ||