Funzione per la lettura di COILS su un server modbus tramite struttura di supporto in modalità passante.
|
i32 mbc_read_coils_s (i32 mbc, stru_modbus stru, dest)
|
|
Valore handle reso da mbc_init().
|
|
Struttura di tipo stru_modbus contenente i parametri.
|
|
Area dove mettere i dati letti.
Può essere i16/u16/i32 o array di i16/u16/i32.
|
|
Rende:
|
|
1 [MBC_WAIT]
|
Comando in attesa di risposta.
|
0 [MBC_OK]
|
Comando eseguito.
|
-1 [MBC_INVAL]
|
Argomenti non validi.
|
-2 [MBC_BUSY]
|
Risorsa occupata.
|
-3 [MBC_PERM]
|
Permesso negato.
|
-4 [MBC_CONN]
|
Connessione non riuscita.
|
-5 [MBC_NOBUFS]
|
Buffer esauriti.
|
-6 [MBC_NOMEM]
|
Memoria insufficiente.
|
-7 [MBC_TX_ERR]
|
Errore di trasmissione.
|
-8 [MBC_RX_ERR]
|
Errore di ricezione.
|
-9 [MBC_TIMEOUT]
|
Timeout comando bloccante.
|
-10 [MBC_EXC_CODE_1]
|
Risposta con eccezione 1 (function code non supportato dal server).
|
-11 [MBC_EXC_CODE_2]
|
Risposta con eccezione 2 (indirizzo non valido).
|
-12 [MBC_EXC_CODE_3]
|
Risposta con eccezione 3 (quantità o valore non validi).
|
-13 [MBC_EXC_CODE_4]
|
Risposta con eccezione 4 (operazione fallita).
|
-14 [MBC_WRONG_ANSWER]
|
Risposta non valida.
|
-15 [MBC_INVAL_MBC]
|
Id mbc non valido.
|
|
|
Task.
|
|
La funzione è passante. Fino a che rende MBC_WAIT, va continuamente chiamata all'interno del task.
|