stationeers.de Mod-Werkstatt · Dominik1199
EN Anmelden
  1. Start
  2. IC10-Akademie
  3. Tag 104

Tag 104 von 365 · Fortgeschritten · Monat 4: Netzwerk im Detail

Projekt: Gerätescanner

Ein Chip, der seine eigenen Pins durchzählt, die Anzahl am Gehäuse zeigt und Alarm gibt, wenn der Hauptsensor fehlt.

Projekt 25 Min. Woche 15

Das lernst du heute

  • Alle Pins prüfen
  • Anzahl angeschlossener Geräte anzeigen
  • Fehlendes Gerät melden

In dieser Woche hast du gelernt, Geräte direkt anzusprechen, ihre Anwesenheit zu prüfen und Pins über ein Register auszuwählen. Das Projekt setzt alles zusammen: ein Gerätescanner für den Schaltschrank.

Der Aufbau

PinGerät
d0Hauptsensor (Gas-Sensor)
d1–d4weitere Geräte, egal welche
d5Warnlicht

Der Scanner zählt, wie viele der Pins d0 bis d4 belegt sind, und schreibt die Zahl auf das Gehäuse (db, Wert Setting). Fehlt der Hauptsensor an d0, geht das Warnlicht an.

Pins in einer Schleife

Statt fünfmal sdse zu schreiben, nimmst du den Pin aus einem Register. dr2 heißt: der Pin, dessen Nummer gerade in r2 steht.

move i 0
zaehlen:
sdse da dr2       # Pin Nummer i belegt?
add anzahl anzahl da
add i i 1
blt i PINS zaehlen
Achtung

Bei dr2 steht die Registernummer im Namen, nicht der alias. Wenn i ein alias für r2 ist, heißt der Pin trotzdem dr2. Ändert jemand den alias, muss dr2 mitwandern.

Teilziele

  1. Alle fünf Pins belegt: Das Gehäuse zeigt 5, das Warnlicht ist aus.
  2. Zwei Geräte werden abgebaut: Das Gehäuse zeigt 3.
  3. Der Hauptsensor fehlt: Gehäuse 4, Warnlicht an.
  4. Alles weg bis auf das Warnlicht: Gehäuse 0, Warnlicht an – und kein Fehler.
Tipp

Setz anzahl am Anfang jedes Durchlaufs auf 0. Sonst zählt der Chip jeden Takt weiter hoch.

Schaubild

Lesen mit l, Schreiben mit s Gas-Sensor (d0) Temperature 293.15 IC10 r0 = 293.15 Wandlampe (d1) On 1 l r0 d0 Temperature Gerät → Register s d1 On 1 Wert → Gerät
Sechs Pins, ein Gehäuse: Der Scanner fragt d0 bis d4 nacheinander ab, d5 ist das Warnlicht.

Projektaufgabe

Aufgabe

Zähle, wie viele der Pins d0 bis d4 belegt sind, und schreib die Zahl als Setting auf das Gehäuse (db). Fehlt der Hauptsensor an d0, schalte das Warnlicht an d5 ein, sonst aus. Der Chip darf nie mit einem Fehler stehen bleiben.

Teilziele

  1. Teilziel 1: alle fünf Pins belegt
  2. Teilziel 2: zwei Geräte abgebaut
  3. Teilziel 3: Hauptsensor fehlt
  4. Teilziel 4: nur noch das Warnlicht

Hinweise

Hinweis 1

move anzahl 0 und move i 0 direkt nach dem yield.

Hinweis 2

In der Schleife: sdse da dr2, aufaddieren, i erhöhen, mit blt i PINS zaehlen zurück.

Hinweis 3

Danach s db Setting anzahl, dann sdns für das Warnlicht.

Quiz

3 Fragen. Ab 60 % ist das Quiz bestanden – die Auswertung macht der Server.

Tag abschließen

  • Alle Teilziele des Projekts bestanden
  • Quiz mit mindestens 60 % bestanden

Ohne Konto wird der Fortschritt nur in diesem Browser gespeichert.

Fehler in dieser Lektion melden

Zum Melden bitte anmelden. Anmelden

Esc
↑ ↓ wählenEnter öffnen/ öffnet die Suche überall