'******************************************************************** ' System : C-Control/BASIC mit Microprozessor MC68HC05B6 ' Programm: LLicht.bas ' Version : V1.09 ' Autor : (c) DG1XPZ 01.09.1997 ' Länge : 3462 Byte ' Funktion: Lauflicht am Digital-Port 1-7 ' Systemvoraussetzungen: ' - C-Control/Basic-Modul ' - Applicationsboard mit angeschlossenem Display und Tastatur ' Schwerpunkt: ' - Lauflicht an Digi-Port1 - Digi-Port7 ' Hinweise: ' - benötigt wird Autostart-Modus und Funkuhr-Modul ' - 1. Startzeit 15.00 Uhr Ende 22.00 Uhr ' 2. Startzeit 06.00 Uhr Ende 10.00 Uhr ' Bedienung des Programms: ' 1. drücken der Sterntaste (während das Programm auf die Startzeit wartet) ' bewirkt eine Unterbrechung des laufenden Programms und erwartet die ' Eingabe der aktuellen Zeit HH:MM:SS (24h-Modus) ' 2. Da es immer wieder Problem gibt mit dem störungsfreien Empfang ' der DCF77-Signale, speichert das Programm, während der Warte-Zeit jede ' Sekunde und während der Lauflichtphase jede volle Minute, die Zeit ' im Arbeitsspeicher ab. Diese Zeit wird beim Neustart des Programms als ' erstes eingelesen und überbrückt damit kurzzeitige Netzausfälle. ' (eine Neu-Synchronisation der DCF77-Uhr dauert im allgemeinen 2-5 Minuten, ' und kann bei starken Störungen unter Umständen sogar völlig ausbleiben)) ' Versionsgeschichte: ' V1.01: - Stellen der Zeit mit Sterntaste ermöglichen ' V1.02: - Zweite Startzeit hinzugefügt ' V1.03: - Auf 4-zeiliges LCD-Display angepasst ' V1.04: - ? ' V1.05: - mit Hinweis: läuft ... bzw warte ... versehen ' - Textausgabe in Groß/Klein-Schreibung ' V1.06: - Wochentag erkennen (damit Sonntags ein bischen länger Ruhe ist) ' - Startzeit am Wochenende = 09.00 Uhr ' V1.07: - ? ' V1.08: - Menü eingebaut, Text in Tabellenform (Speicherplatz sparen) ' - mit Lampentest ' V1.09: - "Blitze" zu Silvester 0:00 (unregelmäßiges Aufleuchten) '******************************************************************** ' *** Variablen-Definition *** (Word=2byte, Byte =1byte) max. 24byte Variablen !!! define key word '01-02 Tastaturwert in Ziffernform z.B 1=1 define LaufLichtport byteport[1] '3-10 für 8-Bit Port define key_nr byte '11 Nummer der Taste für Tastaturabfrage define compare byte '12 für Tastaturabfrage define lcd_buf byte '13 für LCD-Modul define lcd_param byte '14 Übergabewert eines Zeichens für LCD-Modul define I byte '15 Laufvariable für Schleifen define Lastminute byte '16 erkennen ob Minute +1 define Startzeit byte '17 define Endzeit byte '18 define Flag byte '19 Flagbyte define dow_ byte '20 Wochentag define hour_ byte '21 Stundenwert define minute_ byte '22 Minutenwert define second_ byte '23 Sekundenwert define zufallzahl byte '24 für Blitze ' *** Definition Symbolischer Konstanten (benötigt keinen Speicherplatz!!) define Zeile1 &H80 'Display-Adresse für Zeile 1 define Zeile2 &HC0 'dto 2 define Zeile3 &H94 'dto 3 define Zeile4 &HD4 'dto 4 define startzeit1 6 '06.00 Uhr Start define endzeit1 10 '10.00 Uhr Ende define startzeit2 15 '15.00 Uhr Start define startzeit3 9 '09.00 Uhr Start am Wochenende define endzeit2 22 '22.00 Uhr Ende define keyboard ad[8] define lcd_port byteport[2] '*** Definition LCD-Ports *** define lcd_rs port[14] ' *** Definition LCD-Ports *** define lcd_rw port[13] ' *** Definition LCD-Ports *** define lcd_e port[15] ' *** Definition LCD-Ports *** ' die Reihenfolge der Tasten auf dem Keyboard define KEY_Stern 0 define KEY_7 1 define KEY_4 2 define KEY_1 3 define KEY_0 4 define KEY_8 5 define KEY_5 6 define KEY_2 7 define KEY_Kreuz 8 define KEY_9 9 define KEY_6 10 define KEY_3 11 ' *** ASCII-Codes *** define Leerz &H20 : define AKlammer &H40 define AZeichen &H21 : define A_ &H41 : define kla_ &H61 : define ae_ &HE1 define Quote &H22 : define B_ &H42 : define klb_ &H62 : define oe_ &HEF define Kreuz &H23 : define C_ &H43 : define klc_ &H63 : define ue_ &HF5 define Dollar &H24 : define D_ &H44 : define kld_ &H64 : define MStrich &HB0 '- define Prozent &H25 : define E_ &H45 : define kle_ &H65 : define Grad &HDF '° define Kaufm_Und &H26 : define F_ &H46 : define klf_ &H66 : define sz_ &HE2 define Apostro_O &H27 : define G_ &H47 : define klg_ &H67 : define mue_ &HE4 'µ define LKlammer &H28 : define H_ &H48 : define klh_ &H68 : define Wurzel &HE8 define RKlammer &H29 : define I_ &H49 : define kli_ &H69 : define Unendl &HF3 define Stern &H2A : define J_ &H4A : define klj_ &H6A : define Ohm &HF4 define Plus &H2B : define K_ &H4B : define klk_ &H6B : define Summe &HF6 define Komma &H2C : define L_ &H4C : define kll_ &H6C : define Pi &HF7 define Minus &H2D : define M_ &H4D : define klm_ &H6D : define Geteilt &HFD define Punkt &H2E : define N_ &H4E : define kln_ &H6E : define Semikol &H3B define SStrich &H2F : define O_ &H4F : define klo_ &H6F : define LSKlammer &H3C define Null &H30 : define P_ &H50 : define klp_ &H70 : define Gleich &H3D define Eins &H31 : define Q_ &H51 : define klq_ &H71 : define RSKLammer &H3E define Zwei &H32 : define R_ &H52 : define klr_ &H72 : define RPfeil &H7E define Drei &H33 : define S_ &H53 : define kls_ &H73 : define FZeichen &H3F define vier &H34 : define T_ &H54 : define klt_ &H74 : define UStrich &H5F define fünf &H35 : define U_ &H55 : define klu_ &H75 : define LPfeil &H7F define sechs &H36 : define V_ &H56 : define klv_ &H76 define sieben &H37 : define W_ &H57 : define klw_ &H77 define acht &H38 : define X_ &H58 : define klx_ &H78 define neun &H39 : define Y_ &H59 : define kly_ &H79 define DPunkt &H3A : define Z_ &H5A : define klz_ &H7A '*** Programmbeginn *** LaufLichtPort=0 #start gosub LCD_INIT 'Initialisiert das LCD-Display gosub Text_Programmname 'Gespeicherte Zeit einlesen (falls kurzzeitiger Netzausfall war) open# for Read #lese_naechsten_wert if EOF then goto Warte_auf_Startzeit input# Dow input# Hour input# Minute input# second close# #Warte_auf_Startzeit if DOW=0 then DOW=1 gosub ifkey if lcd_param = stern then gosub Menue_I'Eingabe_Zeit ' Ausgabe von "Start: xx:00:00" am Display lcd_param = 3 : gosub LCD_GOTOLINE gosub Text_Start lcd_param = NULL + startzeit / 10 :gosub lcd_writechar lcd_param = NULL + startzeit mod 10 :gosub lcd_writechar lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = 4 : gosub LCD_GOTOLINE Gosub Text_warte lcd_param = 2 : gosub LCD_GOTOLINE gosub Anzeige_Zeit gosub Zeit_speichern startzeit = startzeit1 : endzeit = endzeit1 if hour >= endzeit1 and hour < endzeit2 then startzeit = startzeit2 if hour >= endzeit1 and hour < endzeit2 then endzeit = endzeit2 'if DOW > 4 and DOW < 7 and hour > endzeit2 then Startzeit = startzeit3 ' ist es Freitags nach 22.00 dann Start 10.00 Uhr: if Dow = 5 and hour >=endzeit1 and hour >= endzeit2 then startzeit = startzeit3 ' ist es Sonnabend oder Sonntag, dann Start 09.00 Uhr: if dow > 5 then startzeit = startzeit3 'if es Sonnabend oder Sonntag dann Ende 22.00 Uhr: if DOW > 5 then endzeit = endzeit2 ' ist es Sonntag nach 22.00 Uhr dann Start 06.00 Uhr if Dow = 7 and hour >= endzeit2 then startzeit = startzeit1 if Day=31 then endzeit = 24 if Day=1 then startzeit=0 and endzeit=2 if hour >= startzeit and hour < endzeit then goto Start_Lauflicht goto warte_auf_startzeit #Start_Lauflicht If DOW=0 then DOW=1 flag = null if Day=31 then endzeit = 24 if Day=1 then startzeit=0 and endzeit=2 lcd_param = 3 : gosub LCD_GOTOLINE ' Ausgabe von "Ende: xx:00:00" am Display gosub Text_Ende lcd_param = NULL + Endzeit / 10 :gosub lcd_writechar lcd_param = NULL + Endzeit mod 10 :gosub lcd_writechar lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = null : gosub LCD_WRITECHAR lcd_param = 4 : gosub LCD_GOTOLINE Gosub Text_laeuft if Day = 1 and Hour>=0 then goto Neujahrsblitze #LaufLichtroutine if hour >= Endzeit then goto Warte_auf_Startzeit For I = 0 to 67 gosub ifkey if lcd_param = stern then Flag = stern 'die folgenden 3 Zeilen ermöglichen if lcd_param = stern then gosub Menue_I'Eingabe_Zeit 'das Stellen der Uhr if flag = stern then goto Start_Lauflicht if hour=0 then goto Start_Lauflicht looktab LaufLichtdaten, I , LaufLichtport pause 20 lcd_param = 2 : gosub LCD_GOTOLINE gosub Anzeige_Zeit if Minute <> LastMinute then gosub Zeit_speichern next goto Lauflichtroutine #Neujahrsblitze if hour >= Endzeit then goto Warte_auf_Startzeit Randomize Timer Key = rand Key = ABS (Key) Key = Key mod 371 Zufallzahl = Key mod 7 gosub ifkey if lcd_param = stern then Flag = stern 'die folgenden 3 Zeilen ermöglichen if lcd_param = stern then gosub Menue_I'Eingabe_Zeit 'das Stellen der Uhr if flag = stern then goto Start_Lauflicht ' looktab Blitze, Zufallzahl , LaufLichtport pause 3 lcd_param = 2 : gosub LCD_GOTOLINE gosub Anzeige_Zeit if Minute <> LastMinute then gosub Zeit_speichern goto Neujahrsblitze end ' ************************************************************************************* #Menue_I Lauflichtport=0 gosub Bild_neu ' 1 - Zeit lcd_param = Zeile2 : gosub LCD_WriteCMD ' Wechsel in die zweite Zeile lcd_param = Eins : gosub LCD_WRITECHAR gosub Text_Leerz_Minus_Leerz gosub Text_Zeit ' 2 - Lampentest lcd_param = Zeile3 : gosub LCD_WriteCMD lcd_param = Zwei : gosub LCD_WRITECHAR gosub Text_Leerz_Minus_Leerz gosub Text_Lampentest lcd_param = Zeile4 : gosub LCD_WriteCMD ' 3 - ? lcd_param = drei : gosub LCD_WRITECHAR gosub Text_Leerz_Minus_Leerz lcd_param = FZeichen : gosub LCD_WRITECHAR gosub lesekey if lcd_param = Stern or lcd_param = Kreuz then return if lcd_param = eins then goto Eingabe_Zeit if lcd_param = zwei then gosub Lampentest 'if lcd_param = drei then gosub Meszwert_laden goto Menue_I return #Zeit_speichern open# for write print# dow print# hour print# minute print# second Lastminute = minute close# return #Eingabe_Zeit gosub LCD_CLS 'geht nicht tiefer zu gosub Text_Programmname 'Verschachteln lcd_param = 2 : gosub LCD_GOTOLINE gosub Text_Zeit2 lcd_param = 1 : gosub lcd_blink gosub lesekey : hour_= key gosub lesekey : hour_= hour_ * 10 + key if hour_ > 23 then goto Eingabe_Zeit lcd_param = dPunkt : gosub lcd_writechar gosub lesekey : minute_= key gosub lesekey : minute_= minute_* 10 + key if minute_ > 59 then goto Eingabe_Zeit lcd_param = dPunkt : gosub lcd_writechar gosub lesekey : second_= key gosub lesekey : second_= second_* 10 + key if second_ > 59 then goto Eingabe_Zeit lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = RPfeil : gosub lcd_writechar lcd_param = Kreuz : gosub lcd_writechar lcd_param = 1 : gosub LCD_Blink gosub lcd_links gosub lesekey if lcd_param <> kreuz then goto Eingabe_Zeit hour=hour_ : minute=minute_ : second=second_ #Eingabe_Tag lcd_param = Zeile3 : gosub LCD_WriteCMD gosub Text_Tag gosub lesekey : dow_ = key if dow_ > 3 then goto Eingabe_Tag dow_ = dow_ * 10 gosub lesekey : dow_ = dow_ + key if dow_ > 31 then goto Eingabe_Tag for I=1 to 12 lcd_param = Leerz : gosub LCD_WRITECHAR next i lcd_param = RPfeil : gosub lcd_writechar lcd_param = Kreuz : gosub lcd_writechar lcd_param = 1 : gosub LCD_Blink gosub lcd_links gosub lesekey if lcd_param <> kreuz then goto Eingabe_Tag Day=dow_ #Eingabe_Wochentag lcd_param = Zeile4 : gosub LCD_WriteCMD gosub Text_Wochentag2 lcd_param = Zeile3 : gosub LCD_WriteCMD gosub Text_Wochentag gosub lesekey : dow_ = key if dow_ > 7 or dow_ < 1 then goto Eingabe_Wochentag for I=1 to 7 lcd_param = Leerz : gosub LCD_WRITECHAR next i lcd_param = RPfeil : gosub lcd_writechar lcd_param = Kreuz : gosub lcd_writechar lcd_param = 1 : gosub LCD_Blink gosub lcd_links gosub lesekey if lcd_param <> kreuz then goto Eingabe_Wochentag lcd_param = 0 : gosub LCD_Blink dow=dow_ goto menue_I #Bild_neu gosub LCD_CLS gosub Text_Programmname return #Lampentest gosub lcd_links lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = Zeile3+14 : gosub LCD_WriteCMD lcd_param = Gleich : gosub LCD_WRITECHAR lcd_param = kla_ : gosub LCD_WRITECHAR lcd_param = kln_ : gosub LCD_WRITECHAR Lauflichtport=127 lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = RPfeil : gosub lcd_writechar lcd_param = stern : gosub lcd_writechar lcd_param = 1 : gosub LCD_Blink gosub lcd_links gosub lesekey if lcd_param <> stern then goto Lampentest lcd_param = 0 : gosub LCD_Blink Lauflichtport=0 return #Text_Programmname for I = 0 to 19 looktab Tab_Text_Programmname, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Zeit2 for I = 0 to 6 looktab Tab_Text_Zeit2, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Ende for I = 0 to 6 looktab Tab_Text_Ende, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Start for I = 0 to 6 looktab Tab_Text_Start, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Lampentest for I = 0 to 9 looktab Tab_Text_Lampentest, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Leerz_minus_Leerz lcd_param = Leerz : gosub LCD_WRITECHAR ' lcd_param = Minus : gosub LCD_WRITECHAR lcd_param = Leerz : gosub LCD_WRITECHAR return #Text_Zeit for I = 0 to 3 looktab Tab_Text_Zeit, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Wochentag for I = 0 to 9 looktab Tab_Text_Wochentag, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Wochentag2 for I = 0 to 19 looktab Tab_Text_Wochentag2, I, lcd_param gosub LCD_WRITECHAR next I return #Text_Tag lcd_param = T_ : gosub LCD_WRITECHAR lcd_param = kla_ : gosub LCD_WRITECHAR lcd_param = klg_ : gosub LCD_WRITECHAR lcd_param = Dpunkt : gosub LCD_WRITECHAR return #Text_Warte for I = 0 to 8 looktab Tab_Text_Warte, I, lcd_param gosub LCD_WRITECHAR next I return #Text_laeuft for I = 0 to 9 looktab Tab_Text_laeuft, I, lcd_param gosub LCD_WRITECHAR next I return #Montag lcd_param = M_ : gosub LCD_WRITECHAR lcd_param = klo_ : gosub LCD_WRITECHAR return #Dienstag lcd_param = D_ : gosub LCD_WRITECHAR lcd_param = kli_ : gosub LCD_WRITECHAR return #Mittwoch lcd_param = M_ : gosub LCD_WRITECHAR lcd_param = kli_ : gosub LCD_WRITECHAR return #Donnerstag lcd_param = D_ : gosub LCD_WRITECHAR lcd_param = klo_ : gosub LCD_WRITECHAR return #Freitag lcd_param = F_ : gosub LCD_WRITECHAR lcd_param = klr_ : gosub LCD_WRITECHAR return #Sonnabend lcd_param = S_ : gosub LCD_WRITECHAR lcd_param = kla_ : gosub LCD_WRITECHAR return #Sonntag lcd_param = S_ : gosub LCD_WRITECHAR lcd_param = klo_ : gosub LCD_WRITECHAR return #Anzeige_Zeit lcd_param = Z_ : gosub LCD_WRITECHAR 'kann icht tiefer lcd_param = kle_ : gosub LCD_WRITECHAR 'Verschachtelt werden lcd_param = kli_ : gosub LCD_WRITECHAR 'darum in dieser lcd_param = klt_ : gosub LCD_WRITECHAR 'Art und Weise lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = Leerz : gosub LCD_WRITECHAR 'lcd_param = Leerz : gosub LCD_WRITECHAR lcd_param = NULL + hour / 10 : gosub LCD_WRITECHAR lcd_param = NULL + hour mod 10 : gosub LCD_WRITECHAR lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = NULL + minute / 10 : gosub LCD_WRITECHAR lcd_param = NULL + minute mod 10 : gosub LCD_WRITECHAR lcd_param = dpunkt : gosub LCD_WRITECHAR lcd_param = NULL + second / 10 : gosub LCD_WRITECHAR lcd_param = NULL + second mod 10 : gosub LCD_WRITECHAR lcd_param = leerz : gosub LCD_WRITECHAR lcd_param = leerz : gosub LCD_WRITECHAR ON DOW gosub Montag, Montag, Dienstag, Mittwoch, Donnerstag, Freitag, Sonnabend, Sonntag lcd_param = Zeile3+17 : gosub LCD_WriteCMD lcd_param = NULL + day / 10 : gosub LCD_WRITECHAR lcd_param = NULL + day mod 10 : gosub LCD_WRITECHAR return #Ifkey #loop_ifkey lcd_param = &H1F for key_nr = 0 to 12 looktab keycodes, key_nr, compare if abs(keyboard-compare) < 4 then gosub HANDLE_LCD_KEY return next goto loop_ifkey #lesekey #loop lcd_param = &H1F for key_nr = 0 to 11 looktab keycodes, key_nr, compare if abs(keyboard-compare) < 3 then gosub HANDLE_LCD_KEY if lcd_param >= Kreuz and <= neun then return next goto loop ' ----- Tastennummer als Hex-Wert zurück #HANDLE_LCD_KEY key = 13 if key_nr = KEY_Stern then lcd_param = Stern if Key_nr = KEY_Stern then key = 10 if key_nr = KEY_7 then lcd_param = Sieben if key_nr = KEY_7 then key = 7 if key_nr = KEY_4 then lcd_param = vier if Key_nr = KEY_4 then key = 4 if key_nr = KEY_1 then lcd_param = EINS if Key_nr = KEY_1 then key = 1 if key_nr = KEY_0 then lcd_param = Null if Key_nr = KEY_0 then key = 0 if key_nr = KEY_8 then lcd_param = Acht if Key_nr = KEY_8 then key = 8 if key_nr = KEY_5 then lcd_param = fünf if Key_nr = KEY_5 then key = 5 if key_nr = KEY_2 then lcd_param = zwei if Key_nr = KEY_2 then key = 2 if key_nr = KEY_Kreuz then lcd_param = kreuz if Key_nr = KEY_Kreuz then key = 11 if key_nr = KEY_9 then lcd_param = Neun if Key_nr = KEY_9 then key = 9 if key_nr = KEY_6 then lcd_param = sechs if Key_nr = KEY_6 then key = 6 if key_nr = KEY_3 then lcd_param = drei if Key_nr = KEY_3 then key = 3 if lcd_param >= Kreuz and lcd_param <= Neun then beep 400,10,0 if lcd_param >= Null and lcd_param <= Neun then gosub LCD_writechar Pause 3 return '*************** LCD_Interface ********************************* '( muss in jedes Programm mit LCD-Ausgabe eingefuegt werden) #LCD_INIT ' alle ports 0 lcd_port = OFF ' 8-Bit-Modus aktivieren lcd_param=&H38 : gosub LCD_WRITECMD ' mit 8-Bit-Command in 4-Bit-Modus umschalten lcd_port=&B00000010 tog lcd_e tog lcd_e ' ab jetzt 4-Bit-Modus lcd_param = &H28 : gosub LCD_WRITECMD lcd_param = &H0C : gosub LCD_WRITECMD ' Display loeschen #LCD_CLS lcd_param = &H02 : gosub LCD_WRITECMD lcd_param = &H01 : gosub LCD_WRITECMD return ' Cursor on/off #LCD_Cursor if lcd_param = 0 then lcd_param = &B00001100 if lcd_param = 1 then lcd_param = &B00001110 gosub LCD_WRITECMD return ' Zeichen blinken on/off #LCD_Blink if lcd_param = 0 then lcd_param = &B00001100 ' Blinken an if lcd_param = 1 then lcd_param = &B00001101 ' Blinken aus gosub LCD_WRITECMD return ' Cursor 1 Zeichen nach links schieben #LCD_Links lcd_param = &B00010000 gosub LCD_WRITECMD return ' Zeilenwechsel Zeile 1-4 #LCD_GOTOLINE if lcd_param = 1 then lcd_param = &H80 if lcd_param = 2 then lcd_param = &HC0 if lcd_param = 3 then lcd_param = &H94 if lcd_param = 4 then lcd_param = &HD4 goto LCD_WRITECMD ' LCD-Kommando #LCD_WRITECMD lcd_buf = OFF goto LCD_WRITE ' Zeichenausgabe #LCD_WRITECHAR lcd_buf = &B00100000 ' Kommando oder Zeichen an Display senden #LCD_WRITE lcd_port = lcd_buf or (lcd_param shr 4) ' Hi-Nibble tog lcd_e tog lcd_e lcd_port = lcd_buf or (lcd_param and &H0F) ' Lo-Nibble tog lcd_e tog lcd_e return ' Tabellen ' --- Verarbeitung des Tastaturereignisses anhand der Tastennummer --- ' ----- Vergleichstabelle table keycodes 0 23 46 68 90 111 132 152 173 193 214 235 243 tabend table LaufLichtdaten 1 2 4 8 16 32 64 0 '8 1234567 einzeln 64 32 16 8 4 2 1 0 '8 7654321 einzeln 1 3 7 15 31 63 127 127 '8 1234567 addierend 126 124 120 112 96 64 0 0 '8 1234567 subtrahierend 1 64 2 32 4 16 8 0 8 0 8 0 '12 1726354-4-4 einzeln 65 99 119 127 62 28 8 0 '8 1726354 add. und sub. zur Mitte 8 28 62 127 119 99 65 0 '8 1 33 37 45 61 63 127 0 '8 1634527 addierend tabend table Blitze 1 8 4 64 32 2 16 0 '8 1234567 einzeln tabend table Tab_Text_Zeit Z_ kle_ kli_ klt_ tabend table Tab_Text_Zeit2 Z_ kle_ kli_ klt_ Leerz dpunkt Leerz tabend table Tab_Text_Ende E_ kln_ kld_ kle_ Leerz dpunkt Leerz tabend table Tab_Text_Start S_ klt_ kla_ klr_ klt_ dpunkt Leerz tabend table Tab_Text_Lampentest L_ kla_ klm_ klp_ kle_ kln_ klt_ kle_ kls_ klt_ tabend table Tab_Text_Programmname Stern L_ kla_ klu_ klf_ kll_ kli_ klc_ klh_ klt_ leerz leerz V_ Punkt DPunkt Eins Punkt NuLL neun Stern tabend table Tab_Text_Warte klw_ kla_ klr_ klt_ kle_ leerz punkt punkt punkt tabend table Tab_Text_laeuft kll_ kla_ kle_ klu_ klf_ klt_ leerz punkt punkt punkt tabend table Tab_Text_Wochentag W_ klo_ klc_ klh_ kle_ kln_ klt_ kla_ klg_ DPunkt tabend table Tab_Text_Wochentag2 LKlammer M_ klo_ Minus eins komma Leerz D_ kli_ Minus Zwei komma leerz punkt punkt S_ klo_ minus Sieben RKlammer tabend