ISR Problem mit AVR Studio6

OP (Firma: Thormann) #2738459
Lesenswert?

Hallo!
Benötige hilfe bei einem Problem mit dem AVR Studio6.

Ich verwende einen TINY40 und versuche TIM1_COMPB Interrupt auszulösen
jedoch bekomme ich, egal welche ISR ich in den Code schreibe immer den 
Compiler fehler "register not supported". Wenn cih das ganze mit AVR 
Studio5 kompiliere wirft das Studio keinen Fehler und der code 
funktioniert.
Um der Frage auszuweichen warum ich nicht Studio5 verwende: bei Studio 5 
kann ich beim TINY40 keine globalen Variablen nutzen, und das sollte 
angeblcih bei Studio 6 funktionieren.

CODE:

/*
 * UWTasterbox3.c
 *
 * Created: 02.07.2012 08:45:47
 *  Author: robert.thormann
 */

#define    F_CPU 3686400   // Taktfrequenz des myAVR-Boards
#include <avr/io.h>
#include   <inttypes.h>
#include <util/delay.h>
#include <avr/interrupt.h>
#include <stdint.h>


volatile int16_t millisekunden;
volatile int8_t sekunde;
volatile int8_t minute;
volatile int8_t stunde;


ISR(TIM1_COMPB_vect)
{
    if(millisekunden == 1000)
    {
      sekunde = sekunde + 1;
      millisekunden = 0;
      if(sekunde == 60)
      {
        minute++;
        sekunde = 0;
      }
      if(minute == 60)
      {
        stunde++;
        minute = 0;
      }
      if(stunde == 24)
      {
        stunde = 0;
      }
    }
}

ISR(PCINT1_vect) //ISR Kommt wenn irgendein Taster gedrückt ist

{

}

int main(void)
{

  DDRA=0b11111000;
  DDRB=0b00000000;
  DDRC &= ~ ((1<<PC0) | (1<<PC1) | (1<<PC2));
  PCMSK1 |= ((1<<PCINT8)|(1<<PCINT9)|(1<<PCINT10)|(1<<PCINT11)); //Pins 
B0-B3 für Pin change interrupt in Maske 1 setzen
  GIMSK |= (1<<PCIE1);
  // Timer 0 konfigurieren
  TCCR1A = 0b000011011;
  TIMSK =  0b00010000; //Timer output compare  enable
  OCR1A =  0b00001010;  // auf 10 laden
  sei();



    while(1)
    {
        //TODO:: Please write your application code
    }
}

LG Robert
Moderator Persönliche Seite #2738484
Lesenswert?

Robert Thormann schrieb:
> immer den
> Compiler fehler "register not supported".

Die Erweiterungen für die ATtiny10-Serie sind bislang komplett privat
von Atmel.  Sie haben ihre Patches dafür weder irgendwie in Richtung
binutils, GCC und avr-libc weitergereicht noch sich sonst irgendwie
um eine Kooperation bemüht.

Daher musst du dich mit allen auftretenden Problemen an
<avr -at- atmel -punkt- com> wenden.
Gast #2762913
Lesenswert?

Antwort von Atmel:

Dear Customer,

Thank you for contacting Atmel Technical Support.

From the description sent by you, we understand that ATMEL Studio6 is 
causing issue while writing the ISR routines.

To regenerate the issue here, I have tried using the ISR macro, able to 
regenerate the same issue here. Unfortunately, this is a bug in Atmel 
Studio6, and the same will be fixed in future release.

Further to help you, I have tested the ISR routine with the AVR studio 5 
and its working fine, for temporary solution you can use the AVR studio 
5.
The downloadable link is here: 
http://www.atmel.com/tools/STUDIOARCHIVE.aspx

Sorry for the inconvenience caused.

Best Regards,
Vincent Christopher
Atmel Technical Support Team

--------

Wohl auch nicht wirklich eine Lösung, da beim Atmel Studio 5 das Problem 
mit STS/LDS besteht.

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