Изображения
Microbit имеет дисплей красных светодиодов 5х5. Вы можете выводить изображение на него и создавать интересную анимацию.
MicroPython имеет много встроенных изображений например «Счастливый смайлик»:
from microbit import *
display.show(Image.HAPPY)
Давайте вспомним что делает первая строка? Вторая строка использует команду объекта
display под названием show. «Счастливый смайлик» является объектом типа (категории)
Image и называется HAPPY.
Обратите внимание название указывается заглавными буквами
Остальные встроенные изображения:
Image.HEART- Большое сердце
Image.HEART_SMALL- Малое сердце
Image.HAPPY- Счастливый смайлик
Image.SMILE- Улыбка
Image.SAD- Грустный смайлик
Image.CONFUSED- Смущенный смайлик
Image.ANGRY- Злой смайлик
Image.ASLEEP- Спящий смайлик
Image.SURPRISED- Удивленный смайлик
Image.SILLY- Глупый смайлик
Image.FABULOUS- Воодушевленный смайлик
Image.MEH-
Image.YES- Да
Image.NO- Нет
Image.CLOCK1- … -Image.CLOCK12- Стрелка часов
Image.ARROW_N,Image.ARROW_NE,Image.ARROW_E,Image.ARROW_SE,Image.ARROW_S,Image.ARROW_SW,Image.ARROW_W,Image.ARROW_NW- Стороны Света
Image.TRIANGLE- Треугольник смотрит вверх
Image.TRIANGLE_LEFT- Треугольник смотрит влево
Image.CHESSBOARD- Шахматная доска
Image.DIAMOND- Алмаз
Image.DIAMOND_SMALL- Маленький алмаз
Image.SQUARE- Квадрат
Image.SQUARE_SMALL- Маленький квадрат
Image.RABBIT- Кролик
Image.COW- Корова
Image.MUSIC_CROTCHET- Знак Ноты
Image.MUSIC_QUAVER- Дрожание
Image.MUSIC_QUAVERS- Дрожание
Image.PITCHFORK- Камертон (вилка)
Image.XMAS- Рождество
Image.PACMAN- Пакмен
Image.TARGET- Цель
Image.TSHIRT- Футболка
Image.ROLLERSKATE- Коньки
Image.DUCK- Утка
Image.HOUSE- Дом
Image.TORTOISE- Черепаха
Image.BUTTERFLY- Бабочка
Image.STICKFIGURE- Фигура (рисунок)
Image.GHOST- Призрак
Image.SWORD- Меч
Image.GIRAFFE- Жираф
Image.SKULL- Череп
Image.UMBRELLA- Зонтик
Image.SNAKE- Змея
Попробуйте различные изображения, указав команды друг в столбик. Измените аргумент с картинкой внутри команды:
display.show(Image.HAPPY)
display.show(Image.ANGRY)
display.show(Image.SKULL)
Далее Вы узнаете как эффективнее записать данный код
Собственные изображения
Давайте создадим собственное изображение
Создается таблица 5 на 5 из цифр 0-9. Если указан 0 светодиод выключен.
Максимальная яркость 9. Промежуточная яркость от 1 to 8
Вот наш код:
from microbit import *
boat = Image("02469:"
"02469:"
"02469:"
"02469:"
"02469")
display.show(boat)
На дисплее отобразится шкала яркости
Напишите код и попробуйте запрограммировать Microbit. Получилось !!!
Давайте обсуждать дальше. Вы создали объект boat - типа Image и указали
в скобках параметр, который состоит из 5 строк. Каждая строка заканчивается :.
Итого у Вас 5 строк по 5 цифр.
Далее Вы подали объект в команду show. Имя объекта пишется без «»
Вы можете записать все и в одну строку, но так менее понятно:
boat = Image("05050:05050:05050:99999:09990")
display.show(boat)
Анимация
У Вас выше уже был опыт создания анимации (смена изображений). Теперь найчимся делать это эффективнее.
Для этого Вы можете использовать список, в который укажите перечень изображений.
В Python список указвается квадратными скобками ([ и ]) и элементы разделены запятой (,):
face = [Image.HAPPY, Image.ANGRY, Image.SKULL ]
display.show(face)
В списках Вы можете хранить различные объекты: строки, числа, изображения и т. д.:
primes = [2, 3, 5, 7, 11, 13, 17, 19]
display.show(primes)
Примечание
Числа не нужно заключать в кавычки, так как они представляют значения. Если Вы напишите
"2" число станет символом (строкой). Вы получите интересный эффект если напишите
"2"+"2"
Напишите:
display.show(2+2)
display.show("2"+"2")
В списке можно даже хранить различные элементы:
mixed_up_list = ["hello!", 1.234, Image.HAPPY]
display.show(mixed_up_list)
Давайте вернемся к анимации готовых изображений и добавим параметры loop и delay:
face = [Image.HAPPY, Image.ANGRY, Image.SKULL ]
display.show(face , loop=True, delay=1000)
loop- Зацикливание анимации - значениеTrue(правда), проиграть 1 раз - значениеFalse(ложь)delay- время задержки между сменой изображений (милисекунды)wait- блокирование выполнения пока не кончиться анимация - значениеTrue(правда)