MicroPython:Библиотеки/pyb/Класс LCD: различия между версиями
Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Myagkij (обсуждение | вклад) (Новая страница: «{{MicroPython/Панель перехода}} {{Перевод от Сubewriter}} {{Myagkij-редактор}} =<ref>[]</ref>= <syntaxhighlight lang="python"...») |
Нет описания правки |
||
(не показаны 3 промежуточные версии 1 участника) | |||
Строка 3: | Строка 3: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
=<ref>[]</ref>= | =Класс LCD – управление LCD-дисплеем на плате LCD32MKv1.0<ref>[http://docs.micropython.org/en/latest/library/pyb.LCD.html docs.micropython.org - class LCD – LCD control for the LCD touch-sensor pyskin]</ref>= | ||
Класс LCD используется для управления LCD-дисплеем на плате [[LCD32MKv1.0]], также оснащенной тактильным датчиком. [[LCD-дисплей]] здесь – это монохромный экран с разрешением ''128x32 пикселей'' (номер детали – [[NHD-C12832A1Z]]). | |||
[[LCD32MKv1.0]] должна быть подключена либо к ''X-позиции'' (нижняя половина), либо к ''Y-позиции'' (верхняя половина) [[PyBoard]]. После этого можно создать объект [[LCD]] во так: | |||
<syntaxhighlight lang="python"> | |||
lcd = pyb.LCD('X') # если плата подключена к X-позиции | |||
lcd = pyb.LCD('Y') # если плата подключена к Y-позиции | |||
</syntaxhighlight> | |||
<syntaxhighlight lang="python" | Затем можно использовать следующие методы: | ||
<syntaxhighlight lang="python"> | |||
lcd.light(True) # включаем подсветку | |||
lcd.write('Привет, мир!\n') # печатаем текст на экране | |||
</syntaxhighlight> | |||
Кроме того, в этом драйвере реализован двойной буфер для чтения/записи пикселей. Например, чтобы запрограммировать прыгающую точку, попробуйте следующее: | |||
<syntaxhighlight lang="python"> | |||
x = y = 0 | |||
dx = dy = 1 | |||
while True: | |||
# обновляем позицию точки: | |||
x += dx | |||
y += dy | |||
# делаем так, чтобы точка отскакивала от краев экрана: | |||
if x <= 0 or x >= 127: dx = -dx | |||
if y <= 0 or y >= 31: dy = -dy | |||
lcd.fill(0) # очищаем буфер | |||
lcd.pixel(x, y, 1) # рисуем точку | |||
lcd.show() # показываем буфер | |||
pyb.delay(50) # делаем паузу на 50 мс | |||
</syntaxhighlight> | |||
== Конструкторы == | |||
* [[MicroPython:Библиотеки/pyb/Класс LCD/pyb.LCD()|pyb.LCD(skin_position)]] | |||
== Методы == | |||
* [[MicroPython:Библиотеки/pyb/LCD.command()|LCD.command(instr_data, buf)]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.contrast()|LCD.contrast(value)]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.fill()|LCD.fill(colour)]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.get()|LCD.get(x, y)]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.light()|LCD.light(value)]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.pixel()|LCD.pixel(x, y, colour)]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.show()|LCD.show()]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.text()|LCD.text(str, x, y, colour) ]] | |||
* [[MicroPython:Библиотеки/pyb/LCD.write()|LCD.write(str)]] | |||
=См.также= | =См.также= |
Текущая версия от 18:16, 14 мая 2023
Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.
Класс LCD – управление LCD-дисплеем на плате LCD32MKv1.0[1]
Класс LCD используется для управления LCD-дисплеем на плате LCD32MKv1.0, также оснащенной тактильным датчиком. LCD-дисплей здесь – это монохромный экран с разрешением 128x32 пикселей (номер детали – NHD-C12832A1Z). LCD32MKv1.0 должна быть подключена либо к X-позиции (нижняя половина), либо к Y-позиции (верхняя половина) PyBoard. После этого можно создать объект LCD во так:
lcd = pyb.LCD('X') # если плата подключена к X-позиции
lcd = pyb.LCD('Y') # если плата подключена к Y-позиции
Затем можно использовать следующие методы:
lcd.light(True) # включаем подсветку
lcd.write('Привет, мир!\n') # печатаем текст на экране
Кроме того, в этом драйвере реализован двойной буфер для чтения/записи пикселей. Например, чтобы запрограммировать прыгающую точку, попробуйте следующее:
x = y = 0
dx = dy = 1
while True:
# обновляем позицию точки:
x += dx
y += dy
# делаем так, чтобы точка отскакивала от краев экрана:
if x <= 0 or x >= 127: dx = -dx
if y <= 0 or y >= 31: dy = -dy
lcd.fill(0) # очищаем буфер
lcd.pixel(x, y, 1) # рисуем точку
lcd.show() # показываем буфер
pyb.delay(50) # делаем паузу на 50 мс
Конструкторы
Методы
- LCD.command(instr_data, buf)
- LCD.contrast(value)
- LCD.fill(colour)
- LCD.get(x, y)
- LCD.light(value)
- LCD.pixel(x, y, colour)
- LCD.show()
- LCD.text(str, x, y, colour)
- LCD.write(str)