ДМРВ корректор М50
Добавлено: 11 июн 2017, 12:40
Прошивку не проверял,но та что была в минус ,с уменьшение значения тупила,но работала,а тупила при переходе на холостой ход.
/*
* dmrvcorector
*/
#include <EEPROM.h>
int potPin = 2; // выход дмрв подключается к 2-му порту
int ledPin = 9; // выход на дме подключается к digital pin 9
int DMRVPin = 10;
int DMRVvoltPin = 11;
int val = 0;
int val1 = 0;
int val2;
int val3;
int zika = 1;
int zika2 = EEPROM.read(10);
// переменная для хранения значения входного напряжения
void setup()
{
Serial.begin(115200);
pinMode(A2, INPUT);
pinMode(8, INPUT_PULLUP);
pinMode(7, INPUT_PULLUP);
pinMode(6, INPUT_PULLUP);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
}
void loop()
{
val = analogRead(potPin); // считываем значение с дмрв
val1 = val/4; // конвертируем из 0-1023 к 0-255
analogWrite(ledPin,val2); // устанавливаем значение в дме
analogWrite(DMRVPin,val3);
analogWrite(DMRVvoltPin,val3);
Serial.println(zika2);
val2 = val1 + zika;
val3 = val1 + zika2;
if(digitalRead(8)==LOW){
zika--;
delay(300);
EEPROM.write(10, zika);
zika2 = EEPROM.read(10);
}
if(digitalRead(7)==LOW){
zika++;
delay(100);
EEPROM.write(10, zika);
zika2 = EEPROM.read(10);
if(zika>=256){
zika=0;
}
}
}
/*
* dmrvcorector
*/
#include <EEPROM.h>
int potPin = 2; // выход дмрв подключается к 2-му порту
int ledPin = 9; // выход на дме подключается к digital pin 9
int DMRVPin = 10;
int DMRVvoltPin = 11;
int val = 0;
int val1 = 0;
int val2;
int val3;
int zika = 1;
int zika2 = EEPROM.read(10);
// переменная для хранения значения входного напряжения
void setup()
{
Serial.begin(115200);
pinMode(A2, INPUT);
pinMode(8, INPUT_PULLUP);
pinMode(7, INPUT_PULLUP);
pinMode(6, INPUT_PULLUP);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
pinMode(11, OUTPUT);
}
void loop()
{
val = analogRead(potPin); // считываем значение с дмрв
val1 = val/4; // конвертируем из 0-1023 к 0-255
analogWrite(ledPin,val2); // устанавливаем значение в дме
analogWrite(DMRVPin,val3);
analogWrite(DMRVvoltPin,val3);
Serial.println(zika2);
val2 = val1 + zika;
val3 = val1 + zika2;
if(digitalRead(8)==LOW){
zika--;
delay(300);
EEPROM.write(10, zika);
zika2 = EEPROM.read(10);
}
if(digitalRead(7)==LOW){
zika++;
delay(100);
EEPROM.write(10, zika);
zika2 = EEPROM.read(10);
if(zika>=256){
zika=0;
}
}
}