Po delší době jsem si zkusil zopakovat tvorbu kódu v MakeCode. Zkusil jsem ověřit základní funkce (Micro:Bit jsem vydoloval z hloubky šuplíku). Také jsem nainstaloval offline verzi MakeCode a přišrouboval jsem IoT Kit na destičku (jinak běhá po stole). Přidal jsem ultrazvukový senzor a OLED displej. Výsledného zařízení se naše kočky bojí.
Do prostředí MakeCode jsem přidal rozšíření IOT a sestavil jsem jednoduchý prográmek.
V JavaScriptu
let ultrasonic = 500
OLED.init(128, 64)
basic.forever(function () {
ultrasonic = Environment.sonarbit_distance(Environment.Distance_Unit.Distance_Unit_cm, DigitalPin.P1)
if (ultrasonic > 0 && ultrasonic < 100) {
basic.showIcon(IconNames.Heart)
basic.showString(convertToText(ultrasonic))
OLED.writeNum(ultrasonic)
OLED.writeString("-")
music.playMelody("B A G A G F A C5 ", 120)
} else {
ultrasonic = 500
basic.clearScreen()
}
basic.pause(100)
})
OLED.init(128, 64)
basic.forever(function () {
ultrasonic = Environment.sonarbit_distance(Environment.Distance_Unit.Distance_Unit_cm, DigitalPin.P1)
if (ultrasonic > 0 && ultrasonic < 100) {
basic.showIcon(IconNames.Heart)
basic.showString(convertToText(ultrasonic))
OLED.writeNum(ultrasonic)
OLED.writeString("-")
music.playMelody("B A G A G F A C5 ", 120)
} else {
ultrasonic = 500
basic.clearScreen()
}
basic.pause(100)
})
a v Pythonu
ultrasonic = 500
OLED.init(128, 64)
def on_forever():
global ultrasonic
ultrasonic = Environment.sonarbit_distance(Environment.Distance_Unit.DISTANCE_UNIT_CM, DigitalPin.P1)
if ultrasonic > 0 and ultrasonic < 100:
basic.show_icon(IconNames.HEART)
basic.show_string(convert_to_text(ultrasonic))
OLED.write_num(ultrasonic)
OLED.write_string("-")
music.play_melody("B A G A G F A C5 ", 120)
else:
ultrasonic = 500
basic.clear_screen()
basic.pause(100)
basic.forever(on_forever)
OLED.init(128, 64)
def on_forever():
global ultrasonic
ultrasonic = Environment.sonarbit_distance(Environment.Distance_Unit.DISTANCE_UNIT_CM, DigitalPin.P1)
if ultrasonic > 0 and ultrasonic < 100:
basic.show_icon(IconNames.HEART)
basic.show_string(convert_to_text(ultrasonic))
OLED.write_num(ultrasonic)
OLED.write_string("-")
music.play_melody("B A G A G F A C5 ", 120)
else:
ultrasonic = 500
basic.clear_screen()
basic.pause(100)
basic.forever(on_forever)