siemens_trafo_4am3842


Google-Suche auf MEINE-SCHALTUNG.de :





Dauerkalender


Mehrfach Wechselblinker


In der Schaltung werden vier Leuchtdioden nacheinander zum Blinken gebracht. Um das Blinken etwas interessanter zu gestalten, soll jede Leuchtdiode mehrmals, in diesem Fall fünf Mal, aufleuchten. Die Arbeit im Hintergrund übernimmt der Mikrocontroller HT46F47E. Das Programmieren des Mikrocontrollers kann mit zwei einfachen Tasten durchgeführt werden.

HT46F47E

HT46F47E

Pinbelegung
Grundbefehle
Programmierung

Die Schaltung

Die Schaltung ist schnell aufgebaut. Es werden lediglich vier Leuchtdioden und vier Vorwiderstände benötigt. An die Pins 11 bis 13 werden 100 nF Kondensatoren angeschlossen. Zwei weitere Widerstände verbinden die Pins miteinander. Zusätzlich kann man an Pin 11 eine Reset-Taste anschließen. Als S1 kann wahlweise ein Taster oder Schalter angeschlossen werden. Bei einmaliger Betätigung wird die Blink-Sequenz nur einmal ausgeführt. Kommt ein rastender Schalter zum Einsatz, wird die Blinksequenz dauerhaft wiederholt.

Mehrfach Wechselblinker - Schaltplan

Mehrfach Wechselblinker - Schaltplan

Mehrfach Wechselblinker - Testschaltung

Mehrfach Wechselblinker - Testschaltung

Das Programm

Vor jeder Blinksequenz wird zunächst die Variable C neu mit dem Wert 5 geladen. Das ist notwendig, da sie während des Blinkvorgangs auf 0 dekrementiert wird. Dies geschieht in dem Unterprogramm 1. Für den Blinkvorgang ist das Unterprogramm 2 zuständig. Bevor es aufgerufen wird, wird die Variable A mit einem neuen Wert versorgt. Dieser Wert (1, 2, 4, 8) bestimmt, welche Leuchtiode gerade an der Reihe ist. Nach Ablauf des Hauptprogramms erfolgt ein Sprung auf die Adresse 0. Hier wird entschieden, ob das Blinken aufhört (Taster S1 aus) oder fortgesetzt wird (Taster S2 ein).

Listing mit Kommentaren
         
000  CB  Überspringe den folgenden Befehl, wenn Taster betätigt
001  31  Springe -1
002  81  Sprungbereich
003  D8  Unterprogramm 1 
004  41  Weise der Variable A den Wert 1 zu
005  81  Sprungbereich
006  DB  Unterprogramm 2: Blinken
007  81  Sprungbereich
008  D8  Unterprogramm 1
009  42  Weise der Variable A den Wert 2 zu
010  81  Sprungbereich
011  DB  Unterprogramm 2
012  81  Sprungbereich
013  D8  Unterprogramm 1
014  44  Weise der Variable A den Wert 4 zu
015  81  Sprungbereich
016  DB  Unterprogramm 2
017  81  Sprungbereich
018  D8  Unterprogramm 1
019  48  Weise der Variable A den Wert 8 zu
020  81  Sprungbereich
021  DB  Unterprogramm 2
022  80  Sprungbereich
023  90  Springe auf 0

Unterprogramm 1 (Variablen zuweisen)
024  45  Weise der Variable A den Wert 5 zu
025  52  Weise der Variable C den Wert von A zu
026  E0  Return

Unterprogramm 2 (Blinker)
027  81  Sprungbereich festlegen
028  AE  Dekrementiere C. Bei 0 Programm fortsetzen, sonst dritte Zeile.
029  E0  Return
030  54  Ausgänge ein/aus
031  26  Wartezeit 100 ms
032  10  Ausgänge aus
033  26  Wartezeit 100 ms
034  81  Sprungbereich
035  9B  Springe auf 27

 CB 31 81 D8 41 81 DB 81 D8 42 81 DB 81 D8 44 81 DB 81 D8 
 48 81 DB 80 90 45 52 E0 81 AE E0 54 26 10 26 81 9B 
        

Kurzvideo

Kurzvideo


Experimente_mit_dem_Mikrocontroller_HT46F47E


Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz