03-07-2016, 15:39
Witam,
Mam problem z programem poniżej (używam Arduino Uno).
Program powinien przełączać zmienna state na przerwaniu generowanym na pinie2 (na zbocze RISING)
(do pinu 2 podłączony jest pilot rc na układzie PT2262-generujący stan wysoki na naciśniecie przycisku)
(Dodam, że na zbocze FALLING działa poprawnie)
Czy któś może mi powiedzieć, dlaczego program poniżej bez tej linijki działa ok, a z nia juz nie?
Program:
Z góry dziękuję za pomoc
Mam problem z programem poniżej (używam Arduino Uno).
Program powinien przełączać zmienna state na przerwaniu generowanym na pinie2 (na zbocze RISING)
(do pinu 2 podłączony jest pilot rc na układzie PT2262-generujący stan wysoki na naciśniecie przycisku)
(Dodam, że na zbocze FALLING działa poprawnie)
Czy któś może mi powiedzieć, dlaczego program poniżej bez tej linijki działa ok, a z nia juz nie?
Kod:
//digitalWrite(Usb1, StateCopy);
Program:
Kod:
const byte button1Pin = 2; // the number of the pushbutton pin
const byte Usb1 = 4; // the number of the LED pin
const byte interruptPin = 2;
volatile byte state = 0;
byte StateCopy=0;
void setup() {
pinMode(Usb1, OUTPUT);
pinMode(button1Pin, INPUT);
//pinMode(interruptPin, INPUT_PULLUP);
attachInterrupt(digitalPinToInterrupt(interruptPin), blink, RISING);
Serial.begin(9600);
}
void loop() {
noInterrupts();
StateCopy=state;
interrupts();
//digitalWrite(Usb1, StateCopy); /////////////////////////////////bez tego dziala///////
Serial.print("state = ");
Serial.println(StateCopy);
delay(10);
}
void blink() {
state=!state;
}
Z góry dziękuję za pomoc