Programm Problem ATmega32

Gast #284255
Lesenswert?
• ▲
▼
#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/signal.h>
#include <avr/iom32.h>

#define SYSCLK 3686400
#define Preclk 3600
#define LEDS_DDR DDRC
#define LEDS_PORT PORTC
int i=0;
void delay_ms(unsigned int ms);
signal (SIG_OUTPUT_COMPARE0 )
  {

  PORTC=~PORTC;
  delay_ms(10);

  }

void delay_ms(unsigned int ms)
{
  unsigned int zaehler;

  while (ms)
  {
    zaehler = SYSCLK / 3686.4;

    while (zaehler)
    {
      asm volatile ("nop");
      zaehler--;
    }
    ms--;
  }
}
int main(void)
{

  //PortC wird als AUsgang definiert
  LEDS_DDR = 0xFF;

  //PortC wird auf o gesetzt
  //PORTC=0xFF;

  //Interrupts enablen
  sei();

  //Output compare match interrupt enable
  timer_enable_int (1<<OCIE0);

  //Output Compare Register setzen
  OCR0=0xF0;//240

  //Timer starten Vorteiler 1024
  TCCR0=(1<<WGM01)|(1<<CS00)|(1<<CS02);


  //Endloschleife
  for(;;)
  {
    /*if(TCNT0==0xEF)
      {

      if(PINC==0x10)
        {

        PORTC=0x08;
        delay_ms(100);
        }
      else
        {

        PORTC=0x10;
        delay_ms(100);}
      }
      */
  }



}
Moderator Persönliche Seite #284256
Lesenswert?
• ▲
▼
Lass mich über dein Problem raten.  Es ist:

[ ] Du kannst dich nicht ausdrücken und konntest daher nicht
    beschreiben, was dein Fehlerbild überhaupt ist.

[ ] Du weißt gar nicht, ob es ein Fehlerbild gibt.

[ ] Du kannst mit den Compilerwarnungen nichts anfangen.

[ ] Du hast die Compilerwarnungen abgeschaltet.

[ ] Du weißt nicht, dass in C signal() und SIGNAL() zwei verschiedene
    Bezeichner sind.

[ ] Du hast die Dokumentation zu <avr/delay.h> (oder jetzt
    <util/delay.h>) noch nicht gelesen und weißt daher nicht, dass
    es _delay_ms() bereits gibt.

[ ] Du hast die Doku überhaupt noch nicht gelesen.

Zutreffendes bitte ankreuzen.
Gast #284257
Lesenswert?
• ▲
▼
@Jörg: Lass mich über dein Problem raten. Es ist:

[ ] Du bist mit dem falschen Fuß aufgestanden.

[ ] Du hast deine Medikamente nicht genommen.

[ ] Du hast heute versehentlich eine Datei gelöscht, an der du sehr
    lange gearbeitet hattest und von der du kein Backup hast.

[ ] Du hast ein sehr teures Bauteil verpolt und dieses ist den Weg
    allen Irdischen (... und zu Asche wirst du werden...) gegangen.

[ ] Dir hat einer den Wagen zerkratzt.

[ ] Dein Hartz IV wurde gestrichen.

Zutreffendes bitte ankreuzen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren