M5Stack ボタンA,B,Cを押すとDA出力した信号を異なった時間出力するサンプルソフト
DAポート26から0.6VをA,B,Cボタンを押したときそれぞれ10秒、60秒、180秒間だけ出力するサンプルソフト。これが作りたくて色々調べてた
別な回路の動作確認用に使うのに必要だった。M5StackはLCD,ボタンがあって楽だ。
別な回路の動作確認用に使うのに必要だった。M5StackはLCD,ボタンがあって楽だ。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | #include <M5Stack.h> int PIN = 26; int OUT_0_6V = 46; void setup() { M5.begin(); M5.Lcd.setTextSize(3); //17×10 M5.Lcd.println( "Start" ); pinMode(PIN, OUTPUT); } void loop() { M5.update(); if (M5.BtnA.wasReleased()){ dacWrite(PIN, 0); M5.Lcd.println( "P26=OFF" ); dacWrite(PIN, OUT_0_6V); M5.Lcd.println( "P26=ON 10s" ); delay(10000); //10s dacWrite(PIN, 0); M5.Lcd.println( "P26=OFF" ); } else if (M5.BtnB.wasReleased()){ dacWrite(PIN, 0); M5.Lcd.println( "P26=OFF" ); dacWrite(PIN, OUT_0_6V); M5.Lcd.println( "P26=ON 60s" ); delay(60000UL); //60s dacWrite(PIN, 0); M5.Lcd.println( "P26=OFF" ); } else if (M5.BtnC.wasReleased()){ dacWrite(PIN, 0); M5.Lcd.println( "P26=OFF" ); dacWrite(PIN, OUT_0_6V); M5.Lcd.println( "P26=ON 180s" ); delay(60000UL); //60s delay(60000UL); //60s delay(60000UL); //60s dacWrite(PIN, 0); M5.Lcd.println( "P26=OFF" ); } else if (M5.BtnA.wasReleasefor(700)){ M5.Lcd.clear(BLACK); M5.Lcd.setCursor(0,0); } } |

コメント
コメントを投稿