> Aber ich hab leider keine Warnung erhalten...
Stimmt, hier auch nicht (mehr?). War mir sicher da kommt ein 'warning: 
unknown "uint8_t" .. assuming something something' davor..
> Wird aber nicht jetzt stdint.h doppelt inkludiert?
Jein. Normalerweise(tm) macht man sich keine Sorgen wegen doppelter 
Includes, die sind eh adäquat ∗abgesichert∗ (d.h. 'Ja, wird doppelt 
eingebunden' und 'Nein, es entstehen daraus keine Probleme').
Saubererweise holt sich ∗jeder∗ ∗alle∗ Header rein, die ∗er∗ braucht, 
nicht mehr und nicht weniger. So gesehen braucht obige main die stdint.h 
(noch) nicht.
Unabhängig vom obigen Problem: Überlegs Dir nochmals genau, ob Du 
set_[high,low] wirklich als Funktionen implementieren willst oder nicht 
doch als Präprozessormakros.
HTH und nix für ungut