STM32L010でモーターを制御する 軽くオリジナルのモータードライバーを作ってみた 100円以下


まだ完全に試していない

目的
モーターのテスト
モーターコントローラを燃やす壊す高いと
いうから軽く100円以下でモーターコントローラを作ってみた。(どや)

部品

R6006AND 通販コード I-15334 X 4個

PS817 通販コード I-11729  X 2個

RD16S 470E 通販コード R-16471    X 6本

RD16S 100K 通販コード R-16104   X 4本



//MC_010_1

#include "mbed.h"

#define M_STOP      0
#define L_ROTATE    1
#define R_ROTATE    2

DigitalOut L_SIDE(PB_1);
DigitalOut R_SIDE(PA_5);
DigitalOut myled(PA_4);

int MD_1[3][2] = {  { 0 , 0 } , { 1 , 0 } , { 0 , 1 }  }; 

int motor_1( int control_1 )
{

    if( control_1 < 0 || control_1 > 2 ) return( -1 );

    L_SIDE = MD_1[control_1][0];    
    R_SIDE = MD_1[control_1][1];

    return (0);//正常終了

}//motor_1

//メインルーチン
int main() {

        //GPIOの初期化
    L_SIDE = 0; 
    R_SIDE = 0;

    //無限ループ
    while(1){

        motor_1( M_STOP );
        wait_ms(1000);

        //正面から見て反時計周り
        motor_1( L_ROTATE );
        wait_ms(1000);

        motor_1( M_STOP );
        wait_ms(1000);

        //正面から見て時計周り
        motor_1( R_ROTATE );
        wait_ms(1000);

    }//while

}//main