/* Motor.h - モータードライバ(L298P シールド)のためのライブラリ ## 概要 ## このライブラリは、モータードライバ(L298P シールド)のためのシンプルなライブラリです。 PWM対応ピンが1つしか必要ないのがこのライブラリの特徴です。 ## 使い方 ## 例: #include "Motor.h" Motor motor; void setup(){ // motor.attach(pin1, pin2); motor.attach(5, 6); } void loop(){ // motor.mode(GO); //正転 motor.mode(GO, 100); //0-255(ここでは、100)のスピードで正転 delay(1000); motor.mode(STOP); //停止 delay(1000); } 注意: 使用するモータードライバの動作は、 1ピンの場合: 動作 |pin1 -----+----- STOP | L GO | H 2ピンの場合: 動作 |pin1 |pin2 ----------+-----+----- STOP | L | L GO | H | L STOP | L | H BACK | H | H でなければなりません。また、 void Motor::mode(char mode, byte speed); void Motor::speed(int speed); これらを使用する場合、pin1はPWM対応でなければなりません。 ## ライセンス ## (C)2013 kou029w - MIT License */ #ifndef Motor_h #define Motor_h #if defined(ARDUINO) && ARDUINO >= 100 #include #else #include #endif enum { STOP = 0, GO = 1, BACK = 2, BRAKE = 3 }; class Motor{ public: Motor(); void mode(uint8_t mode); void mode(uint8_t mode, uint8_t speed); void speed(int speed); void attach(uint8_t pin1); void attach(uint8_t pin1, uint8_t pin2); void detach(); private: char _pin1; char _pin2; }; #endif