************************************************************************************** * * * Datei : TMAender.doc * * Projekt: TimeManager * * Inhalt : Änderungsdokumentation * * * ************************************************************************************** C:\ALGE\TM\Software\QuellCode\Common\main.c 07.81 23.08.07 > Fehlermeldung, entstanden durch die Verwendung eines neuen Updates des Kompilers, behoben BOD C:\ALGE\TM\Software\QuellCode\Common\MENUBAUM.C 07.81 23.08.07 > Fehlermeldung, entstanden durch die Verwendung eines neuen Updates des Kompilers, in der Routine 'MAKE_STRING' behoben BOD C:\ALGE\TM\Software\QuellCode\Common\race.c 07.81 23.08.07 > Die Kanalnummerausgabe auf dem Drucker und auf der PC-Schnittstelle stimmen nicht überein. Auf der PC-Schnittstelle ist eine Nummernzuordnung von Kanal 0 bis 4 verwendet worden, im Druckerprotokoll von Kanal 1 bis 5. In Routine 'StrTimeWrPR' in der die Kanal- informations-Zeichenkette zusammengestellt wird, die Kanalnummer um eins vermindert und die Berechnungsformel für den Kanalindex der Informationstexttabelle korrigiert. BOD C:\ALGE\TM\Software\QuellCode\Common\swc.c 07.81 23.08.07 > Fuer das Beheben der Kanalnummernunterschiede zwischen PC und Druckerschnittstelle in folgenden Routinen Aende- rungen vorgenommen: in 'TMChanInfoText (darin wird 'CIT?' abgearbeitet)' die Berechnungsformel der Kanalnummer aus dem Gesamtkanalindex (=MaxTerminals x MaxKanaele) ange- passt, daselbe in 'TMChanKopfText' fuer das Abarbeiten von 'CHT?', in 'SWCRdSchaltLogic und SWCRdChanDelayTime' musste die Abfrage fuer das Broadcastkommando bei 'DTClttc###' und 'TRClttc#' von '0' auf '9' und dass '0' als normaler Kanal akzeptiert wird, geaendert werden, in 'TMRdChanInfoText (ablegen der Kanalueberschrift in die Ueberschriftentabelle 'CITlttczzz..')' die Berech- nungsformel des Gesamtkanalindexes aus Terminalnummer und Kanalnummer und dasselbe auch in 'TMRdChanKopfText (ablegen der Kanalinfo in die Kanalinfotabelle 'CHTlttczzz.')' > Fehlermeldung, entstanden durch die Verwendung eines neuen Updates des Kompilers, in den Routinen 'SWCTawInit, DoSWCFunc, TMRdChanInfoText, TMRdChanKopfText' behoben. > In den Routinen 'SWCRdSchaltLogic, SWCRdChanDelayTime, TMRdChanInfoText, TMRdChanKopfText' Abfragen implemen- tiert, die verhindern sollen, falls Terminals in den einzelnen Straengen angesprochen werden die nicht existieren und dabei nicht zu einer Fehlprogrammierung von Terminals kommt, die jeweils im anderen Strang angeschlossen sind. BOD C:\ALGE\TM\Software\QuellCode\Common\swt.c 07.81 23.08.07 > Fuer das Beheben der Kanalnummernunterschiede zwischen PC und Druckerschnittstelle musste in Routine 'SwtChanData' die Abfrage für das Broadcastcommando, in dem alle Kanaele eines Terminals angesprochen werden sollen, geaendert werden. In Routine 'ExtraTermChan' in der die Kanalnummer aus dem Kommandostring 'CITlttczzz.. bzw. CHTlttczzz..' gewonnen wird, die neue Broadcastnummer in der Rueckgabe sowie die Rueckgabemoeglichkeit des Kanales '0' als Kanalnummer, geaendert. > Fehlermeldung, entstanden durch die Verwendung eines neuen Updates des Kompilers, in den Routinen 'SWTAddressing, SwtChanData' behoben BOD C:\ALGE\TM\Software\QuellCode\Common\test.c 07.81 19.12.06 > Testroutine 'SelfTest' die nach dem Einschalten des Geraetes durch setzen des 'J2' Jumpers aufgerufen werden kann umgearbeitet und erweitert. Es werden jetzt die ersten 64 Bytes des Flash-Speichers ausgelesen und deren Inhalt auf allen vier Schnittstellen ausgegeben. BOD ************************************************************************************** C:\ALGE\TM\Software\QuellCode\Common\main.c 06.C1 04.12.06 > Um die universialitaet des TimeManagers zu erhoehen wurde eine Moeglichkeit einer Bregrenzung der Anzahl an Terminalsuchvorgaengen implementiert. Wird entweder am 'Main' - Strang oder am 'Second' - Strang ein Abschusswiderstand angeschlossen, so wird nach dem Einschalten nur zweimal nach Terminals gesucht, dann abgebrochen und softwaremaessig als wenn ein Terminal angeschlossen ist behandelt. BOD C:\ALGE\TM\Software\QuellCode\Common\race.c 06.C1 04.12.06 > Ist ein Endwiderstand aber keine Terminals angeschlossen, so wird das Geraet nach einem Start nicht in den 'Running' - Modus versetzt, sondern bleibt im 'Ready' - Modus, dazu wurde die Routine 'RaceStoreInternTimes' abgeaendert. BOD C:\ALGE\TM\Software\QuellCode\Common\swt.c 06.C1 04.12.06 > Die Routine 'SWTAddressing' abgeaendert, sodass bei angeschlossenem Abschlusswiderstand nur zweimal nach Terminals gesucht wird. BOD ************************************************************************************** C:\ALGE\TM\Software\QuellCode\Common\main.c 06.A1 03.10.06 > Die markanten Veraenderungen gegenueber dem TM for Swim sind: > Reduzierte Anzahl an Kommandos, so sind herausgenommen worden ZRI, BEW, LNR, ANS, SBM, SBA, IDT, DAY, ITV, AUS, PRC, INI, SPM, SPH, SPS, DIS, WTS, BMS, BMA, EBT und SLM, DTH,DTM,DTS sind durch DTC ersetzt worden ebenso wie TRH,TRM,TRS die durch TRC ersetzt worden sind. > Die Kommados DTG, DTV, DTP, sind bevorzugter gegenueber dem TMS geworden. Dahinter steckt die Ueberlegung, dass mehr 'Verantwortung' dem angeschlossenen PC uebertragen wird. > Eine Konsequenz daraus ist: dass die GAZ nur noch die Laufende ausgibt, alles Andere muss mit dem DTG Kommando gemacht werden. > Das Kommando TMSINIT wude zu TMINIT, die Antwort ist dann TMINITMbbxSbbx. > Die Terminalstrangbezeichnungen wurden auf 'Main' bzw. 'Second' geaendert, beim TMS waren sie mit 'Start' und 'Wende' bezeichnet gewesen. > Bei GAZ-Baudrate von 2400Baud wird die Laufende nur im ein Sekunderhythmus ausgeben, damit es im zeitlichen Zwischenraum Platz fuer die DTG-Ausgaben gibt. > Die Ausgabe des TAW-Signal ist im Abstand von 0.1sec bis 24.0sec waehlbar, aber auch abschaltbar mit TAW000. > Die Daten des DTG- und des DTV-Kommandos werden jeweils in separate Datenpuffer geschrieben und nicht in die Puffer die auch vom Interrupt bedient werden. > Die laufenden Zeiten fuer GAZ und TV-Schnittstelle werden nicht mehr so rechenintensiv gebildet. > Es erfolgt keine Classementerstellung, die Zeiten werden auf dem Speicher abgelegt, sie werden momentan nur nach einem 'REC' -Kommando nochmals dem PC geschickt und bleiben solange erhalten, bis ein 'SSTR' gesendet wird. > Ausgabeformat einer Laufzeit fuer den Drucker und TV-Schnittstelle hat sich geaendert. Format neu: lTttCcVg hh:mm:ss.zhtz, l=Stranganfangsbuchstabe (M fuer Main, S fuer Second), tt=Terminalnummer (1-31), c=Kanalnummer (1-5), g=Status (1=gueltig, 0=ungültig), hh:mm:ss.zhtz=Zeit. > Das Format fuer eine Laufende Zeit auf der Vidoschnittstelle hat sich auch geaendert Format neu: R00000000 hh:mm:ss.zhtz (anstatt 6 Nullen sind es jetzt 8 Nullen). > Es werden Startimpulse auch nach dem Startzeitfenster von 5sec registriert und dem PC weitergeleitet, diese sind dann als ungueltig markiert. > Registrieren oder ueberwachen eines moeglichen Fehlstarts ist nicht implementiert. > Ein Start mit dem Startkommando 'AST' wird auf dem Drucker und zum PC separat gekennzeichnet (START AST hh:mm:ss.zhtz, in der Ortsangabe bei der 'TIM'-Meldung wird ein 'A' eingetragen TIM000A000100:00:23.1304) > Das Kommando PHS# hat eine zusaetzliche Option erhalten und zwar wenn # gleich 2 ist. Bei dieser Einstellung werden nur Daten ausgedruckt die per DTP-Kommando gesendet werden. > Kommando 'DTClttc###' neu hinzugefuegt. Mit Hilfe des 'DTC'-Kommandos kann die Totzeit der Kanaele eingestellt werden. 'lttc' sind Angaben zur Terminaladresse, l=Terminalstrang, tt=Terminalnummer (bei Wert '0' werden alle Terminals angesprochen), c=Kanalnummer (bei Wert '0' werden alle Kanaele angesprochen), ###=Totzeit in Hundertstelsec. > Kommando 'TRClttc#' ebenfalls neu hinzugefuegt. Mit 'TRC' kann die aktive Schaltflanke eingestellt werden. 'lttc' sind wiederum Angaben zur Terminaladresse, wie bei 'DTC', #=Schaltflanke (0=Öffner, 1=Schliesser). > Kommando 'IDT' ist im Format geaendert worden, so ist jetzt nur noch die Tageszeit als Uebergabeparameter erforderlich ('IDThh:mm:ss.zhtz'). > Kommando 'GHS#' neu aufgenommen. 'GHS#' ist wie 'PHS#', anstatt den Printer anzusprechen, spricht 'GHS' die GAZ an. Die Optionen fuer '#' sind: 0=Datenverkehr zur GAZ wird unterbrochen (keine Datenspeicherung), 1=Daten werden zur GAZ uebertragen, 2=es werden nur Daten die per 'DTG' Kommando kommen, zur GAZ uebertragen. > Kommando 'VHS#' neu aufgenommen. 'VHS#' hat die gleichen Optionen und Verhalten wie 'PHS' und 'GHS', nur betrifft es die TV-Schnittstelle. > Kommando 'CHTlttczzz..' neu aufgenommen. Mit dem 'CHT' Kommando koennen Daten in eine TM-interne Tabelle eingespielt werden, die beim Ausdruck als 'Ueberschrift' fuer ein ausloesenden Kanal, ausgegeben wird. 'lttc' sind wieder Angaben zur Terminaladresse, zzz.. ist der auszugebende Text der bis zu 24 Zeichen umfassen kann. Mit 'CHT?' kann die interne Tabelle abgerufen werden, fuer das Loeschen eines Eintrages muss das Kommmand mit Terminaladresse aber ohne Text dem TM geschickt werden. > Kommando 'CITlttczzz..' neu aufgenommen. Mit dem 'CIT' Kommando koennen Daten in eine TM-interne Tabelle eingespielt werden, die beim Ausdruck als 'Kanalkennung' fuer ein ausloesenden Kanal, ausgegeben wird. 'lttc' sind wieder Angaben zur Terminaladresse, zzz.. ist der auszugebende Text der bis zu 10 Zeichen umfassen kann. Mit 'CIT?' kann die interne Tabelle abgerufen werden, fuer das Loeschen eines Eintrages muss das Kommmand mit Terminaladresse aber ohne Text dem TM geschickt werden. BOD ************************************************************************************** C:\ALGE\TM\Software\QuellCode\Common\main.c 06.51 21.05.06 > Erste Version des Time Managers. Die Software der ersten Version hat ihren Ursprung beim SWC, dessen Entwick- lungsgeschichte kann in der SWC Dokumentation nach- gelesen werden. BOD **************************************************************************************