Skip to content

Instantly share code, notes, and snippets.

@takawo
Created August 9, 2018 21:44
Show Gist options
  • Select an option

  • Save takawo/94aed138f0737ff34ac6e9869bfe988b to your computer and use it in GitHub Desktop.

Select an option

Save takawo/94aed138f0737ff34ac6e9869bfe988b to your computer and use it in GitHub Desktop.
#define HALF_RELEASE_PIN 2
#define FULL_RELEASE_PIN 3
#define INTERVAL_TIME 3000
// 回路図参考
// https://blog-imgs-43-origin.fc2.com/a/r/m/arms22/remote_release_sch.png
unsigned long shoot_time;
void setup() {
// ポート初期化
pinMode(HALF_RELEASE_PIN, OUTPUT);
digitalWrite(HALF_RELEASE_PIN, LOW);
pinMode(FULL_RELEASE_PIN, OUTPUT);
digitalWrite(FULL_RELEASE_PIN, LOW);
// 最初の撮影までの時間を設定
shoot_time = millis() + INTERVAL_TIME;
}
void loop(){
int diff = shoot_time - millis();
if (diff > 0) {
int remain = map(diff, 0, INTERVAL_TIME, 0, 9);
int pos;
delay(200);
}
else {
// 半押し(フォーカスを合わせる)
digitalWrite(HALF_RELEASE_PIN, HIGH);
delay(800);
// 全押し(写真撮影)
digitalWrite(FULL_RELEASE_PIN, HIGH);
delay(200);
// スイッチオフ
digitalWrite(HALF_RELEASE_PIN, LOW);
digitalWrite(FULL_RELEASE_PIN, LOW);
// 次の撮影時間を設定
shoot_time = millis() + INTERVAL_TIME;
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment