Ho bisogno di implementare un protocollo seriale per comunicare con un dispositivo utilizzando .NET (C #). Questa implementazione dovrebbe essere una libreria (.dll) da utilizzare in diversi progetti.
Ho la scheda tecnica che descrive il protocollo (baudrate, bit di stop, protocollo dei messaggi, comandi, ecc.) e so che ho bisogno di usare SerialPort
di classe da System.IO.Ports
namespace.
Ma ho qualche dubbio su come strutturare / organizzare il codice.
Ecco alcune domande:
- Dovrei preoccuparmi della gestione dei thread o questo aspetto dovrebbe essere gestito da come viene utilizzata la libreria?
- Posso gestire i dati ricevuti / inviati usando le stringhe o dovrei usare i byte?
- I comandi e i contenuti fissi devono essere memorizzati utilizzando
enums
,constants
o qualcos'altro?
Forse quelle domande potrebbero essere soggettive, ma mi piacerebbe avere un feedback da qualcuno con più esperienza di me.
Se qualcuno ha alcuni esempi, consigli, migliori pratiche, ecc. su questo argomento, sarò molto grato.