Lucast85 ha scritto:Vorrei imparare a scrivere un FW (non bloccante)
Ciao
Lucast85, l'auspicio è sempre quello di scrivere del codice che non si "blocchi" o che non blocchi qualcosa d'altro a prescindere dalla "filosofia" adottata ...
La gestione Finite-Sate Machine ( ... o Macchina a Stati Finiti) non si caratterizza come tale tanto in base alla "
interazione fra le funzioni"; è piuttosto un "modo" di strutturare e organizzare il software (a prescindere dal fatto che venga sviluppato su un microcontrollore piuttosto che su un PLC o utilizzando un PC come piattaforma).
Una forma semplice e intuitiva che penso possa essere di aiuto alla comprensione potrebbe essere una porzione di codice scritto ricorrendo allo statement "switch" in linguaggio "C" (prendo questo come base di confronto ignorando le tue conoscenze).
In rete qualche riferimento si trova, magari sono solo degli accenni ma se hai già un minimo di idea possono essere utili; prova a dare una occhiata
qui e
qui; sono solo un paio di richiami ma puoi cercare oltre.
Sicuramente, osservare e studiare il codice scritto da altri è un ottimo esercizio, ammesso che il codice sia di buon livello.
Questo è un modo per imparare; se poi tu avessi "sottomano" l'autore sarebbe ancora meglio perché ovviamente ti potresti rivolgere a lui per i chiarimenti del caso.
Intanto questo poi non è detto che passi di "qui" qualcuno in grado di fornirti precisazioni o ulteriori riferimenti, o rettificare quanto già scritto.
Saluti
W - U.H.F.