Lösung morse1: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Wechseln zu: Navigation, Suche
(Detailschritte)
(Detailschritte)
 
(15 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 4: Zeile 4:
 
== Detailschritte ==
 
== Detailschritte ==
  
* Anzeige eines einzelen Morsesymbols
+
Teste diese einzelnen Schritte auf deinem BBC micro:bit in verschiedenen Versionen, verändere die Anzeigen und Funktionen. Jeder dieser Schritte enthält Vorschläge für eine mögliche Lösung. Baue deine eigene Version des Programms. Für die Lösung von Programmieraufgaben gibt es immer verschiedene Ansätze und Zugangswege.
<spoiler text="Block">
+
 
<prev id="01">
+
* Schritt 1: Anzeige eines einzelnen Morsesymbols: Dies kann über das LED-Symbole oder über Textanzeigen geschehen (siehe Schritt 4)
 +
 
 +
<pre id="01">
 +
 
 
input.onButtonPressed(Button.A, function () {
 
input.onButtonPressed(Button.A, function () {
 
     basic.showLeds(`
 
     basic.showLeds(`
Zeile 41: Zeile 44:
 
     `)
 
     `)
  
</prev>
+
</pre>
</spoiler>
 
* wenn-dann-Verzweigung
 
[[Datei:Geschuettel 01.png]]
 
  
* Anzeige bei "wahr" - steht für Kopf
 
* Anzeige bei "falsch" - steht für Zahl
 
* Anzahl muss mitgezählt werden
 
[[Datei:Geschuettelt_lsg.png]]
 
  
* Anzahl wird jeweils ausgegeben
+
* Schritt 2: Verbindung von 2 Micro:bits
[[Datei:Anzeige_taste.png]]
 
  
* Nicht vergessen - Variablen auf 0 stellen
+
<pre id="01">
[[Datei:Beim_start.png]]
+
input.onButtonPressed(Button.A, function () {
 +
    basic.showString("Hello!")
 +
})
 +
radio.onReceivedString(function (receivedString) {
 +
    basic.showString(receivedString)
 +
})
 +
radio.setGroup(25)
 +
</pre>
  
  
 +
* Schritt 3: Senden von Nachrichten:
 +
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
 +
<pre id="01">
 +
input.onButtonPressed(Button.A, function () {
 +
    radio.sendString("Hallo")
 +
})
 +
radio.onReceivedString(function (receivedString) {
 +
    basic.showString(receivedString)
 +
})
 +
radio.setGroup(25)
 +
</pre>
  
  
* Eine mögliche [https://makecode.microbit.org/#pub:_5xXaUvf3mTKb Lösung]
+
* Schritt 4: Senden von Morsecode:
 +
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
 +
<pre id="01">
 +
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>
  
 +
* Schritt 5: Empfangen vcn Morsecodes mit Soundausgabe:
 +
Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden
 +
<pre id="01">
 +
radio.onReceivedString(function (receivedString) {
 +
    basic.showLeds(`
 +
        . . . . .
 +
        . . . . .
 +
        . . . . .
 +
        . . . . .
 +
        . . . . .
 +
        `)
 +
    if (receivedString.includes(".")) {
 +
        basic.showString(".")
 +
        music.playTone(262, music.beat(BeatFraction.Whole))
 +
    } else {
 +
        basic.showString("-")
 +
        music.playTone(262, music.beat(BeatFraction.Breve))
 +
    }
 +
 +
})
 +
</pre>
  
[[Dem Zufall auf der Spur|Zurück zur Aufgabe]]
+
* Eine mögliche [https://makecode.microbit.org/#pub:_0g9dXKhwH4Ap Lösung]
  
 +
[[morse1|Zurück zur Aufgabe]]
  
  
 
<htmlet>makecode_embed</htmlet>
 
<htmlet>makecode_embed</htmlet>

Aktuelle Version vom 7. März 2022, 15:11 Uhr

Hilfestellung

Detailschritte

Teste diese einzelnen Schritte auf deinem BBC micro:bit in verschiedenen Versionen, verändere die Anzeigen und Funktionen. Jeder dieser Schritte enthält Vorschläge für eine mögliche Lösung. Baue deine eigene Version des Programms. Für die Lösung von Programmieraufgaben gibt es immer verschiedene Ansätze und Zugangswege.

  • Schritt 1: Anzeige eines einzelnen Morsesymbols: Dies kann über das LED-Symbole oder über Textanzeigen geschehen (siehe Schritt 4)

input.onButtonPressed(Button.A, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        `)
    basic.showLeds(`
        . . . . .
        . . . . .
        . . # . .
        . . . . .
        . . . . .
        `)
})
input.onButtonPressed(Button.B, function () {
    basic.showLeds(`
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        `)
    basic.showString("-")
})
basic.showLeds(`
    . . # . .
    # # # # #
    . . # . .
    . # . # .
    # . . . #
    `)


  • Schritt 2: Verbindung von 2 Micro:bits
input.onButtonPressed(Button.A, function () {
    basic.showString("Hello!")
})
radio.onReceivedString(function (receivedString) {
    basic.showString(receivedString)
})
radio.setGroup(25)


  • Schritt 3: Senden von Nachrichten:

Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden

input.onButtonPressed(Button.A, function () {
    radio.sendString("Hallo")
})
radio.onReceivedString(function (receivedString) {
    basic.showString(receivedString)
})
radio.setGroup(25)


  • Schritt 4: Senden von Morsecode:

Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden

input.onButtonPressed(Button.A, function () {
    radio.sendString(".")
})
radio.onReceivedString(function (receivedString) {
    basic.showString(receivedString)
})
input.onButtonPressed(Button.B, function () {
    radio.sendString("-")
})
radio.setGroup(25)
  • Schritt 5: Empfangen vcn Morsecodes mit Soundausgabe:

Beide Micro:bit können bei diesem Beispiel densselben Programmcode verwenden

radio.onReceivedString(function (receivedString) {
    basic.showLeds(`
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        . . . . .
        `)
    if (receivedString.includes(".")) {
        basic.showString(".")
        music.playTone(262, music.beat(BeatFraction.Whole))
    } else {
        basic.showString("-")
        music.playTone(262, music.beat(BeatFraction.Breve))
    }

})

Zurück zur Aufgabe