• ベストアンサー

arduinoのsetup()について

現在,arduino uno R3によって,モータドライバTA7291Pを通して,DCモータを制御しております. arduinoにスケッチを送った直後にDCモータを回転させないようにするにはどうすればよいでしょうか? setup()関数の中で,モータドライバの入力端子2つにつながっているarduinoの端子2つを出力に設定した上で,これらの端子の出力をHIGHにしました. しかし,arduinoにスケッチを送った直後はDCモータが回転してしまいます. ご教授のほどよろしくお願いいたします.

質問者が選んだベストアンサー

  • ベストアンサー
  • koujikuu
  • ベストアンサー率43% (429/993)
回答No.1

arduino はリセット直後数秒はパソコンとの通信待機状態になり、内蔵プログラムを実行しません またマイコン初期状態は入力ポートで HIGH / LOW 不定になります、その為TA7291P IN1,IN2入力ピンを10KΩ程度でプルアップし、IN1=H , IN2=H (モーターブレーキ設定)にしておきます setup() でも先に digitalWrite(IN1,HIGH);digitalWrite(IN2,HIGH); でポートの状態を確定してから、pinMode(IN1,OUTPUT);pinMode(IN2,OUTPUT); 出力ポートに切換えます

marimmo-
質問者

お礼

ご回答ありがとうございます. arduinoが内蔵プログラムを実行しない時間があるのですね. プルアップによる解決法を試してみます. これからもよろしくお願いいたします.

関連するQ&A