Test

Dependencies:   mbed-dev-OS5_10_4

Committer:
kevman
Date:
Fri Aug 07 07:24:21 2020 +0000
Revision:
0:014fad4dfb9d
Test

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kevman 0:014fad4dfb9d 1 /*
kevman 0:014fad4dfb9d 2 -------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 3 Programm Name: OpenDevId.CPP
kevman 0:014fad4dfb9d 4 Version: 1.0
kevman 0:014fad4dfb9d 5 Sprache: C
kevman 0:014fad4dfb9d 6 Compiler: MBED
kevman 0:014fad4dfb9d 7 Autor: PS
kevman 0:014fad4dfb9d 8 Copyright: PS
kevman 0:014fad4dfb9d 9
kevman 0:014fad4dfb9d 10
kevman 0:014fad4dfb9d 11 Funktion: Liest die ID-Datei und überträft diese an EcmWin. Damit kann
kevman 0:014fad4dfb9d 12 EcmWin den Gerätetyp eintragen. Wenn nicht vorhanden, dann kommt
kevman 0:014fad4dfb9d 13 ein NAK
kevman 0:014fad4dfb9d 14 -------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 15 */
kevman 0:014fad4dfb9d 16 /*
kevman 0:014fad4dfb9d 17 -------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 18
kevman 0:014fad4dfb9d 19 -------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 20 */
kevman 0:014fad4dfb9d 21 /*-------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 22 -------------------------------------------------------------------------------*/
kevman 0:014fad4dfb9d 23 #include "Headers.h"
kevman 0:014fad4dfb9d 24
kevman 0:014fad4dfb9d 25 const char *DevIdKey[] = {"DEV_INDEX", "POT_REV", "POT_VAR", "SCAN_VAR", "POT_CHN", "CURR_CHN", "AMP_CHN", "AMP_ACTIVE", "SW_IZ", "SW_PG", \
kevman 0:014fad4dfb9d 26 "POT_INVERTED", "O_POT_INV", "O_GAL_INV", "GAL_VAR_VAL", "U_N_CHN", "I_N_CHN", "I_N_ACTIVE", "LPC_CAL_C0", "LPC_CAL_C1", "LPC_CAL_C2",\
kevman 0:014fad4dfb9d 27 "LPC_CAL_C3", "LPC_CAL_C4", "LPC_CAL_C5", "LPC_CAL_C6", "LPC_CAL_C7", "INST_BOARD", "S_RATE_ID", "AV_VALUE" };
kevman 0:014fad4dfb9d 28
kevman 0:014fad4dfb9d 29
kevman 0:014fad4dfb9d 30 DEV_INI DevIni;
kevman 0:014fad4dfb9d 31
kevman 0:014fad4dfb9d 32 int (*DevKeyPtr[])(char *) = {DecDevIndex, DecPotRev, DecPotVar, DecScanVar,DecPotChn, DecCurrChn, DecAmpChn, DecAmpActive, DecSwIz, DecSwPg, \
kevman 0:014fad4dfb9d 33 DecPotInverted, DecOPotInv, DecOGalInv,DecGalVarVal, DecUnChn, DecInChn, DecInActive, DecLpcCalC0, DecLpcCalC1, \
kevman 0:014fad4dfb9d 34 DecLpcCalC2, DecLpcCalC3, DecLpcCalC4,DecLpcCalC5, DecLpcCalC6, DecLpcCalC7, DecInstBoard, DecSRateId, DecAvValue };
kevman 0:014fad4dfb9d 35
kevman 0:014fad4dfb9d 36
kevman 0:014fad4dfb9d 37
kevman 0:014fad4dfb9d 38 /*-------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 39 SetIniKey: Beschreiben der Felder mit den INiKeys
kevman 0:014fad4dfb9d 40 -------------------------------------------------------------------------------*/
kevman 0:014fad4dfb9d 41 void SetDevIdKey()
kevman 0:014fad4dfb9d 42 {
kevman 0:014fad4dfb9d 43 int i;
kevman 0:014fad4dfb9d 44
kevman 0:014fad4dfb9d 45 i = 0;
kevman 0:014fad4dfb9d 46
kevman 0:014fad4dfb9d 47 }
kevman 0:014fad4dfb9d 48
kevman 0:014fad4dfb9d 49 /*-------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 50 Datei öffnen
kevman 0:014fad4dfb9d 51 -------------------------------------------------------------------------------*/
kevman 0:014fad4dfb9d 52 int OpenDevIni()
kevman 0:014fad4dfb9d 53 {
kevman 0:014fad4dfb9d 54 int i,j, Ret;
kevman 0:014fad4dfb9d 55 char strKeyCode[64];
kevman 0:014fad4dfb9d 56 char strValue[64];
kevman 0:014fad4dfb9d 57
kevman 0:014fad4dfb9d 58 InitDevIni();
kevman 0:014fad4dfb9d 59
kevman 0:014fad4dfb9d 60 // return;
kevman 0:014fad4dfb9d 61
kevman 0:014fad4dfb9d 62 if(g_SdInitSuccess == false) // wenn SD Karte nicht vorhanden, retour
kevman 0:014fad4dfb9d 63 {
kevman 0:014fad4dfb9d 64 sprintf(HostIf.strErrorBuf,"%c#ER#SD-Card is not acessable. %c\r\n", STX, ETX); //
kevman 0:014fad4dfb9d 65 HostIf.fSendError = true;
kevman 0:014fad4dfb9d 66 if(g_fOnDuringInit)
kevman 0:014fad4dfb9d 67 printf("%s",HostIf.strErrorBuf);
kevman 0:014fad4dfb9d 68
kevman 0:014fad4dfb9d 69 return(false);
kevman 0:014fad4dfb9d 70 }
kevman 0:014fad4dfb9d 71
kevman 0:014fad4dfb9d 72 Ret = clSdCard.OpenFile(FileNames.DevIdFileName, FileNames.FileReadMode);
kevman 0:014fad4dfb9d 73
kevman 0:014fad4dfb9d 74 if(Ret == false)
kevman 0:014fad4dfb9d 75 {
kevman 0:014fad4dfb9d 76 WriteDevFile(); // Defaultdatei erzeugen
kevman 0:014fad4dfb9d 77 sprintf(HostIf.strErrorBuf,"%c#ER#Error on open IniFile. Default created. %c\r\n", STX, ETX); //
kevman 0:014fad4dfb9d 78 HostIf.fSendError = true;
kevman 0:014fad4dfb9d 79 if(g_fOnDuringInit)
kevman 0:014fad4dfb9d 80 printf("%s",HostIf.strErrorBuf);
kevman 0:014fad4dfb9d 81 return(false); // öffnen der Inidatei hat nicht geklappt
kevman 0:014fad4dfb9d 82 }
kevman 0:014fad4dfb9d 83
kevman 0:014fad4dfb9d 84 do
kevman 0:014fad4dfb9d 85 {
kevman 0:014fad4dfb9d 86 Ret = clSdCard.ReadLine(strFileRwBuf, FILE_RW_BUF_LEN);
kevman 0:014fad4dfb9d 87 if(Ret > 0) // es sind Zeichen im Puffer
kevman 0:014fad4dfb9d 88 {
kevman 0:014fad4dfb9d 89 for(i=0;i<Ret;i++)
kevman 0:014fad4dfb9d 90 {
kevman 0:014fad4dfb9d 91 if( (strFileRwBuf[i] == 0x0A) || (strFileRwBuf[i] == 0x0D))
kevman 0:014fad4dfb9d 92 {
kevman 0:014fad4dfb9d 93 strFileRwBuf[i] = 0x00;
kevman 0:014fad4dfb9d 94 i = Ret;
kevman 0:014fad4dfb9d 95 }
kevman 0:014fad4dfb9d 96 else if(strFileRwBuf[i] == 0x2C) // Komma
kevman 0:014fad4dfb9d 97 strFileRwBuf[i] = 0x2E; // in Punkt
kevman 0:014fad4dfb9d 98 }
kevman 0:014fad4dfb9d 99 i = 0;
kevman 0:014fad4dfb9d 100 while( (i < 64) && (strFileRwBuf[i] != '=') )
kevman 0:014fad4dfb9d 101 {
kevman 0:014fad4dfb9d 102 strKeyCode[i] = strFileRwBuf[i];
kevman 0:014fad4dfb9d 103 i++;
kevman 0:014fad4dfb9d 104 }
kevman 0:014fad4dfb9d 105 strKeyCode[i] = 0x00;
kevman 0:014fad4dfb9d 106 i++;
kevman 0:014fad4dfb9d 107 while( (strFileRwBuf[i] == ' ') && (i < 100) )
kevman 0:014fad4dfb9d 108 i++;
kevman 0:014fad4dfb9d 109 strcpy(strValue,&strFileRwBuf[i]);
kevman 0:014fad4dfb9d 110
kevman 0:014fad4dfb9d 111 //printf("KeyCode: %s Value: %s\n", strKeyCode, strValue);
kevman 0:014fad4dfb9d 112 for(j = 0;j< ANZ_DEV_KEY;j++)
kevman 0:014fad4dfb9d 113 {
kevman 0:014fad4dfb9d 114 if(strcmp(strKeyCode, DevIdKey[j]) == 0) // die Strings stimmen überein
kevman 0:014fad4dfb9d 115 {
kevman 0:014fad4dfb9d 116 (*DevKeyPtr[j])((char *)(strValue));
kevman 0:014fad4dfb9d 117 j = ANZ_DEV_KEY;
kevman 0:014fad4dfb9d 118 }
kevman 0:014fad4dfb9d 119 }
kevman 0:014fad4dfb9d 120 }
kevman 0:014fad4dfb9d 121 }
kevman 0:014fad4dfb9d 122 while(Ret > 0);
kevman 0:014fad4dfb9d 123 clSdCard.CloseFile();
kevman 0:014fad4dfb9d 124 EcmIni.fCfgExists = true;
kevman 0:014fad4dfb9d 125 // EcmIni.fCalRange = true;
kevman 0:014fad4dfb9d 126
kevman 0:014fad4dfb9d 127 return(true);
kevman 0:014fad4dfb9d 128 }
kevman 0:014fad4dfb9d 129
kevman 0:014fad4dfb9d 130 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 131 // DecDevIndex: Decodieren
kevman 0:014fad4dfb9d 132 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 133 int DecDevIndex(char *Line)
kevman 0:014fad4dfb9d 134 { DevIni.nDevIndex = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 135 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 136 // DecPotRev: Decodieren
kevman 0:014fad4dfb9d 137 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 138 int DecPotRev(char *Line)
kevman 0:014fad4dfb9d 139 { DevIni.nPotRev = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 140 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 141 // DecPotVar: Decodieren
kevman 0:014fad4dfb9d 142 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 143 int DecPotVar(char *Line)
kevman 0:014fad4dfb9d 144 { DevIni.dbPotVar = atof(Line); return(true); }
kevman 0:014fad4dfb9d 145 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 146 // DecScanVar: Decodieren
kevman 0:014fad4dfb9d 147 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 148 int DecScanVar(char *Line)
kevman 0:014fad4dfb9d 149 { DevIni.dbScanVar = atof(Line); return(true); }
kevman 0:014fad4dfb9d 150 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 151 // DecPotChn: Decodieren
kevman 0:014fad4dfb9d 152 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 153 int DecPotChn(char *Line)
kevman 0:014fad4dfb9d 154 { DevIni.nPotChn = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 155 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 156 // DecCurrChn: Decodieren
kevman 0:014fad4dfb9d 157 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 158 int DecCurrChn(char *Line)
kevman 0:014fad4dfb9d 159 { DevIni.nCurrChn = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 160 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 161 // DecAmpChn: Decodieren
kevman 0:014fad4dfb9d 162 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 163 int DecAmpChn(char *Line)
kevman 0:014fad4dfb9d 164 { DevIni.nAmpChn = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 165 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 166 // DecAmpActive: Decodieren
kevman 0:014fad4dfb9d 167 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 168 int DecAmpActive(char *Line)
kevman 0:014fad4dfb9d 169 { DevIni.nAmpActive = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 170 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 171 // DecSwIz: Decodieren
kevman 0:014fad4dfb9d 172 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 173 int DecSwIz(char *Line)
kevman 0:014fad4dfb9d 174 { DevIni.nSwIz = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 175 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 176 // DecSwPg: Decodieren
kevman 0:014fad4dfb9d 177 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 178 int DecSwPg(char *Line)
kevman 0:014fad4dfb9d 179 { DevIni.nSwPotGal = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 180
kevman 0:014fad4dfb9d 181 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 182 // DecPotInverted: Decodieren
kevman 0:014fad4dfb9d 183 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 184 int DecPotInverted(char *Line)
kevman 0:014fad4dfb9d 185 { DevIni.nPotInverted = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 186
kevman 0:014fad4dfb9d 187 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 188 // DecOPotInv: Decodieren
kevman 0:014fad4dfb9d 189 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 190 int DecOPotInv(char *Line)
kevman 0:014fad4dfb9d 191 { DevIni.nOPotInv = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 192
kevman 0:014fad4dfb9d 193 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 194 // DecOGalInv: Decodieren
kevman 0:014fad4dfb9d 195 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 196 int DecOGalInv(char *Line)
kevman 0:014fad4dfb9d 197 { DevIni.nOGalInv = atof(Line); return(true); }
kevman 0:014fad4dfb9d 198
kevman 0:014fad4dfb9d 199 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 200 // DecGalVarVal: Decodieren
kevman 0:014fad4dfb9d 201 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 202 int DecGalVarVal(char *Line)
kevman 0:014fad4dfb9d 203 { DevIni.dbGalVar = atof(Line); return(true); }
kevman 0:014fad4dfb9d 204
kevman 0:014fad4dfb9d 205 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 206 // DecUnChn: Decodieren
kevman 0:014fad4dfb9d 207 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 208 int DecUnChn(char *Line)
kevman 0:014fad4dfb9d 209 { DevIni.nUnChn = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 210
kevman 0:014fad4dfb9d 211 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 212 // DecInChn: Decodieren
kevman 0:014fad4dfb9d 213 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 214 int DecInChn(char *Line)
kevman 0:014fad4dfb9d 215 { DevIni.nInChn = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 216
kevman 0:014fad4dfb9d 217 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 218 // DecInActive: Decodieren
kevman 0:014fad4dfb9d 219 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 220 int DecInActive(char *Line)
kevman 0:014fad4dfb9d 221 { DevIni.nNoiseActive = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 222
kevman 0:014fad4dfb9d 223 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 224 // DecLpcCalC0: Decodieren
kevman 0:014fad4dfb9d 225 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 226 int DecLpcCalC0(char *Line)
kevman 0:014fad4dfb9d 227 { DevIni.dbLpcCal0 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 228
kevman 0:014fad4dfb9d 229 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 230 // DecLpcCalC1: Decodieren
kevman 0:014fad4dfb9d 231 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 232 int DecLpcCalC1(char *Line)
kevman 0:014fad4dfb9d 233 { DevIni.dbLpcCal1 = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 234
kevman 0:014fad4dfb9d 235 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 236 // DecLpcCalC2: Decodieren
kevman 0:014fad4dfb9d 237 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 238 int DecLpcCalC2(char *Line)
kevman 0:014fad4dfb9d 239 { DevIni.dbLpcCal2 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 240
kevman 0:014fad4dfb9d 241 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 242 // DecLpcCalC3: Decodieren
kevman 0:014fad4dfb9d 243 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 244 int DecLpcCalC3(char *Line)
kevman 0:014fad4dfb9d 245 { DevIni.dbLpcCal3 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 246
kevman 0:014fad4dfb9d 247 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 248 // DecLpcCalC4: Decodieren
kevman 0:014fad4dfb9d 249 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 250 int DecLpcCalC4(char *Line)
kevman 0:014fad4dfb9d 251 { DevIni.dbLpcCal4 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 252
kevman 0:014fad4dfb9d 253 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 254 // DecLpcCalC5: Decodieren
kevman 0:014fad4dfb9d 255 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 256 int DecLpcCalC5(char *Line)
kevman 0:014fad4dfb9d 257 { DevIni.dbLpcCal5 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 258
kevman 0:014fad4dfb9d 259 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 260 // DecLpcCalC6: Decodieren
kevman 0:014fad4dfb9d 261 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 262 int DecLpcCalC6(char *Line)
kevman 0:014fad4dfb9d 263 { DevIni.dbLpcCal6 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 264
kevman 0:014fad4dfb9d 265 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 266 // DecLpcCalC7: Decodieren
kevman 0:014fad4dfb9d 267 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 268 int DecLpcCalC7(char *Line)
kevman 0:014fad4dfb9d 269 { DevIni.dbLpcCal7 = atof(Line); return(true); }
kevman 0:014fad4dfb9d 270
kevman 0:014fad4dfb9d 271 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 272 // DecInstBoard: Decodieren
kevman 0:014fad4dfb9d 273 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 274 int DecInstBoard(char *Line)
kevman 0:014fad4dfb9d 275 { DevIni.nInstBoard = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 276
kevman 0:014fad4dfb9d 277 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 278 // DecSRateId: Decodieren
kevman 0:014fad4dfb9d 279 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 280 int DecSRateId(char *Line)
kevman 0:014fad4dfb9d 281 { DevIni.nSRateIndex = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 282
kevman 0:014fad4dfb9d 283 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 284 // DecAvValue: Decodieren
kevman 0:014fad4dfb9d 285 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 286 int DecAvValue(char *Line)
kevman 0:014fad4dfb9d 287 { DevIni.nAvValue = atoi(Line); return(true); }
kevman 0:014fad4dfb9d 288
kevman 0:014fad4dfb9d 289 /*-------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 290 Struktur Initialisieren
kevman 0:014fad4dfb9d 291 -------------------------------------------------------------------------------*/
kevman 0:014fad4dfb9d 292 void InitDevIni()
kevman 0:014fad4dfb9d 293 {
kevman 0:014fad4dfb9d 294
kevman 0:014fad4dfb9d 295 DevIni.nDevIndex = 50; // Geräteindex
kevman 0:014fad4dfb9d 296 DevIni.nPotRev = 1; // Hardware Rev
kevman 0:014fad4dfb9d 297 DevIni.dbPotVar = 1.0; // Variabler Faktor für das Anzeigepotential
kevman 0:014fad4dfb9d 298 DevIni.dbScanVar = 1.0; // Variabler Faktor für das Scannerpotential
kevman 0:014fad4dfb9d 299 DevIni.nPotChn = 0; // Messkanal Potential
kevman 0:014fad4dfb9d 300 DevIni.nCurrChn = 1; // Messkanal Strom
kevman 0:014fad4dfb9d 301 DevIni.nAmpChn = 3; // Messkanal Verstärker
kevman 0:014fad4dfb9d 302 DevIni.nAmpActive = 0; // Stromverstärker aktiv
kevman 0:014fad4dfb9d 303 DevIni.nSwIz = 4; // Schalter OCP/Izelle
kevman 0:014fad4dfb9d 304 DevIni.nSwPotGal = 5; // Schalter Pot/Gal
kevman 0:014fad4dfb9d 305 DevIni.nPotInverted = 1; // Potentialanzeige invertiert
kevman 0:014fad4dfb9d 306 DevIni.nOPotInv = 1; // Scanner Potential invertiert
kevman 0:014fad4dfb9d 307 DevIni.nOGalInv = 1; // Scanner Galvanostat invertiert
kevman 0:014fad4dfb9d 308 DevIni.dbGalVar = 1.0; // Variabler Faktor für Galvanostat
kevman 0:014fad4dfb9d 309 DevIni.nUnChn = 4; // Messkanal UNoise
kevman 0:014fad4dfb9d 310 DevIni.nInChn = 5; // Messkanal INoise
kevman 0:014fad4dfb9d 311 DevIni.nNoiseActive = 0; // Noisemessung aktiv
kevman 0:014fad4dfb9d 312 DevIni.dbLpcCal0 = 1.0; // 1. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 313 DevIni.dbLpcCal1 = 1.0; // 2. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 314 DevIni.dbLpcCal2 = 1.0; // 3. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 315 DevIni.dbLpcCal3 = 1.0; // 4. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 316 DevIni.dbLpcCal4 = 1.0; // 5. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 317 DevIni.dbLpcCal5 = 1.0; // 6. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 318 DevIni.dbLpcCal6 = 1.0; // 7. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 319 DevIni.dbLpcCal7 = 1.0; // 8. Faktor für LpcKalibrierung
kevman 0:014fad4dfb9d 320 DevIni.nInstBoard = 4; // Installierte Messkarte
kevman 0:014fad4dfb9d 321 DevIni.nSRateIndex = 3; // Index Samplerate
kevman 0:014fad4dfb9d 322 DevIni.nAvValue = 5; // Average Value
kevman 0:014fad4dfb9d 323
kevman 0:014fad4dfb9d 324 }
kevman 0:014fad4dfb9d 325
kevman 0:014fad4dfb9d 326 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 327 // #DI# DevID-Request, Host fragt die Geräteeinstellungen ab
kevman 0:014fad4dfb9d 328 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 329 int SendDevFile(char *Line)
kevman 0:014fad4dfb9d 330 {
kevman 0:014fad4dfb9d 331
kevman 0:014fad4dfb9d 332 OpenDevIni();
kevman 0:014fad4dfb9d 333
kevman 0:014fad4dfb9d 334
kevman 0:014fad4dfb9d 335 sprintf(HostIf.strTempBuf, "%c#DI#%s=%d#",STX, DevIdKey[0],DevIni.nDevIndex);
kevman 0:014fad4dfb9d 336 sprintf(STemp, "%s=%d#", DevIdKey[1],DevIni.nPotRev);
kevman 0:014fad4dfb9d 337 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 338
kevman 0:014fad4dfb9d 339 sprintf(STemp, "%s=%f#", DevIdKey[2],DevIni.dbPotVar);
kevman 0:014fad4dfb9d 340 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 341 sprintf(STemp, "%s=%f#", DevIdKey[3],DevIni.dbScanVar);
kevman 0:014fad4dfb9d 342 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 343
kevman 0:014fad4dfb9d 344 sprintf(STemp, "%s=%d#", DevIdKey[4],DevIni.nPotChn);
kevman 0:014fad4dfb9d 345 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 346 sprintf(STemp, "%s=%d#", DevIdKey[5],DevIni.nCurrChn);
kevman 0:014fad4dfb9d 347 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 348 sprintf(STemp, "%s=%d#", DevIdKey[6],DevIni.nAmpChn);
kevman 0:014fad4dfb9d 349 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 350 sprintf(STemp, "%s=%d#", DevIdKey[7],DevIni.nAmpActive);
kevman 0:014fad4dfb9d 351 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 352 sprintf(STemp, "%s=%d#", DevIdKey[8],DevIni.nSwIz);
kevman 0:014fad4dfb9d 353 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 354 sprintf(STemp, "%s=%d#", DevIdKey[9],DevIni.nSwPotGal);
kevman 0:014fad4dfb9d 355 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 356 sprintf(STemp, "%s=%d#", DevIdKey[10],DevIni.nPotInverted);
kevman 0:014fad4dfb9d 357 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 358 sprintf(STemp, "%s=%d#", DevIdKey[11],DevIni.nOPotInv);
kevman 0:014fad4dfb9d 359 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 360 sprintf(STemp, "%s=%d#", DevIdKey[12],DevIni.nOGalInv);
kevman 0:014fad4dfb9d 361 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 362 sprintf(STemp, "%s=%f#", DevIdKey[13],DevIni.dbGalVar);
kevman 0:014fad4dfb9d 363 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 364 sprintf(STemp, "%s=%d#", DevIdKey[14],DevIni.nUnChn);
kevman 0:014fad4dfb9d 365 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 366 sprintf(STemp, "%s=%d#", DevIdKey[15],DevIni.nInChn);
kevman 0:014fad4dfb9d 367 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 368 sprintf(STemp, "%s=%d#", DevIdKey[16],DevIni.nNoiseActive);
kevman 0:014fad4dfb9d 369 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 370
kevman 0:014fad4dfb9d 371 sprintf(STemp, "%s=%f#", DevIdKey[17],DevIni.dbLpcCal0);
kevman 0:014fad4dfb9d 372 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 373 sprintf(STemp, "%s=%f#", DevIdKey[18],DevIni.dbLpcCal1);
kevman 0:014fad4dfb9d 374 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 375 sprintf(STemp, "%s=%f#", DevIdKey[19],DevIni.dbLpcCal2);
kevman 0:014fad4dfb9d 376 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 377 sprintf(STemp, "%s=%f#", DevIdKey[20],DevIni.dbLpcCal3);
kevman 0:014fad4dfb9d 378 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 379 sprintf(STemp, "%s=%f#", DevIdKey[21],DevIni.dbLpcCal4);
kevman 0:014fad4dfb9d 380 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 381 sprintf(STemp, "%s=%f#", DevIdKey[22],DevIni.dbLpcCal5);
kevman 0:014fad4dfb9d 382 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 383 sprintf(STemp, "%s=%f#", DevIdKey[23],DevIni.dbLpcCal6);
kevman 0:014fad4dfb9d 384 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 385 sprintf(STemp, "%s=%f#", DevIdKey[24],DevIni.dbLpcCal7);
kevman 0:014fad4dfb9d 386 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 387
kevman 0:014fad4dfb9d 388 sprintf(STemp, "%s=%d#", DevIdKey[25],DevIni.nInstBoard);
kevman 0:014fad4dfb9d 389 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 390 sprintf(STemp, "%s=%d#", DevIdKey[26],DevIni.nSRateIndex);
kevman 0:014fad4dfb9d 391 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 392 sprintf(STemp, "%s=%d#%c\r\n", DevIdKey[27],DevIni.nAvValue, ETX);
kevman 0:014fad4dfb9d 393 strcat(HostIf.strTempBuf, STemp);
kevman 0:014fad4dfb9d 394
kevman 0:014fad4dfb9d 395 SendIdTel();
kevman 0:014fad4dfb9d 396
kevman 0:014fad4dfb9d 397 return(true);
kevman 0:014fad4dfb9d 398 }
kevman 0:014fad4dfb9d 399
kevman 0:014fad4dfb9d 400 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 401 // #GD# DevID-Request, Host sendet die Geräteeinstellungen
kevman 0:014fad4dfb9d 402 //--------------------------------------------------------------------------
kevman 0:014fad4dfb9d 403 int GetDevFile(char *Line)
kevman 0:014fad4dfb9d 404 {
kevman 0:014fad4dfb9d 405
kevman 0:014fad4dfb9d 406 clSdCard.WriteFile(FileNames.DevIdFileName, Line);
kevman 0:014fad4dfb9d 407 OpenDevIni();
kevman 0:014fad4dfb9d 408 return(true);
kevman 0:014fad4dfb9d 409
kevman 0:014fad4dfb9d 410 }
kevman 0:014fad4dfb9d 411 /*-------------------------------------------------------------------------------
kevman 0:014fad4dfb9d 412 Parameter Schreiben
kevman 0:014fad4dfb9d 413 -------------------------------------------------------------------------------*/
kevman 0:014fad4dfb9d 414 int WriteDevFile()
kevman 0:014fad4dfb9d 415 {
kevman 0:014fad4dfb9d 416 int Ret,i;
kevman 0:014fad4dfb9d 417
kevman 0:014fad4dfb9d 418 if(g_SdInitSuccess == false) // wenn SD Karte nicht vorhanden, retour
kevman 0:014fad4dfb9d 419 {
kevman 0:014fad4dfb9d 420 return(false);
kevman 0:014fad4dfb9d 421 }
kevman 0:014fad4dfb9d 422
kevman 0:014fad4dfb9d 423 Ret = clSdCard.OpenFile(FileNames.DevIdFileName, FileNames.FileWriteMode);
kevman 0:014fad4dfb9d 424
kevman 0:014fad4dfb9d 425 if(Ret == false)
kevman 0:014fad4dfb9d 426 return(false); // öffnen der Datei hat nicht geklappt
kevman 0:014fad4dfb9d 427
kevman 0:014fad4dfb9d 428
kevman 0:014fad4dfb9d 429 i = 0;
kevman 0:014fad4dfb9d 430 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nDevIndex);
kevman 0:014fad4dfb9d 431 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 432 i++;
kevman 0:014fad4dfb9d 433 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nPotRev);
kevman 0:014fad4dfb9d 434 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 435 i++;
kevman 0:014fad4dfb9d 436 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbPotVar);
kevman 0:014fad4dfb9d 437 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 438 i++;
kevman 0:014fad4dfb9d 439 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbScanVar);
kevman 0:014fad4dfb9d 440 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 441 i++;
kevman 0:014fad4dfb9d 442 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nPotChn);
kevman 0:014fad4dfb9d 443 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 444 i++;
kevman 0:014fad4dfb9d 445 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nCurrChn);
kevman 0:014fad4dfb9d 446 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 447 i++;
kevman 0:014fad4dfb9d 448 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nAmpChn);
kevman 0:014fad4dfb9d 449 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 450 i++;
kevman 0:014fad4dfb9d 451 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nAmpActive);
kevman 0:014fad4dfb9d 452 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 453 i++;
kevman 0:014fad4dfb9d 454 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nSwIz);
kevman 0:014fad4dfb9d 455 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 456 i++;
kevman 0:014fad4dfb9d 457 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nSwPotGal);
kevman 0:014fad4dfb9d 458 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 459 i++;
kevman 0:014fad4dfb9d 460 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nPotInverted);
kevman 0:014fad4dfb9d 461 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 462 i++;
kevman 0:014fad4dfb9d 463 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nOPotInv);
kevman 0:014fad4dfb9d 464 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 465 i++;
kevman 0:014fad4dfb9d 466 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nOGalInv);
kevman 0:014fad4dfb9d 467 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 468 i++;
kevman 0:014fad4dfb9d 469 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbGalVar);
kevman 0:014fad4dfb9d 470 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 471 i++;
kevman 0:014fad4dfb9d 472 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nUnChn);
kevman 0:014fad4dfb9d 473 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 474 i++;
kevman 0:014fad4dfb9d 475 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nInChn);
kevman 0:014fad4dfb9d 476 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 477 i++;
kevman 0:014fad4dfb9d 478 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nNoiseActive);
kevman 0:014fad4dfb9d 479 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 480 i++;
kevman 0:014fad4dfb9d 481 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal0);
kevman 0:014fad4dfb9d 482 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 483 i++;
kevman 0:014fad4dfb9d 484 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal1);
kevman 0:014fad4dfb9d 485 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 486 i++;
kevman 0:014fad4dfb9d 487 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal2);
kevman 0:014fad4dfb9d 488 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 489 i++;
kevman 0:014fad4dfb9d 490 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal3);
kevman 0:014fad4dfb9d 491 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 492 i++;
kevman 0:014fad4dfb9d 493 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal4);
kevman 0:014fad4dfb9d 494 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 495 i++;
kevman 0:014fad4dfb9d 496 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal5);
kevman 0:014fad4dfb9d 497 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 498 i++;
kevman 0:014fad4dfb9d 499 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal6);
kevman 0:014fad4dfb9d 500 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 501 i++;
kevman 0:014fad4dfb9d 502 sprintf(clSdCard.cSdLine, "%s=%f\r\n",DevIdKey[i],DevIni.dbLpcCal7);
kevman 0:014fad4dfb9d 503 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 504 i++;
kevman 0:014fad4dfb9d 505 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nInstBoard);
kevman 0:014fad4dfb9d 506 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 507 i++;
kevman 0:014fad4dfb9d 508 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nSRateIndex);
kevman 0:014fad4dfb9d 509 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 510 i++;
kevman 0:014fad4dfb9d 511 sprintf(clSdCard.cSdLine, "%s=%d\r\n",DevIdKey[i],DevIni.nAvValue);
kevman 0:014fad4dfb9d 512 clSdCard.WriteLine();
kevman 0:014fad4dfb9d 513 i++;
kevman 0:014fad4dfb9d 514
kevman 0:014fad4dfb9d 515 clSdCard.CloseFile();
kevman 0:014fad4dfb9d 516 return(true);
kevman 0:014fad4dfb9d 517 }
kevman 0:014fad4dfb9d 518
kevman 0:014fad4dfb9d 519