Files
CPXV2/CPXV2 PTS/References/GaudiCfg/help/module/f_rdek_zusatz.html
2025-03-20 08:38:05 +09:00

205 lines
11 KiB
HTML

<HTML>
<HEAD>
<TITLE>F_RDEK_ZUSATZ</TITLE>
<META NAME="Generator" CONTENT="KDOC ">
</HEAD>
<BODY bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#000099" alink= "#ffffff">
<table BORDER=0 COLS=1 WIDTH="100%" BGCOLOR="#FFFFCC" NOSAVE >
<tr ALIGN=CENTER VALIGN=CENTER NOSAVE>
<td NOSAVE><font face="Arial,Helvetica"><font size=+2></font></font>
<br><font face="Arial,Helvetica"><font size=+2>CCS Modul &nbsp;&nbsp;<b>F_RDEK_ZUSATZ</b></font></font>
<br>&nbsp;</td>
</tr>
</table>
<PRE>
Funktionsbeschreibung:
- Beschreibung der Moduluebergabeparameter anhand der Modglobal.stl :
MD,f_rdek_zusatz
,PRUEFSCHRITT 1
,POSITION 2
,ANST_UNIT 3
,FUNK_UMPROG 4
,MESSKANAL_HIGH 5
,MESSKANAL_LOW 6
,SENSE_HIGH 7
,SENSE_LOW 8</pre><b><a name="param1">1</a> PRUEFSCHRITT:</b><pre>
Prueflisten Schrittnummer</pre><b><a name="param2">2</a> POSITION:</b><pre>
PAV Position fuer diesen Pruefschritt</pre><b><a name="param3">3</a> ANST_UNIT:</b><pre>
Symbolischer Name aus dem HW-Beschreibungsfile
fuer R-Dekade</pre><b><a name="param4">4</a> FUNK_UMPROG:</b><pre>
Auswahl des Schaltverhalten beim Umprogrammieren der R-Dekade.
Parameter: "HIGH" -&gt; Widerstand wird beim Umprogrammieren hochohmiger.
"-" -&gt; " " " " "
"LOW" -&gt; " " " " niederohmiger.
Die Default-Einstellung ist "-"</pre><b><a name="param5">5</a> MESSKANAL_HIGH:</b><pre>
Angabe des Messkanal zum Ruecklesen des eingestellten Widerstand.
Eingabe: SG-PIN z.B. 55 oder PIN-Nummer der 6070 z.B. &gt;a31
"-" fuer don't care</pre><b><a name="param6">6</a> MESSKANAL_LOW:</b><pre>
Angabe des Messkanal zum Ruecklesen des eingestellten Widerstand.
Eingabe: SG-PIN z.B. 73 oder PIN-Nummer der 6070 z.B. &gt;c31
"-" fuer don't care</pre><b><a name="param7">7</a> SENSE_HIGH:</b><pre>
Angabe des Sensekanal zum Ruecklesen des eingestellten Widerstand.
Mit der Angabe des Sensekanal wird eine 4-Draht-Messung realisiert.
Eingabe: SG-PIN z.B. 12 oder PIN-Nummer der 6070 z.B. &gt;a32
"-" fuer don't care</pre><b><a name="param8">8</a> SENSE_LOW:</b><pre>
Angabe des Sensekanal zum Ruecklesen des eingestellten Widerstand.
Mit der Angabe des Sensekanal wird eine 4-Draht-Messung realisiert.
Eingabe: SG-PIN z.B. 24 oder PIN-Nummer der 6070 z.B. &gt;c32
"-" fuer don't care
- SW technische Beschreibung
Aufgabe dieses Modules ist es, die Modulparameter fuer eine 6070 FU-Karte
an den Hardwaretreiberprozess zu geben.
Die Ansteuerwerte werden per F_ANSTEUER Modul an den Hardwaretreiber gegeben.
Die Modulparameter sind in der Regel kein Bestandteil der Std.-PAV und werden
ueber dieses spezielle GAUDI-Modul eingestellt.
-----------------------------------------------------------
Input:
shm_stringpointer *zeilen_info - dieser Pointer liefert den
Zugriff auf die komplette
Parameterzeile;
shm_stringpointer *zeilen_wert - hierueber erhaelt die Funktion
den Zugriff auf den tatsaechl.
Inhalt, naemlich den Wert,
in der Parameterzeile;
long index_oePrfL - die Positionsangabe der Parameter im
Parameterarray des SHM;
long anzahl - die Anzahl der fuer dieses Modul
relevanten Parameter;
Output:
none
----------------------------------------------------------
Return Value:
= 0: normaler Durchlauf oder der Schrittbetrieb ist
aktiviert und die Pruefschrittnummer ungleich 1;
&gt; 1:
----------------------------------------------------------
Beispiel (optional):
&lt;\userdoc&gt;
----------------------------------------------------------
History:
$Log: f_rdek_zusatz.C,v $
Revision 1.4 2004/12/23 10:33:40 jsj3rt
_VI_5.2.0_R5200000_TT945_JU_GCC3 Portabel
Revision 1.3 2003/04/17 09:36:11 wiese
$Head -&gt; $Id wegen log_message
* Revision 1.2 2002/02/14 08:04:40 PIJ3SA
* userdoc for html-page inserted
*
* Revision 1.1 2001/12/18 10:17:07 sgc3sa
* Anpassungen fuer Linux und QT
*
* Revision 1.5 2001/06/12 10:27:02 lehmann
* Put_unitaenderung eingefuegt
*
* Revision 1.4 2000/02/15 11:18:10 KLM3SA
* Sourcen aus testsystem_21 kopiert.
*
Revision 1.0 97/03/19 lea3sa
Erstellt
----------------------------------------------------------
C4
int f_rdek_zusatz ( shm_stringpointer *zeilen_wert
,long index_on_expPrfLst
,long anzahl_parameter )
{
define lokale Variablen
char ident[] = "@(#)f_rdek_zusatz.C lea3sa "; // modul identification
long index_oePL; // Zeiger in die expandierte Pruefliste
long unit_indexPtr; // Index Zeiger auf Unit
// long unitnummer;
STRING wert[ANZAHL_PARAMETER+ 1]; // Werte fuer Modulparameter
long i; // Laufvariable fuer Parameteruebergabe
int schritt; // Step-Betrieb ja/nein
int ret_val = 0; // Returnparameter des Gaudi-Modul
Umladen der Modulparameter aus dem Shared Memorybereich in den lokalen Bereich;
index_oePL = index_on_expPrfLst;
for ( i = 1; i &lt;= (anzahl_parameter + 1); i++ ) {
wert[i] = *zeilen_wert-&gt;ptr[index_oePL];
index_oePL++;
}
Modul-Parameter fuer eine R-Dekade der 6070 werden in den Stringspeicher umgeladen.
// unit_indexPtr = suche_unit_index( wert[ANST_UNIT],unitnummer );
unit_indexPtr = suche_unit_index( wert[ANST_UNIT] );
if ( unit_indexPtr &lt; 0 ) {
ret_val = -1;
}
else {
Ssp_pp_verwaltung-&gt;unit_ablage[unit_indexPtr].put_unit_aenderung(1);
i = get_platzmemory( STRING_VERWALTUNG
,unit_indexPtr
,ANZ_MODPAR );
Ssp_pp_verwaltung-&gt;string_f[i + 0] = wert[FUNK_UMPROG];
Ssp_pp_verwaltung-&gt;string_f[i + 1] = wert[MESSKANAL_HIGH];
Ssp_pp_verwaltung-&gt;string_f[i + 2] = wert[MESSKANAL_LOW];
Ssp_pp_verwaltung-&gt;string_f[i + 3] = wert[SENSE_HIGH];
Ssp_pp_verwaltung-&gt;string_f[i + 4] = wert[SENSE_LOW];
debug_message( __FILE__, __LINE__, DEB_GAUDI
,"\nf_rdek_zusatz Unit-Indexpointer: %d\
\nF-rdek_zusatz anzahl_parameter : %d\
\nf_rdek_zusatz PRUEFSCHRITT : %s\
\nf_rdek_zusatz PRUEFPOSITION : %s\
\nf_rdek_zusatz ANST_UNIT : %s\
\nf_rdek_zusatz FUNK_UMPROG : %s\
\nf_rdek_zusatz MESSKANAL_HIGH : %s\
\nf_rdek_zusatz MESSKANAL_LOW : %s\
\nf_rdek_zusatz SENSE_HIGH : %s\
\nf_rdek_zusatz SENSE_LOW : %s\n"
,unit_indexPtr
,anzahl_parameter
,wert[PRUEFSCHRITT].get_string()
,wert[PRUEFPOSITION].get_string()
,wert[ANST_UNIT].get_string()
,wert[FUNK_UMPROG].get_string()
,wert[MESSKANAL_HIGH].get_string()
,wert[MESSKANAL_LOW].get_string()
,wert[SENSE_HIGH].get_string()
,wert[SENSE_LOW].get_string() );
}
Pruefprogramm Stepbetrieb
schritt = schrittbetrieb( zeilen_wert, index_oePL );
if ( schritt != 1 ) {
return( ret_val );
}
return( ret_val );
}
</PRE>
</BODY>
</HTML>