mach deinen Zähler volatile!
Code:void Warte1ms(void) { volatile unsigned int i; for (i = Takt/4000ul; i > 0; i--) ; }
edit:
das ist übrigens genau das, was ich meine, wenn ich sage:
nacktes C ist für Anfänger absolut nicht geeignet!
Daher gibt es für Anfänger C per Arduino IDE.
da gibt es Timer mit Millisekunden
millis()
oder Microsekunden
micros()
und
delay(msec)
und
delayMicroseconds(usec)
Ansonsten musst du dir die Timer callbacks selber programmieren.
( * schauder * )
Code:int outPin = 8; // digital pin 8 void setup() { pinMode(outPin, OUTPUT); // sets the digital pin as output } void loop() { digitalWrite(outPin, HIGH); // sets the pin on delayMicroseconds(50); // pauses for 50 microseconds digitalWrite(outPin, LOW); // sets the pin off delayMicroseconds(50); // pauses for 50 microseconds }







Zitieren

Lesezeichen