Frostwächter Lösung: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Wechseln zu: Navigation, Suche
(Die Seite wurde neu angelegt: „== Detailschritte == * Anzeige eines einzelnen Morsesymbols <pre id="01"> input.onButtonPressed(Button.A, function () { basic.showLeds(` . . . .…“)
 
 
(15 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
== Detailschritte ==
 
== Detailschritte ==
 
+
* Verbindung von 2 micro:bits
* Anzeige eines einzelnen Morsesymbols
+
'''Beide micro:bits''' müssen in derselben Funkgruppe sein. Diese Funkgruppe darf von niemanden sonst innerhalb der Klasse verwendet werden.
 
+
Hilfreich ist sicher dieses [https://www.youtube.com/watch?v=r_1hwf4ZXbM Erklärvideo]. Um Funk-Projekte mit dem Makecode-Editor testen zu können, bitet sich diese [https://makecode.com/multi Seite] an.
 
<pre id="01">
 
<pre id="01">
 
+
radio.setGroup(47)
input.onButtonPressed(Button.A, function () {
 
    basic.showLeds(`
 
        . . . . .
 
        . . . . .
 
        . . . . .
 
        . . . . .
 
        . . . . .
 
        `)
 
    basic.showLeds(`
 
        . . . . .
 
        . . . . .
 
        . . # . .
 
        . . . . .
 
        . . . . .
 
        `)
 
})
 
input.onButtonPressed(Button.B, function () {
 
    basic.showLeds(`
 
        . . . . .
 
        . . . . .
 
        . . . . .
 
        . . . . .
 
        . . . . .
 
        `)
 
    basic.showString("-")
 
})
 
basic.showLeds(`
 
    . . # . .
 
    # # # # #
 
    . . # . .
 
    . # . # .
 
    # . . . #
 
    `)
 
 
 
 
</pre>
 
</pre>
  
 
+
'''Einstellungen beim Sender:'''
* Verbindung von 2 Micro:bits
+
* Verringern der Displayhelligkeit:
 
+
<pre id="pre02">
<pre id="01">
+
radio.setGroup(47)
input.onButtonPressed(Button.A, function () {
+
led.setBrightness(5)
    basic.showString("Hello!")
+
basic.showIcon(IconNames.Yes)
})
 
radio.onReceivedString(function (receivedString) {
 
    basic.showString(receivedString)
 
})
 
radio.setGroup(25)
 
 
</pre>
 
</pre>
  
 
+
* Senden der Temperatur:
* Senden von Nachrichten:
+
<pre id="pre03">
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
+
let receivedNumber = 0
<pre id="01">
+
basic.forever(function () {
input.onButtonPressed(Button.A, function () {
+
    receivedNumber = input.temperature()
     radio.sendString("Hallo")
+
     radio.sendNumber(receivedNumber)
 
})
 
})
radio.onReceivedString(function (receivedString) {
 
    basic.showString(receivedString)
 
})
 
radio.setGroup(25)
 
 
</pre>
 
</pre>
  
 
+
'''Einstellungen beim Empfänger:'''
* Senden von Morsecode:
+
* Empfangen und Anzeigen der Temperatur:  
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
+
<pre id="pre04">radio.onReceivedNumber(function (receivedNumber) {
<pre id="01">
+
     basic.showNumber(receivedNumber)
input.onButtonPressed(Button.A, function () {
 
    radio.sendString(".")
 
})
 
radio.onReceivedString(function (receivedString) {
 
     basic.showString(receivedString)
 
})
 
input.onButtonPressed(Button.B, function () {
 
    radio.sendString("-")
 
 
})
 
})
radio.setGroup(25)
 
 
</pre>
 
</pre>
  
* Empfangen vcn Morsecodes mit Soundausgabe:
+
* Ausgeben des Sounds, wenn die Temperatur unter 0 Grad ist
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
+
<pre id="pre04">
<pre id="01">
+
radio.onReceivedNumber(function (receivedNumber) {
radio.onReceivedString(function (receivedString) {
+
     basic.showNumber(receivedNumber)
     if (receivedString.includes(".")) {
+
    if (receivedNumber < 0) {
        music.playTone(262, music.beat(BeatFraction.Whole))
+
         music.startMelody(music.builtInMelody(Melodies.Chase), MelodyOptions.Forever)
        basic.showLeds(`
 
            . . . . .
 
            . . . . .
 
            . . # . .
 
            . . . . .
 
            . . . . .
 
            `)
 
    } else {
 
         music.playTone(262, music.beat(BeatFraction.Breve))
 
        basic.showString("-")
 
 
     }
 
     }
 
})
 
})
 
</pre>
 
</pre>
  
* Eine mögliche [https://makecode.microbit.org/#pub:_0g9dXKhwH4Ap Lösung]
+
* Eine mögliche [https://makecode.microbit.org/_KA0WdA5q8Rw3 Lösung]
  
[[morse1|Zurück zur Aufgabe]]
+
[[Frostwächter|Zurück zur Aufgabe]]
  
  
 
<htmlet>makecode_embed</htmlet>
 
<htmlet>makecode_embed</htmlet>

Aktuelle Version vom 11. März 2022, 09:53 Uhr

Detailschritte

  • Verbindung von 2 micro:bits

Beide micro:bits müssen in derselben Funkgruppe sein. Diese Funkgruppe darf von niemanden sonst innerhalb der Klasse verwendet werden. Hilfreich ist sicher dieses Erklärvideo. Um Funk-Projekte mit dem Makecode-Editor testen zu können, bitet sich diese Seite an.

radio.setGroup(47)

Einstellungen beim Sender:

  • Verringern der Displayhelligkeit:
radio.setGroup(47)
led.setBrightness(5)
basic.showIcon(IconNames.Yes)
  • Senden der Temperatur:
let receivedNumber = 0
basic.forever(function () {
    receivedNumber = input.temperature()
    radio.sendNumber(receivedNumber)
})

Einstellungen beim Empfänger:

  • Empfangen und Anzeigen der Temperatur:
radio.onReceivedNumber(function (receivedNumber) {
    basic.showNumber(receivedNumber)
})
  • Ausgeben des Sounds, wenn die Temperatur unter 0 Grad ist
radio.onReceivedNumber(function (receivedNumber) {
    basic.showNumber(receivedNumber)
    if (receivedNumber < 0) {
        music.startMelody(music.builtInMelody(Melodies.Chase), MelodyOptions.Forever)
    }
})

Zurück zur Aufgabe