Die Weihnachtskrippe sollte in diesem
Jahr um eine „Feuerstelle“ am Lagerplatz der Hirten ergänzt werden.
Dazu wurde wie im Bild mit orangenfarbenen Leuchtdioden
experimentiert, die im Betrieb flackern statt zu blinken.
Es sollte für diesen Zweck einmal eine gerade
aufgebaute TPS verwendet werden.
Im Bild ist dies ein Exemplar auf einem kleinen Steckboard mit einem ATtiny461A in Anlehnung an die
TPS-Version von Christian Hottum
, die auf diesen Seiten an anderer Stelle bereits vorgestellt worden
ist. Die Anschlussdrähte der vier roten LOW Current Leuchtdioden meiner
Version einer ATtiny461A-TPS habe ich wie im Bild mit
Isolierungen umgeben, um Kurzschlüsse zwischen ihnen zu vermeiden. Sie
sind mit einem Widerstandsnetzwerk mit 4 Widerständen zu je
4,7 kOhm verbunden, dessen gemeinsamer Pin an Masse liegt. Die beiden
grünen Exemplare haben jeweils einen einzelnen Vorwiderstand von 4,7
kOhm nach Masse.
Dies ist ein mögliches TPS-Programmlisting für eine flackernde Leuchtdiode:
0: 42 A=2
1: 59 PWM1 = A
2: 26 Wait 100 ms
3: 48 A=8
4: 59 PWM1 = A
5: 26 Wait 100 ms
6: 4C A=12
7: 59 PWM1 = A
8: 27 Wait 200 ms
9: 45 A=5
A: 59 PWM1 = A
B: 26 Wait 100 ms
C: 48 A=8
D: 59 PWM1 = A
E: 26 Wait 100 ms
F: 4B A=11
10: 59 PWM1 = A
11: 26 Wait 100 ms
12: 47 A=7
13: 59 PWM1 = A
14: 26 Wait 100 ms
15: 44 A=4
16: 59 PWM1 = A
17: 26 Wait 100 ms
18: 4D A=13
19: 59 PWM1 = A
1A: 26 Wait 100 ms
1B: 44 A=4
1C: 59 PWM1 = A
1D: 26 Wait 100 ms
1E: 90 JMP 0
Das Programm wurde mit einer aktuellen Version der
TPS-PROGRAMMIERHILFE
entworfen, die auf diesen Seiten bereits vorgestellt worden ist.
In der neuen Programmversion ist bereits berücksichtigt worden, dass z.
B. eine ATtiny461A-TPS doppelt so viele „Programm-Pages“ besitzt
wie diejenige mit einem Holtek-Controller und auch
über eine zusätzliche PWM-Schnittstelle verfügt. Vor
der Übertragung der Programm-Bytes in die TPS ist das gerade in ihr
aktive Programm mit den Tasten „S2“ und „RES“ auf der Platine bzw. auf
dem Steckboard anzuhalten, wie dies im TPS-Handbuch von Burkhard Kainka
erläutert wird.
Dies
ist die Schaltung, die für die Übertragung verwendet wird. Sie
stammt ursprünglich von Burkhard Kainka, wurde hier aber noch
etwas erweitert. Wenn man möchte, kann man jeweils zusätzlich
zwischen „RES“, „S1“ und „S2“ und den Pluspol
der Batterie, mit der die TPS betrieben wird, eine Leuchtdiode mit
einem Vorwiderstand schalten. Im Bild ist dies der Übersichtlichkeit
wegen nur für den Anschluss „RES“ der TPS bereits dargestellt.
Wenn
die TPS über die oben vorgestellte Schaltung mit dem PC verbunden ist,
und die PC-Schnittstelle, wie hier im Bild „COM 7“, geöffnet worden
ist, lässt sich ein Programmstopp auch mit dem Programm
„TPS-PROGRAMMIERHILFE 3“ bewerkstelligen, indem man zuerst die
Checkbox mit der Bezeichnung „S2“ und danach diejenige mit der
Beschriftung „RES“ anklickt. Klickt man darauf „RES“ erneut an
und anschließend ein zweites Mal „S2“, ist die betreffende TPS
zum Programmieren bereit. Nun kann die „Page im TPS-Controller“
ausgewählt werden, und anschließend startet man mithilfe des
Buttons „Prog.-Start“ den automatischen Programmiervorgang.
Die
aktuelle Version der „TPS-PROGRAMMIERHILFE“ macht es auch möglich, über
vier Verbindungsleitungen von den Ausgangspins der TPS
zu CTS, DSR, RI und DCD der seriellen PC-Schnittstelle bzw. einer
Platine mit einem USB-Chip mit FT232R die jeweiligen Ausgangszustände
der Steuerung einzulesen und per Programm „zurückzuübersetzen“.
Zu diesem Zweck drückt man den Button mit der Bezeichnung „Anzahl der
Programmzeilen“, nachdem man im Textfeld rechts daneben die gewünschte
Anzahl der anzuzeigenden Bytes eingetragen hat.
Es
wird unmittelbar darauf links im Listenfeld die erste
Programmzeile, hier „42“ mit der Bedeutung „A=2“ dahinter, angezeigt.
Nun dauert es eine Weile, und schließlich sind alle restlichen
Zeilen mit den Bytes des TPS-Programms und den
entsprechenden „Dekodierungen“ angezeigt worden.
Der Inhalt
einer einzelnen Programmzeile lässt sich auch mit dem Button
„Einzel-Programmzeile“ als Zahl und auch als Bitmuster darstellen, wie
z. B. im Bild für den Wert „4“.
Mit
der abgebildeten Platine, die hier im Bild über eine 9-polige Leitung
mit COM1 des angeschlossenen PCs verbunden ist oder
einem USB-Adapterkabel von Pollin(Best.-Nr. 721034) und der Platine
unten im Bild gelingt bei mir die Programmierung und auch das Einlesen
von Programmzeilen aus der oben abgebildeten TPS. Dies funktioniert
auch mit der Experimentierplatine mit einem USB/Seriell-Wandler
FT232R aus einem „Lernpaket MSR mit dem PC“.
Die
TPS-PROGRAMMIERHILFE 3 „läuft“ bei mir auch mit einem PC unter Windows
7. Obwohl bei dieser Windows-Version während des Einlesens von
der TPS eine Fehlermeldung angezeigt wird, so gelingt es
doch, wenn man so vorgeht, wie dies oben erläutert worden ist.
Möchte man eine bestimmte Anzahl von Programmzeilen von einer
bestimmten „TPS-Page“ einlesen lassen, so wählt man diese durch
Eintragung ihrer Nummer im vorgesehenen Textfeld aus und lässt die
TPS mit dem Button „auswählen“ dorthin „vorlaufen“. Das Programm
„steuert “ in diesem Fall so oft „stellvertretend“ den TPS-Eingang
„S2“, bis die gewünschte „Page“ erreicht ist. Ist dies der Fall,
flackert auch keine der vier Leuchtdioden an den TPS-Ausgängen mehr.
Auch hat dann diejenige, die eventuell zwischen Pin
„S2“ über einen Vorwiderstand am Pluspol der 4,5V-Spannungsquelle
angeschlossen ist aufgehört zu blinken und ist nun
ausgeschaltet. Das Anwendungsprogramm TPSPROG3
benötigt die Datei „RSCOM.DLL“, die auf Burkhard Kainkas
Seiten heruntergeladen werden kann.