vorwärtzähler in c programm

Gast #503343
Lesenswert?
• ▲
▼
ich versucht ein vorwärt zähler in c zu programmieren. für das themas 
microcontreller bin ich eine anfänger. ich habe ein klein programm 
geschrieben aber es fonstioniert nicht richtig es fonstionniert 
überhaupt nicht. deshalb möchte ich das ihr mein algorithme schaut und 
sagt ihr mich was ist falsch drin



#include <avr/io.h>
#include <stdint.h>
#include <util/delay.h>
int main(void){
DDRB = 0xFF;
uint8_t I;
I=0;
schl:
        {

    PORTB = I;
  _delay_ms(1000);
     I++;
  }
 goto schl;

 return 0;
}

danke
#503347
Lesenswert?
• ▲
▼
> _delay_ms(1000);

Schon mal in die Doku zu _delay_ms geschaut?
Da gibt es eine Beschränkung. Du kannst nicht
beliebig hohe Zahlen da hineinstopfen.
Die maximale Verzögerungszeit liegt bei 240/Taktfrequenz_in_Mhz

Wenn du deinen AVR also mit 4 Mhz betreibst, dann
ist die maximale Verzögerungszeit  240/4 also rund
60 Millisekunden.

Wenn dir das nicht reicht, dann musst du halt _delay_ms
in einer Schleife entsprechend oft aufrufen.

  for( j = 0; j < 100; ++j )
    _delay_ms( 10 );

10 * 100 macht wieder 1000 Millisekunden.

>  goto schl;

den goto solltest du dir gleich wieder abgewöhnen oder
besser gesagt: gar nicht erst angewöhnen.

   while( 1 ) {
     PORTB = I;
     for( j = 0; j < 100; ++j )
       _delay_ms(10);
     I++;
   }
}

Gast #503348
Lesenswert?
• ▲
▼
mein programm soll zaehlen es ist ein 8bit binär zaehler von 0 bis 255 
un es muss ein endlos schleife sein. das programm das ich geschrieben 
habe tut es nicht. Es zählt nich richtig
gruss
J.Pascal

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.