MicroPython:Библиотеки/pyb/Класс LCD: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
(Новая страница: «{{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" enclose="div">
Затем можно использовать следующие методы:
 
<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 мс

Конструкторы

Методы

См.также

Внешние ссылки