Rev 1059 | Rev 1065 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1059 | Rev 1063 | ||
---|---|---|---|
Line 313... | Line 313... | ||
313 | // Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen |
313 | // Bei Get werden die vom PC einstellbaren Werte vom PC zurückgelesen |
314 | if(pRxData[0] == 0xFF) |
314 | if(pRxData[0] == 0xFF) |
315 | { |
315 | { |
316 | pRxData[0] = GetActiveParamSetNumber(); |
316 | pRxData[0] = GetActiveParamSetNumber(); |
317 | } |
317 | } |
318 | else // request active parameter set |
318 | // limit settings range |
319 | { |
- | |
320 | if(pRxData[0] < 1) pRxData[0] = 1; // limit to 5 |
319 | if(pRxData[0] < 1) pRxData[0] = 1; // limit to 5 |
321 | else if(pRxData[0] > 5) pRxData[0] = 5; // limit to 5 |
320 | else if(pRxData[0] > 5) pRxData[0] = 5; // limit to 5 |
322 | // load requested parameter set |
321 | // load requested parameter set |
323 | ReadParameterSet(pRxData[0], (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE); |
322 | ReadParameterSet(pRxData[0], (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE); |
324 | } |
323 | |
325 | while(!UebertragungAbgeschlossen); |
324 | while(!UebertragungAbgeschlossen); |
326 | tempchar1 = pRxData[0]; |
325 | tempchar1 = pRxData[0]; |
327 | tempchar2 = EE_DATENREVISION; |
326 | tempchar2 = EE_DATENREVISION; |
328 | SendOutData('Q', FC_ADDRESS, 3, &tempchar1, sizeof(tempchar1), &tempchar2, sizeof(tempchar2), (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE); |
327 | SendOutData('Q', FC_ADDRESS, 3, &tempchar1, sizeof(tempchar1), &tempchar2, sizeof(tempchar2), (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE); |
329 | break; |
328 | break; |
Line 331... | Line 330... | ||
331 | case 's': // Parametersatz speichern |
330 | case 's': // Parametersatz speichern |
332 | if((1 <= pRxData[0]) && (pRxData[0] <= 5) && (pRxData[1] == EE_DATENREVISION)) // check for setting to be in range |
331 | if((1 <= pRxData[0]) && (pRxData[0] <= 5) && (pRxData[1] == EE_DATENREVISION)) // check for setting to be in range |
333 | { |
332 | { |
334 | memcpy((unsigned char *) &EE_Parameter.Kanalbelegung[0], (unsigned char *)&pRxData[2], STRUCT_PARAM_LAENGE); |
333 | memcpy((unsigned char *) &EE_Parameter.Kanalbelegung[0], (unsigned char *)&pRxData[2], STRUCT_PARAM_LAENGE); |
335 | WriteParameterSet(pRxData[0], (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE); |
334 | WriteParameterSet(pRxData[0], (unsigned char *) &EE_Parameter.Kanalbelegung[0], STRUCT_PARAM_LAENGE); |
336 | eeprom_write_byte(&EEPromArray[EEPROM_ADR_ACTIVE_SET], RxdBuffer[2] - 'l' + 1); // aktiven Datensatz merken |
- | |
337 | Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L; |
335 | Umschlag180Nick = (long) EE_Parameter.WinkelUmschlagNick * 2500L; |
338 | Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L; |
336 | Umschlag180Roll = (long) EE_Parameter.WinkelUmschlagRoll * 2500L; |
339 | Piep(GetActiveParamSetNumber()); |
337 | SetActiveParamSetNumber(pRxData[0]); |
340 | tempchar1 = pRxData[0]; // return setting written |
338 | tempchar1 = GetActiveParamSetNumber(); |
- | 339 | Piep(tempchar1); |
|
341 | } |
340 | } |
342 | else |
341 | else |
343 | { |
342 | { |
344 | tempchar1 = 0; // mark in response an invlid setting |
343 | tempchar1 = 0; // mark in response an invlid setting |
345 | } |
344 | } |