analog pins
parent
b8ce84263a
commit
3cc0d6a6f3
|
@ -25,7 +25,7 @@ F41Handler::F41Handler() {
|
|||
|
||||
int F41Handler::execute(Command* command) {
|
||||
|
||||
PinControl::getInstance()->writeValue(command->getP(),command->getV());
|
||||
PinControl::getInstance()->writeValue(command->getP(),command->getV(), command->getM());
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -23,7 +23,7 @@ F42Handler::F42Handler() {
|
|||
|
||||
int F42Handler::execute(Command* command) {
|
||||
|
||||
PinControl::getInstance()->readValue(command->getP());
|
||||
PinControl::getInstance()->readValue(command->getP(), command->getM());
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ F44Handler::F44Handler() {
|
|||
|
||||
int F44Handler::execute(Command* command) {
|
||||
|
||||
PinControl::getInstance()->writePulse(command->getP(),command->getV(),command->getW(),command->getT());
|
||||
PinControl::getInstance()->writePulse(command->getP(),command->getV(),command->getW(),command->getT(), command->getM());
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -19,18 +19,48 @@ int PinControl::setMode(int pinNr, int mode) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
int PinControl::writeValue(int pinNr, int value) {
|
||||
digitalWrite(pinNr, value);
|
||||
return 0;
|
||||
int PinControl::writeValue(int pinNr, int value, int mode) {
|
||||
if (mode == 0) {
|
||||
digitalWrite(pinNr, value);
|
||||
return 0;
|
||||
}
|
||||
if (mode == 1) {
|
||||
analogWrite(pinNr, value);
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
int PinControl::readValue(int pinNr) {
|
||||
return 0;
|
||||
int PinControl::readValue(int pinNr, int mode) {
|
||||
|
||||
int value = 0;
|
||||
|
||||
if (mode == 0) {
|
||||
if (digitalRead(pinNr) == 0){
|
||||
value = 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
if (mode == 1) {
|
||||
value = analogRead(pinNr);
|
||||
return 0;
|
||||
}
|
||||
|
||||
Serial.print("R41");
|
||||
Serial.print(" ");
|
||||
Serial.print("P");
|
||||
Serial.print(pinNr);
|
||||
Serial.print(" ");
|
||||
Serial.print("V");
|
||||
Serial.print(value);
|
||||
Serial.print("\n");
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int PinControl::writePulse(int pinNr, int valueOne, int valueTwo, long time) {
|
||||
writeValue( pinNr, valueOne);
|
||||
int PinControl::writePulse(int pinNr, int valueOne, int valueTwo, long time, int mode) {
|
||||
writeValue( pinNr, valueOne, mode);
|
||||
delay(time);
|
||||
writeValue( pinNr, valueTwo);
|
||||
writeValue( pinNr, valueTwo, mode);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -20,9 +20,9 @@ public:
|
|||
static PinControl* getInstance();
|
||||
|
||||
int setMode(int pinNr, int mode);
|
||||
int writeValue(int pinNr, int value);
|
||||
int readValue(int pinNr);
|
||||
int writePulse(int pinNr, int valueOne, int valueTwo, long time);
|
||||
int writeValue(int pinNr, int value, int mode);
|
||||
int readValue(int pinNr, int mode);
|
||||
int writePulse(int pinNr, int valueOne, int valueTwo, long time, int mode);
|
||||
|
||||
private:
|
||||
PinControl();
|
||||
|
|
Loading…
Reference in New Issue