Blechcoils_Stahl_2mm


Google-Suche auf MEINE-SCHALTUNG.de :





Dauerkalender


LED - Dimmer
mit HT46F47E


Der Mikrocontroller HT46F47E stellt uns u.a. einen PWM Ausgang zur Verfügung (PD0, Pin 10). In dieser Schaltung wird dieser Ausgang verwendet, um die Helligkeit einer Leuchtdiode zu steuern. Mit zwei Tasten, die an zwei Eingänge des Mikrocontrollers angeschlossen werden, wird die Helligkeit der Leuchtdiode wahlweise verringert oder erhöht. Mit einer kurzen Betätigung wird der Helligkeitswert stufenweise verändert. Mit einem Dauerdruck erreicht man eine kontinuierliche Veränderung der Helligkeit. Zusätzlich werden an die vier Ausgänge des Mikrocontrollers vier weitere Leuchtdioden angeschlossen. Mithilfe dieses Vierer-Gespanns wird binär der aktuelle Helligkeitswert angezeigt. So kann man beobachten, wie bei jedem Tastendruck der Helligkeitswert verändert wird und wie die gesteuerte Leuchtdiode darauf reagiert.

PWM

Bei einem PWM-Signal (Pulsweitenmodulation) handelt es sich um ein rechteckiges Signal mit fester Amplitude. Das Steuern mit einem PWM-Signal wird dadurch erreicht, dass man das Verhältnis der Pulsdauer zu Pause verändert. Diese Veränderung bedeutet gleichzeitig die Veränderung des Mittelwertes der Spannung, die am Ausgang ansteht.

PWM-Signal

PWM-Signal mit Impuls und Pause

PWM
Arduino und PWM
Raspberry Pi & PWM

HT46F47E

Der kleine Mikrocontroller HT46F47E eignet sich sehr gut für kleine Projekte. Er kann kostengünstig erworben und einfach mit nur zwei Tasten ohne zusätzliches Zubehör programmiert werden.

HT46F47E

Mikrocontroller HT46F47E

Experimente mit HT46F47E


Der Schaltplan

Schaltplan

Schaltplan

Die Testschaltung

Testschaltung

Testschaltung

Das Programm

Um die Aufgabe zu bewältigen, hantiert das Programm mit drei Variablen. Es sind die Variablen A, B und C. Die Variable B dient im Programm als Vergleichsgröße. Der eigentliche Wert für den PWM Ausgang befindet sich in der Variable A (Akku). Beim Runterfahren (dunkler, A=A-1) muss untersucht werden, ob A bereits den Wert 0 erreicht hat. Der Vergleichswert (hier 0) muss in die Variable B geladen werden. Eine direkte Zuweisung für die Variable B gibt es nicht. Es muss also der Wert 0 zunächst in die Variable A geladen werden. Anschließend kann er von A in B geschoben werden. Erst dann kann der Vergleich A=B? durchgeführt werden. Damit die Variable A ihren alten Wert nicht verliert, wird dabei der aktuelle Zustand von A in der Variable C zwischengespeichert.
Die gleiche Vorgehensweise gilt natürlich auch fürs Hochfahren (heller, A=A+1). Der Vergleichswert beträgt in diesem Fall 15 (F).

Listing:
        
000  59  Beschreibe den PWM-Ausgang, PWM = A
001  54  Dioden Wert-Anzeige (binär), Dout=A
002  27  Wartezeit von 200 ms
003  CB  Überspringe den folgenden Befehl, wenn Taster S1 betätigt
004  9C  Springe zu Abfrage 2
005  52  A-Zwischenspeicherung,  C=A
006  40  Vergleichswert 0, A=0
007  51  Variable B mit Vergleichswert laden, B=A
008  62  A aktualisieren, A=C
009  C3  Überspringe den folgenden Befehl, wenn A=B
010  72  Dunkler, A=A-1
011  90  Springe auf die Adresse 0

012  CA  Überspringe den folgenden Befehl, wenn Taster S2 betätigt
013  90  Springe auf Adresse 0
014  52  A-Zwischenspeicherung,  C=A
015  4F  Vergleichswert F, A=F
016  51  Variable B mit Vergleichswert laden, B=A
017  62  A aktualisieren, A=C
018  C3  Überspringe den folgenden Befehl, wenn A=B
019  71  Heller, A=A+1
020  90  Springe auf Adresse 0

 59 54 27 CB 9C 52 40 51 62 C3 72 90 CA 90 52 4F 51 62 C3 71 90 
        

Kurzvideo

Kurzvideo



Google-Suche auf MEINE-SCHALTUNG.de :


Home Impressum Datenschutz