• 締切済み

C言語(PIC関連ですが・・・)

センサーが接続されたPICマイコンでDCモータを制御する際に、前のセンサーと次のセンサーの間隔が長く、DCモータが停止してしまうので、前のセンサーの信号を次のセンサーの信号が入力されるまで保持されるようなプログラムを作りたいのですが、どのようなプログラムにしたらよいでしょうか・・・ ちなみに、下が試作プログラムの一部です。 if(b== 0x39) //センサ1が入力されたとき { PORTA = 0b00000010; Delay_ms(1); PORTC = 0b00000000; Delay_ms(1); PORTD = 0b00000001; Delay_us(350); PORTD = 0b00000000; Delay_us(300); } if(b== 0x3d) //センサ2が入力されたとき { PORTA = 0b00000001; Delay_ms(1); PORTC = 0b00000000; Delay_ms(1); PORTD = 0b00000001; Delay_us(325); PORTD = 0b00000000; Delay_us(300); }

みんなの回答

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

どんな動作にしたいかがわからないのでなんともいいがたいですが、質問文からするとセンサーに入力があったときだけONであとはOFFというモーター制御にしてるのですか? だとしたらそっちの作りをなんとかすべきで、「センサー入力があったこと」の状態を保持するとかいくつかの手があると思いますが。 あとポート叩いてるとこはコメントくらい付けてください。 でないと何やってんのかさっぱりわからないです。