###前提・実現したいこと
arduinoで1分おきにリレー1を動かすことと、スイッチが入ったらリレー2を動かすことがしたいです。
1分おきにリレー1を動かすことのスケッチと、スイッチが入ったらリレー2を動かすことのスケッチを別々に作った時には、それぞれ稼働できました。
###発生している問題・エラーメッセージ
しかし、この2つのスケッチを合体させると稼働できません。
###該当のソースコード
arduino
1//プルアップ回路につなげたら目的達成!! 2//その後、#1はセーフ、#2を加えるとアウト! 3 4volatile int TOGGLE = LOW;//並行して動作するコード用変数にLEDをトグルする値を格納 5 6void setup() { //一回だけ実行 7 pinMode(12, OUTPUT); //半押しピンは出力にする。#1 8 digitalWrite(12, LOW);//半押しピンはLOWにする。#1 9 10 pinMode(11, OUTPUT); //レリーズが接続された11番ピンを出力に設定 11 12 pinMode(2, INPUT_PULLUP); 13 //外部割込みを監視する2番ピンをプルアップし入力に設定 14 attachInterrupt(digitalPinToInterrupt(2), shoot, CHANGE); 15 //2番ピン(割り込み番号0)の電圧に変化があったらshoot関数を実行 16} 17 18void loop() { //{}内を無限ループで実行 19 digitalWrite(12, HIGH);//#2 20 delay(1000); //#2 21 digitalWrite(12, LOW); //#2 22 delay(60000); //#2 23 24 digitalWrite(11, TOGGLE);//LEDが接続された11番ピンをトグルする 25} 26 27void shoot(void) { //割り込み番号0(2番ピン)の電圧に変化があった時のみ実行される 28 if (digitalRead(2) == LOW) { //もし2番ピンがLOWなら{}内を実行する 29 TOGGLE = LOW; //LEDトグル変数をLOWにする 30 } 31 32 else { //もし2番ピンがLOWでなかったら(HIGHなら)以下の{}内を実行する 33 TOGGLE = HIGH; //LEDトグル変数をHIGHにする 34 } 35}``` 36
###試したこと
LEDをブレッドボード上に設置し電流の到達を確認しました。
それぞれ単独の時にはリレー1.2に電流が到達しました。
合体させると2番ピンに電流が届いても割り込みが起こりませんでした。
###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
初めての投稿で要領を得ませんが取り急ぎ書き込みました。
書き方も含めて改善すべきは教えてください。
よろしくお願いします。

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/11/05 08:39
2016/11/05 08:44
2016/11/05 10:20
2016/11/05 10:27