Hier der Code:
#include <avr/io.h> // Deklarationen einfügen
#define Takt 1000000UL // Systemtakt 1MHz intern
void Warte1ms() ;
/************************************************** **********
* Anfang der Hauptfunktion *
************************************************** **********/
int main(void)
{
DDRB = 0xFF ; // Port B ist Ausgang
PORTB = 0 ; // Anfangswert Null
/*********************************************
* 5 Takte Low / 5 Takte High gibt Takt / 10 *
*********************************************/
while (1) // unendliche Schleife
{
Warte1ms() ; // Wartefunktion ca 1ms
PORTB ++ ; // Portzähler + 1
}
}
void Warte1ms(void)
{
for (unsigned int i = Takt/4000ul; i > 0; i--) ;
}
Im Einzelschrittmodus wird immer die Stelle "void Warte1ms(void) übersprungen. Der gelbe Balken kommt nie in "for (unsigned int i = Takt/4000ul; i > 0; i--) an.
Lesezeichen