hanzo/Motor.h

75 lines
1.6 KiB
C
Raw Normal View History

2013-09-26 22:09:41 +09:00
/*
Motor.h - (L298P )
## 概要 ##
(L298P )
PWM対応ピンが1つしか必要ないのがこのライブラリの特徴です
2013-09-26 22:09:41 +09:00
## 使い方 ##
:
#include "Motor.h"
Motor motor;
void setup(){
// motor.attach(pin1, pin2);
motor.attach(5, 6);
2013-09-26 22:09:41 +09:00
}
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
2013-09-26 22:09:41 +09:00
void Motor::mode(char mode, byte speed);
void Motor::speed(int speed);
使pin1はPWM対応でなければなりません
## ライセンス ##
(C)2013 kou029w - MIT License
2013-09-26 22:09:41 +09:00
*/
#ifndef Motor_h
#define Motor_h
#if defined(ARDUINO) && ARDUINO >= 100
#include <Arduino.h>
#else
#include <WProgram.h>
#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