Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ##########################################################################
- ## ARDUINO SOURCES ##
- ##########################################################################
- */
- /*
- ___| _) | _) _) ___|
- \___ \ | | | __| | | | __ `__ \ | _ \ __| __ \
- | | | | ( | | | | | | | ( | | | |
- _____/ _| _| _| \___| _| \__,_| _| _| _| \____| \___/ _| .__/
- _|
- Code source libre de droit. Si vous utilisez mon code, merci à vous d'en préciser la source.
- @Date : 03/11/2011
- @Auteur : Silicium Corp
- */
- #include "CCmotor.h"
- //===============================================================
- CCmotor::CCmotor(int pinDigit_1, int pinDigit_2, int gachette)
- {
- digitalPin_1 = pinDigit_1;
- digitalPin_2 = pinDigit_2;
- pinPWM = gachette;
- pinMode(pinPWM,OUTPUT);
- pinMode(digitalPin_1,OUTPUT);
- pinMode(digitalPin_2,OUTPUT);
- digitalWrite(pinPWM,LOW);
- digitalWrite(digitalPin_1,HIGH);
- digitalWrite(digitalPin_2,LOW);
- isON = false;
- setBorne(0, 255);
- setMotorSpeed(0);
- setWay(FORWARD);
- }
- //==================================================================
- void CCmotor::setMotorSpeed(int value)
- {
- if ((value > minSpeed -1 && value < maxSpeed + 1) || value == 0)
- {
- motorSpeed = value;
- if (isON)
- {
- analogWrite(pinPWM,motorSpeed);
- }
- }
- }
- //==================================================================
- void CCmotor::setBorne(int minimum, int maximum)
- {
- if (minimum < maximum && minimum > -1 && maximum < 256)
- {
- minSpeed = minimum;
- maxSpeed = maximum;
- }
- else
- {
- minSpeed = 0;
- maxSpeed = 255;
- }
- }
- //==================================================================
- void CCmotor::launch(int value)
- {
- isON = true;
- setMotorSpeed(value);
- }
- //==================================================================
- void CCmotor::launch()
- {
- isON = true;
- analogWrite(pinPWM,motorSpeed);
- }
- //==================================================================
- void CCmotor::stopNow()
- {
- isON = false;
- digitalWrite(pinPWM,LOW);
- }
- //==================================================================
- void CCmotor::setWay(boolean sense)
- {
- if (sense)
- {
- digitalWrite(digitalPin_1,HIGH);
- digitalWrite(digitalPin_2,LOW);
- way = FORWARD;
- }
- else
- {
- digitalWrite(digitalPin_1,LOW);
- digitalWrite(digitalPin_2,HIGH);
- way = BACKWARD;
- }
- }
- //==================================================================
- void CCmotor::switchWay()
- {
- if (way == FORWARD)
- {
- setWay(BACKWARD);
- }
- else
- {
- setWay(FORWARD);
- }
- }
- //===============================================================
- boolean CCmotor::getWay()
- {
- return(way);
- }
- //==================================================================
- int CCmotor::getMotorSpeed()
- {
- return(motorSpeed);
- }
- //==================================================================
- boolean CCmotor::getState()
- {
- return(isON);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement