閲覧総計:14955  (本日:1  昨日:3)


モータの前転・後転

モータの前転・後転・停止・ブレーキの制御をモータドライバIC 東芝TA7291Pを用い
て行う方法を示す。  06/09/18

モータドライバIC 東芝TA7291PのIN1,IN2端子に下表の信号を入力する事で
0UT1,OUT2につないだモータを制御する事が出来る。

IN1IN2動作
前転
後転
停止
ブレーキ

【16F628Aの場合】

PIC_motor.jpgPIC_motor_kairo.jpg
/** 
* モータの前転・後転 
* 
* PIC 16F628A 
* 発信器:内臓4MHz 
* 電源:乾電池4本(実測5.4V) 
* モータードライバIC:TA7291P 
* モーター:RB4,5 
*  
* Device Flags: _BODEN_OFF _CP_OFF _DATA_CP_OFF _PWRTE_ON 
*    _WDT_OFF _LVP_OFF _MCLRE_OFF _INTRC_OSC_NOCLKOUT 
* 
* 言語 MikroC v2.1 
*/ 
void main() { //メイン プログラム 
  PORTB = 0b00000000; //PORTBの中身をきれいにする 
  TRISB = 0b00000010; //RB1は1:入力、他のPORTBは0:出力に設定 

    do { //doとwhileの間を繰り返す
        
      PORTB.F4 = 1; //モータ前転
      PORTB.F5 = 0;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ
       
      PORTB.F4 = 0; //モータ停止 
      PORTB.F5 = 0;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ
        
      PORTB.F4 = 0; //モータ後転
      PORTB.F5 = 1;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ
       
      PORTB.F4 = 0; //モータ停止 
      PORTB.F5 = 0;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ

    } while(1); //doとwhileの間を繰り返す   
} //メイン プログラム終了

★この情報は役に立ちましたか?

選択肢 投票
はい 33  
普通 20  
いいえ 16  

【16F84Aの場合】

/** 
* モーターを回す 
* 
* PIC 16F84A 
* 外部セラロック:10MHz 
* 電源:乾電池4本(実測5.4V) 
* モータードライバIC:TA7291P 
* モーター:RB4,5 
*  
* Device Flags: _CP_OFF _PWRTE_ON _WDT_OFF _HS_OSC 
* 
* 言語 MikroC v2.1 
*/ 
void main() { //メイン プログラム 
  PORTB = 0b00000000; //PORTBの中身をきれいにする 
  TRISB = 0b00000000; //PORTBは8個全て出力に設定
 
    do { //doとwhileの間を繰り返す
        
      PORTB.F4 = 1; //モータ前転
      PORTB.F5 = 0;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ
       
      PORTB.F4 = 0; //モータ停止 
      PORTB.F5 = 0;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ
        
      PORTB.F4 = 0; //モータ後転
      PORTB.F5 = 1;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ
       
      PORTB.F4 = 0; //モータ停止 
      PORTB.F5 = 0;
        Delay_ms(1000); //1秒(=1000ミリ秒)待つ

    } while(1); //doとwhileの間を繰り返す
} //メイン プログラム終了

★この情報は役に立ちましたか?

選択肢 投票
はい 7  
普通 1  
いいえ 10  

添付ファイル: filePIC_motor_kairo.jpg 5333件 [詳細] filePIC_motor.jpg 2875件 [詳細]