TPS Flacker-LED und Programmierhilfe             

von  Hermann Nieder              
Elektronik-Labor  Literatur  Projekte  Lernpakete  TPS


  

                                                                                                     
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



Download: TPSPROG3.zip

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.


Elektronik-Labor  Literatur  Projekte  Lernpakete  TPS