Forum: Mikrocontroller und Digitale Elektronik Pin change Interrupt tiny26


von der mit dem... (Gast)


Lesenswert?

Hallo versuche gerade beim Tiny26 den Pinchange Interrupt zu nutzen, und 
komme nicht weiter.
1
#include <avr/io.h>
2
#include <avr\pgmspace.h>
3
#include <avr\io.h>
4
#include <avr\interrupt.h>
5
6
int main(void)
7
8
{
9
  
10
  GIMSK |= (1<<PCIE1);
11
  sei();
12
  DDRA |=(1<<PA0);
13
  PORTA|=(1<<PA7);
14
    while(1)
15
    {
16
        
17
    //TODO:: Please write your application code 
18
    }
19
}
20
ISR(INT0_vect)
21
{
22
  
23
  GIFR|=(1<<PCIF);
24
  if(!(PINA &(1<<PA7)))
25
  {
26
    PORTA ^=(1<<PA0);
27
  }
28
}

Leider toggelt das Led an PortA0 nicht!
Was mach ich falsch

Guten Abend und Danke

von MWS (Gast)


Lesenswert?

Falscher Vektor zum freigegebenen Interrupt.

von Volker B. (Firma: L-E-A) (vobs)


Lesenswert?

Hallo

der mit dem... schrieb:
> Hallo versuche gerade beim Tiny26 den Pinchange Interrupt zu nutzen, und
> komme nicht weiter.

Warum benutzt Du den Int0-Vektor wenn Du einen PinChange-Interrupt haben 
willst?

> ISR(INT0_vect)

Grüßle
Volker.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.