Frostwächter Lösung: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Wechseln zu: Navigation, Suche
(Detailschritte)
 
(13 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
== Detailschritte ==
 
== Detailschritte ==
* Verbindung von 2 Micro:bits
+
* 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.
+
'''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]
+
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)
 
radio.setGroup(47)
 
</pre>
 
</pre>
  
 +
'''Einstellungen beim Sender:'''
 +
* Verringern der Displayhelligkeit:
 +
<pre id="pre02">
 +
radio.setGroup(47)
 +
led.setBrightness(5)
 +
basic.showIcon(IconNames.Yes)
 +
</pre>
  
* Senden von Nachrichten:  
+
* Senden der Temperatur:
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
+
<pre id="pre03">
<pre id="01">
+
let receivedNumber = 0
input.onButtonPressed(Button.A, function () {
+
basic.forever(function () {
     radio.sendString("Hallo")
+
    receivedNumber = input.temperature()
 +
     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, 08: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