Du nimmst die passenden Datentypen (uint16_t) und schon regelt sich das von alleine.Aber was ist wenn der Timer während der Messung überlauft und wieder bei 0 beginnt? Dann habe ich ja ein falsches negatives Ergebnis?
Einfaches Abziehen reicht, wenn erste_messung und zweite_messung uint16_t sind.EDIT: Bin selber draufgekommen - if(erste_messung>zweite messung) zeit= 65536-erste_messung + zweite_messung;
Lesezeichen