2014-git-work/arduino/test/Motor.h

76 lines
1.8 KiB
C
Raw Permalink Normal View History

2013-09-16 17:37:33 +09:00
/*
Motor.h - (1/2)
## 概要 ##
12
PWM対応ピンが1つしか必要ないのがこのライブラリの特徴です
GOとBACKの速度に差があることがあります
## 使い方 ##
:
#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
BACK | L | H
STOP/BRAKE| 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 <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