CCS Modul   P_STEUER
 
   $Id: p_steuer.C,v 1.14 2005/11/14 12:49:25 krf3rt Exp $
   ---------------------------------------------------------------------
   Kurzbeschreibung: 	Zur Steuerung der PSS/SKM
   ---------------------------------------------------------------------
   Projekt:		CCS
   Sourcefile:		p_steuer.C
   Autor:		RtW/TEF72-Keppler (18.04.96)
   Zielsystem:		HP9000/V743 (HP-RT 2.0x), /Sxxx (HP-UX 9.0x)
   Sprache:		C++
   ---------------------------------------------------------------------
   Prototyp:
   MPI Schnittstelle
   void p_init(shm_stringpointer *zeilen_info
	   ,shm_stringpointer    *zeilen_wert
	   ,long index1
	   ,long anzahl)
   
   ---------------------------------------------------------------------
   Aufruf: im Vectorinterpreter
   
	 (*funktionen[modulnummer])
	    (Ssp_expand_zeile
	     ,Ssp_expand_wert
	     ,p_verwaltung->begin_modulblock
	     ,p_verwaltung->anzahl_modulparameter);

   

      ---------------------------------------------------------------------
   Funktionsbeschreibung:
   Dieses Modul dient zur Steuerung der PSS. Hier wird bei ein oder mehreren
   PSS'n angegeben welche mit welcher Firmware und mit welchem Protokoll
   angesprochen werden soll.
   
   Beschreibung der ModulÏbergabeparameter:
1 PRUEFSCHRITT
   	GAUDI PrÏfschritt
   ------------------------------
2 POSITION
   	PAV- Position
   ------------------------------
3 FIRMWARE
	Software die auf die PSS/SKM geladen werden soll
    		PSS:	Hier wird die Firmware pss.bin in der Fertigung 
			und pssw.bin in der Werkstatt geladen. Abhaengig 
			vom Nummernkreis der Knotennummern.
			Andere Firmware ist nicht erlaubt.
		SKM:	Hier wird die Firmware skm.bin fur f-Listen (Fertigung)
			und skmw.bin fuer e-Listen (Entwicklung) geladen.
		SKMx:
			Fuer e-Listen sind bei der SKM auch andere Firmwaren
			erlaubt. Die Namenskonvention ist <filename>.bin
			
			ACHTUNG: Bei aktiv-setzen dieser Listen wird dann eine
			andere Firmware als SKM abgelehnt.
			Eine neue Firmware wird nur geladen, falls die SKM 
			noch keine im Bauch hat, oder Falls das Datum des zu
			ladenden Files neuer ist als das geladene.
4 ANSTEUER_UNIT
Adresse der PSS/SKM.
    		PSS_01	Wird verwendet im Zusammenhang mit der vxk5010.
		  	Die Defaultadresse ist 4032 (UA =0).
		   :	
    		PSS_04	Wird verwendet im Zusammenhang mit der vxk5010.
			Die Defaultadresse ist 4044 (UA =3).
		SKM_01
		   :
		SKM_04
5 PROTOKOLL
	Kommunikationsprotokoll zum SG (z.B. KP2000)
    		KW2000:	FÏr KW2000	(pss/skm)
		DDS:	FÏr Protokoll das keines ist, ohne BlocklÌnge.
			In Modul p_auftrag muÞ im DATUM als erstes die
			erwartete AntwortlÌnge vom SG eingetragen werden.
			(pss/skm)
		DS2:	FÏr DS2-Protokoll	(pss/skm)
		EASY:	FÏr Easy-Protokoll	(pss/skm)
		K71:	FÏr Key-Word 71		(pss/skm)
		ISO1:	anderer Name fÏr Key-Word 71		(skm)
		ISO5:	PSA-Protokoll		(skm)
		ISO9:	Ford-Protokoll		(skm)
		JECS:	FÏr Jecs-Protokoll
		PROKIST:Einschalten der Prokistfunktionalität  (skm)
		GM:	GM-Protokoll
		BLOCK:	Initialisierbares Block-Protokoll (pss/skm/skmlight)
                        (für pss und skm über K-line, CAN, SPI)
                BLOCK_CAN: Blockportokoll über CAN (nur skmlight)
                BLOCK_SPI: Blockprotokoll über SPI (nur skmlight)
		LIN:	Für LIN-Bus
		VOLVO_CAN: FÏr Volvo CAN Download (Flashprogrammierung)
                TP20: 	CAN-Protokoll für VW   	(skm)
                TP16:	CAN-Protokoll für VW    (skm)
                MELEXIS:Protokoll für body electronic (nur skm_light) (Inbetriebnahme steht noch aus)
6 STELLE_BLOCKT
	Stelle an welcher der Antwortblocktitel vom SG steht.
    			Bei PSS: Zaehlweise ab (6F = Blockanfang) = 1
			Bei SKM: Zaehlweise ab Blocktitel = 0
				 Hier werden nur die Nutzdaten von der SKM an
				 den Host zurueckgeliefert.
7 FEHLERBLOCKT
	Fehlerblocktitel vom SG
    			Hier koennen bis zu 7 Blocktitel eingetragen werden.
			Falls einer der hier eingetragenen Blocktitel an der 
			Stelle STELLE_BLOCKT auftaucht wird eine Fehlermeldung
			generiert.
    
    <8 OFFSET		Offset fuer den Antwortstring vom SG. Hier kann 
    			eingestellt werden, dass ZEIGER_ANF des Moduls 
			P_Zerlege_String (Makro BLOCKINT) auf ein gewuenschtes Datum zeigt.			
			
    		DEFAULT = 0
			Da bei Defaulteinstellung von der SKM nur Blocktitel vom SG
			und Nutzdaten zurueckkommen, zeigt jetzt im Modul 
			p_zerlege_str oder im Makro BLOCKINT der ZEIGER_ANF=1 auf das 
			erste Nutzdatum.
			Bei ZEIGER_ANF=0 ist das 1. Byte der Blocktitel vom SG.
			
			Soll bei ZEIGER_ANF=1 der Blocktitel ausgewertet werden,
			so muÞ der OFFSET auf 1 gesetzt werden.
9 OFFSET_CAN
Offset fuer den Antwortstring vom SG ueber das Modul/Makro CANBLOCK. 
			Hier kann eingestellt werden, dass ZEIGER_ANF des Moduls 
			P_Zerlege_String (Makro BLOCKINT) auf ein gewuenschtes Datum zeigt.			
			
    		DEFAULT = 0
			Bei dieser Einstellung zeigt der ZEIGER_ANF = 1 von BLOCKINT 
			auf das erste Nutzdatum, das ueber CANBLOCK empfangen wurde. 
		"-" oder "--":
			Keine Aenderung vorhergehender Werte. Sollte kein Eintrag in der 
			Pruefliste vorhanden sein, wird der Wert beim ersten mal auf 0 gesetzt.
			
		ACHTUNG: 
			Dieser Parameter wurde nachtraeglich eingebaut. (03.08.2001)
			Grund hierfuer war, dass der OFFSET auch auf CANBLOCK wirkte. 
			Dies ist ab jetzt nicht mehr der Fall. Damit alte Prueflisten 
			einfach umgestellt werden koennen, wurde dieser Parameter eingebaut.