Arduino Polska Forum
Licznik cyfrowy do motocykla - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Piaskownica (https://forum.arduinopolska.pl/dzial-piaskownica)
+--- Wątek: Licznik cyfrowy do motocykla (/watek-licznik-cyfrowy-do-motocykla)

Strony: 1 2


RE: Licznik cyfrowy do motocykla - Szaman5687 - 10-02-2022

dtostrf(_h_, 4, 0, hTemp)
Ta linijka nie przechodzi weryfikacji. A tak w ogóle to przy użyciu hexa nie powinno się też kodować przycisków? Widziałem to gdzieś w przykładzie


RE: Licznik cyfrowy do motocykla - Jarewa0606 - 10-02-2022

To jest mój przykład a nie to co miałeś zrobić. Miałeś zrobić tak


Serial.print("bt0.val=");
Serial.write(0x22);
Serial.print(0);
Serial.write(0x22);
Serial.write(0xff);
Serial.write(0xff);
Serial.write(0xff);


RE: Licznik cyfrowy do motocykla - Szaman5687 - 10-02-2022

Zrobiłem tak:
Kod:
if (lux < 50)

  {

    Serial.print("bt0.val=");
    Serial.write(0x22);
    Serial.print(1);
    Serial.write(0x22);
    Serial.write(0xff);
    Serial.write(0xff);
    Serial.write(0xff);
      digitalWrite(TRIGGER, HIGH);
      Serial.println("lamp is ON");
     
   
       
  }
  else {
    Serial.print("bt0.val=");
    Serial.write(0x22);
    Serial.print(0);
    Serial.write(0x22);
    Serial.write(0xff);
    Serial.write(0xff);
    Serial.write(0xff);
      digitalWrite(TRIGGER, LOW);
      Serial.println("lamp is OFF");
i dalej nic...
Cały czas ta sama sytuacja na MCU Return to widać, a na Simulator Return, że komenda jest nieprawidłowa


RE: Licznik cyfrowy do motocykla - Jarewa0606 - 10-02-2022

wrzuć projekt nextion


RE: Licznik cyfrowy do motocykla - Szaman5687 - 10-02-2022

(10-02-2022, 22:04)Jarewa0606 napisał(a): wrzuć projekt nextion
https://drive.google.com/file/d/1zBScXykcg3bAscQPYHS-erETbRTXNNcK/view?usp=drivesdk


RE: Licznik cyfrowy do motocykla - Jarewa0606 - 11-02-2022

Nie potrzebnie wprowadziłem w błąd bo się coś zmieniło 

To jest prawidłowy kod

Kod:
#include <Wire.h>;
#include <BH1750.h>;


int TRIGGER = 12;


BH1750 lightMeter;
char buffer[100] = {0};


void setup(){
  Serial.begin(9600);
  Wire.begin();
  lightMeter.begin();
  pinMode (TRIGGER,OUTPUT);


}

void loop() {


float lux = lightMeter.readLightLevel();

delay(250);


if (lux < 50)

  {

    Serial.print("bt0.val=");
    Serial.print("1");
    Serial.write(0xff);
    Serial.write(0xff);
    Serial.write(0xff);
      digitalWrite(TRIGGER, HIGH);
 
   
   
     
  }
  else {
    Serial.print("bt0.val=");
    Serial.print("0");
    Serial.write(0xff);
    Serial.write(0xff);
    Serial.write(0xff);
      digitalWrite(TRIGGER, LOW);
 
  }

}

Ale i tak robisz dużo błędów

po pierwsze jak piszesz już kod to nie wysyłaj coś innego na port bo to zakłóca pracę a one nic nie wnoszą do nextion.. 

Po drugie drugi błąd w nextion i to poważny nie opieraj się na na dotyku bt0 bo nie wykona się ten kod jak dane przyjdą po rs

Kod:
if(bt0.val==1)
{
  b0.val=1
  b1.val=1
}else
{
  b0.val=0
  b1.val=0
}

A tym samym kierunkowskazy nie będą migać z awaryjnym to musisz oprzeć o timer


Mi działa ten kod i twój projekt nextion ale mruga tylko przycisk awaryjny


No i po trzecie temat dotyczył o kontrolkach...

Wiec by zmieniać kontrolki dajmy na to światła włacz/wyłaczone to masz dwa wyjścia albo zmiana obrazka

    Serial.print("b5.pic=");
    Serial.print("28");
    Serial.write(0xff);
    Serial.write(0xff);
    Serial.write(0xff);

i wyłączenie

Serial.print("b5.pic=");
    Serial.print("27");
    Serial.write(0xff);
    Serial.write(0xff);
    Serial.write(0xff);


Ale to zakłuci ci pracę z dotykiem i proponował by zmianę z bution na dual-state-bution ewentualnie wszystko oprzeć o timer i zmienne val.


RE: Licznik cyfrowy do motocykla - Szaman5687 - 12-02-2022

Właśnie sprawdziłem wszystko działa, jesteś najlepszy :D
Nie zamykam jeszcze wątku bo jak ogarnę sobie te kontrolki ze stycznikami to marzy mi się wykorzystać prędkościomierz ten przy motocyklu bo jest cyfrowy. Niby kupiłem czujnik szczelinowy ale byłoby dużo roboty z tym żeby on funkcjonował przy motocyklu.