Allora...queste cose si risolvono realizzando una macchina a stati. Devi crearti un interrupt con il timer che ti gestisce la trasmissione di un'area di memoria riempita dal programma principale. Il programma principale che non ha strette esigenze di temporizzazione legge gli ADC, i pulsanti, gestisce LCD e quant'altro. Così svincoli la generazione dei timing dal programma principale.
Ad ogni tick dell'interrupt, modifichi o meno lo stato del'uscita TX in base a quanto hai già trasmesso. Sembra complicato, ma se ci ragioni un attimo è l'unico sistema professionale per realizzare questo tipo di programmi. Concentrati intanto sul task di trasmissione, e quando funziona poi affronti il resto che vedrai diventa una cavolata
|