Программа выводит текст и фигуры на LCD экране блока Lego EV3, обрабатывает нажатия кнопок, включает подсветку кнопок и проигрывает звуки.
Вы можете скопировать указанный ниже код программы в IDE MS Small Basic с установленной библиотекой EV3 и подключенным блоком Lego EV3 и запустить:
LCD.Clear()
LCD.Write(15, 55, "Press buttons other")
LCD.Write(40, 70, "than 'Back'")
While "True" ' бесконечный цикл
Program.Delay(200) ' Проверяем пять раз в секунду какие кнопки нажаты
click = Buttons.GetClicks() ' переменная 'click' содержит символы кнопок, нажатых и отпущенных с момент последнего вызова этой функции
If click <> "" Then ' Очищаем экран если нажата любая кнопка
LCD.Clear()
EndIf
If Text.IsSubText(click, "U") then ' Если в строке есть символ "U" - была нажата кнопка "Вверх"
LCD.Write(0, 0, "This is written at")
LCD.Write(0, 10, "(0,0) using LED.Write")
EV3.SetLEDColor("OFF", "Normal")
Speaker.Tone(100, 500, 400) ' Играем 500 Гц тон 0.4 секунды на полной громкости
ElseIf Text.IsSubText(click, "D") then ' если была нажата кнопка "Вниз"
LCD.Text(1, 0,12, 0, "This is written at")
LCD.Text(1, 0,24, 0, "(0,12) using LED.Text")
LCD.Text(1, 0,36, 0, "in size 0 (small).")
EV3.SetLEDColor("RED", "Flash")
Speaker.Note(50, "D2", 400) ' Играем ноту "D2" 0.4 секунды на 50% громкости
ElseIf Text.IsSubText(click, "L") then
LCD.Text(1, 0, 12, 1, "This is written at")
LCD.Text(1, 0, 24, 1, "(0,12) using LED.Text")
LCD.Text(1, 0, 36, 1, "in size 1 (medium).")
EV3.SetLEDColor ("GREEN", "Pulse") ' Включаем зеленую пульсирующую подсветку
ElseIf Text.IsSubText(click, "R") then
LCD.Text(1, 0, 20, 2, "This is")
LCD.Text(1, 0, 40, 2, "made using")
LCD.Text(1, 0, 60, 2, "LED.Text in")
LCD.Text(1, 0, 80, 2, "size 2")
LCD.Text(1, 0, 100, 2, "(large).")
EV3.SetLEDColor ("ORANGE", "Normal") ' Включаем красную подсветку
ElseIf Text.IsSubText(click,"E") then
LCD.Write(0, 0, "Circle(1,50,70,30)")
LCD.Circle(1, 50, 70, 30) ' рисуем окружность. параметры: color, x, y, radius
LCD.Write(0, 12, "FillRect(1,90,80,60,40)")
LCD.FillRect (1, 90, 80, 60, 40) ' рисуем прямоугольник. параметры: color, x, y, width, height
LCD.Write(0, 24, "Line(1,100,50,160,60)")
LCD.Line(1,100,50,160,60) ' рисуем линию. параметры: color, x1, y1, x2, y2
for i=1 to 3
EV3.SetLEDColor ("RED", "Normal")
Program.Delay(500) ' ждём 0.5 секунды (500 миллисекунд)
EV3.SetLEDColor ("Green", "Normal")
Program.Delay(500)
EV3.SetLEDColor ("Orange", "Normal")
Program.Delay(500)
Endfor
Endif
EndWhile
Поделиться: