consulta no puedo declarar bien los pines pcint1 y pcint2 lo hice funcionar en attiny85 pero no en el 84 que cambio? gracias
#include "avr/interrupt.h";
#include <EEPROM.h>
int cont3;
int m = 0;
volatile int value =122;
volatile int lastEncoded = 0;
void energia (){
if(digitalRead(m)==LOW){
cont3++;
delay(1);
if (cont3 >5) {
EEPROM.put(0,value);
delay(50);
cont3 = 0;
}
}
}
void setup()
{
EEPROM.get(0, value);
pinMode(6, OUTPUT);
pinMode(1, INPUT);
pinMode(2, INPUT);
digitalWrite(1, HIGH);
digitalWrite(2, HIGH);
pinMode(m, INPUT);
GIMSK = 0b00100000;
PCMSK0 = 0b00000110; // pcint1 pcint2
sei();
}
void loop()
{
//energia ();
analogWrite(6, value);
}
ISR(PCINT1_vect)
{
int MSB = digitalRead(1);
int LSB = digitalRead(2);
int encoded = (MSB << 1) |LSB;
int sum = (lastEncoded << 2) | encoded;
if(sum == 0b1101 || sum == 0b0100 || sum == 0b0010 || sum == 0b1011)
value++;
if(sum == 0b1110 || sum == 0b0111 || sum == 0b0001 || sum == 0b1000)
value--;
lastEncoded = encoded;
if (value <= 0)
value = 0;
if (value >= 255)
value = 255;
}`