DW22WrCam
D = Device(CAMMING2, CAMMING3, CAMMING4)
W = Funzioni di Scrittura
* = Sostituisce la funzione DW20WrCam
La funzione DW22WrCam viene utilizzata per scrivere i settori per la costruzione di una camma elettronica. Alla funzione occorre passare come parametri un puntatore di inizio e uno di fine che servono per identificare, rispettivamente, il settore da dove si vuole cominciare a scrivere e il settore dove si vuole smettere. La funzione scrive 40 settori della camma.
IMPLEMENTAZIONE
DW22WrCam (cmCamma, aslParam, CodeG, CodeM, CodeQm, CodeQs, CodeQma, CodeQsa, Errore)
Parametri:
IN/OUT | TIPO VARIABILE | NOME DI ESEMPIO | DIM | |
---|---|---|---|---|
IN | CAMMING2 CAMMING3 CAMMING4 | cmCamma | - | Tipo di device a cui si può applicare la funzione |
IN | ARRSYS | aslParam[1] | L | Numero settore di inizio scrittura |
IN | SYSTEM | aslParam[2] | L | Numero settore di fine scrittura (valido solo nel caso che 'aslParam[3]' sia a 0) |
IN | SYSTEM | aslParam[3] | L | Numero di settori da scrivere (opzionale nel caso di voglia usare 'aslParam[2]') |
IN | SYSTEM | aslParam[4] | L | Numero di elemento degli array dal quale iniziare a leggere i valori (se si imposta 0 si parte dal primo elemento) |
IN | ARRSYS | CodeG | W/L | Array contenente Code G calcolato |
IN | ARRSYS | CodeM | W/L | Array contenente Code M calcolato |
IN | ARRSYS | CodeQm | L | Array contenente Spazio Master calcolato |
IN | ARRSYS | CodeQs | L | Array contenente Spazio slave calcolato |
IN | ARRSYS | CodeQma | L | Array contenente code Qma (codice ausiliario) |
IN | ARRSYS | CodeQsa | L | Array contenente code Qsa (codice ausiliario) |
OUT | SYSTEM | Errore | B | Var di errore nella scrittura camma |
Modo di utilizzo
Il parametro “aslParam[1]” (settore Iniziale) indica il numero di settore nel quale si vuole iniziare a scrivere la camma, mentre “aslParam[4]” (elemento array iniziale) indica il numero dell'elemento degli array (CodeG, CodeM, ecc..) dal quale si inizierà a copiare i valori nei settori.
Se il parametro “aslParam[2]” (settore finale) non è impostato a 0, la scrittura dei settori termina con il settore di tale numero, se invece il parametro è a 0 la scrittura continua per il numero di settori impostato nel parametro “aslParam[3]” (numero settori da scrivere).
Errore
Una volta richiamata la funzione se ci sono degli errori la variabile di errore assume determinati valori, il significato di tali valori e descritto qui sotto:
0 - Nessun errore
1 - Indici di inizio e/o fine scrittura errati
Esempio
MAIN: IF gfScrittCam gfScrittCam = 0 aslParam[1] = 1 ;Comincia a scrivere dal 1° settore della camma aslParam[4] = 10 ;Comincia a leggere da 10° elemento degli array DW22WrCam (cmCamma, aslParam, CodeG, CodeM, CodeQm, CodeQs, CodeQma, CodeQsa, Errore) IF sbErrore JUMP FINE ENDIF ENDIF