Hírek:

Fontos tudnivalók a migrációval kapcsolatban, Kérlek nézd meg a Régi fórumról új fórumra való költözés

Main Menu

Arduino

Indította gaben, 2025 február 03, 18:09

Előző téma - Következő téma

horcsab

Gondolom azt a regisztert is törölni kellene, amibe az enkóder beolvas. Meg kellene  nézni az encoder.h tartalmát.
myEnc.read() értékét is nullázni kellene.

000000000

felvetem külön változoba ide ugyis bentragad...

if( !digitalRead(BUTTON) ){long del= myEnc.read()/4; del=0; Serial.flush();}

Jozs

Gombnyomás után nullázod, majd beleteszel valamit ( newPosition = myEnc.read()/4; ), utána kiíratod. Miért maradna 0 ?

000000000

Elhagytam az enc lib más megoldással jó lett!
Valami miat nem lehet törölni amit akartam...[#nemtudom]

Devecz Miklós

Nextion kijelzőt használ valaki?

VViktor

Sziasztok. Hogy lehetne átirni,ezt a részt,hogy nem csak egyszer fusson le?

 startButtonState = debounce(lastStartButtonState,button4Pin);
    if (startButtonState != lastStartButtonState)
    {
    Serial.println("Start gomb megnyomva!");
    Serial.print("ido (s) az LED1-en: ");
    Serial.println(time1);
    Serial.print("ido (s) a LED2-en: ");
    Serial.println(time2 / 1000);
    Serial.print("ido (s) a LED3-en: ");
    Serial.println(time3 / 1000);
    startButtonCounter++;
    }
    timeSinceStart = round(millis() / 1000);
    int millisSienceStart = millis();
   
    if(startButtonCounter % 2 == 1)
    {
    if (timeSinceStart > tmpTime && time1 != 0)
    {
    tmpTime = timeSinceStart;
    time1--;
    selectedLed = 1;
    Serial.print ("Megmarado ido LED1: ");
    Serial.println (time1);
    analogWrite(ledPin1, brightnessLvlLED1);
    analogWrite(ledPin2, LOW);
    analogWrite(ledPin3, LOW);
    }
    else if (timeSinceStart>tmpTime && time2 != 0)
    {
    tmpTime = timeSinceStart;
    time2--;
    selectedLed = 2;
    Serial.print ("Megmarado ido LED2: ");
    Serial.println (time2);
    analogWrite(ledPin2, brightnessLvlLED2);
    analogWrite(ledPin1, LOW);
    analogWrite(ledPin3, LOW);
    }
    else if (timeSinceStart>tmpTime && time3 != 0)
    {
    tmpTime = timeSinceStart;
    time3--;
    selectedLed = 3;
    Serial.print ("Megmarado ido LED3: ");
    Serial.println (time3);
    analogWrite(ledPin3, brightnessLvlLED3);
    analogWrite(ledPin1, LOW);
    analogWrite(ledPin2, LOW);
    }
    else if (startButtonCounter % 2 == 1 && time1== 0 && time2 == 0 && time3 == 0)
    {
    Serial.println ("Time is up");
    analogWrite(ledPin1, LOW);
    analogWrite(ledPin2, LOW);
    analogWrite(ledPin3, LOW);
    selectedLed = 0;
    startButtonCounter++;
    }
    }
    if (selectedLed == 1)
    {
    displayNumbers(time1);
    }
    else if
    (selectedLed == 2)
    {
    displayNumbers(time2);
    }
    else if
    (selectedLed == 3)
    {
    displayNumbers(time3);
    }
}

000000000

Csak egy ötlet!

tmpTime = timeSinceStart; kezd el logikát cserélgetni közötte az alapod most=....
Comparison Operators
link

juhasz

void loop-ba teszed.

tja40j54a

sziaszok

mitől lehet az hogy a program feltöltésnél ezt a hibát dobja ki?

Köszi szépen

  

morvfer7

rossz port van kiválasztva

tja40j54a

elméletileg az jólvan beállítva

morvfer7

akkor kicsit részletesebben..
milyen modulról van szó?
az rendesen van kiválasztva?

tja40j54a

jelenleg egy kínából rendelt arduino UNO-m van !
(ez nem tudom mennyire gond  

a képen látszódnak a beállítások

  

morvfer7

ez elvileg jo, de a hibaüzenetnek az elejét is mutasd, mert ott van valami
nyisd nagyobbra az alsó ablakot és gördítsd az elejére

tja40j54a

Hiba üzenetek