Skocz do zawartości

Pomocna odpowiedź

(edytowany)

u mnie nic nie ma, nawet nie wiem gdzie tej biblioteki w folderach szukać. Po prostu zainstalowałem tu...obraz.thumb.png.98915f4bb396530d5f849af69aba33fc.png

dodałem z bocznego panelu i teraz wyświetla mi tak...

 obraz.thumb.png.a6cca81735a0e169aabe9c762c3fd34b.png

o to chodziło?

 

 

nie doczytałem, że plik też dokleiłeś 🙂 teraz ogarnięte

Edytowano przez galik19871987

@galik19871987 no bdobra sprawdezimy czy to ta wersja... wgraj na ARDU ten kod...tylko nie przepisuj... skopiuj wklej 

#include <TM1638plus.h>


#define  STROBE_TM 2 
#define  CLOCK_TM 3  
#define  DIO_TM 4 
bool high_freq = false; 

int x = 120;
int y = 120;

TM1638plus tm(STROBE_TM, CLOCK_TM , DIO_TM, high_freq);

void setup()
{
 
  tm.displayBegin();

}

void loop()
{
    Test7();  
    x--;
    y--;
    delay(700);
}



void Test7() {
  tm.reset();
  tm.DisplayDecNumNibble(x, y, false, TMAlignTextRight); // "  43" " 991" , right aligned, NO leading zeros
  
}

 

  • Lubię! 1
(edytowany)

No to leć...podepnij wszystko tak jak miałeś na schemacie który dawałeś 

 

Ps...jedynie pin D0 czujnika halla podłącz do pinu 12 arduino

Edytowano przez farmaceuta
  • Lubię! 1

@galik19871987 wgraj ten kod i zobacz czy zmienia sie wartosc podczas krecenia potencjometru  

#include <TM1638plus.h>


#define  STROBE_TM 2 
#define  CLOCK_TM 3  
#define  DIO_TM 4 

bool high_freq = false; 


int MIN = 100;
int MAX = 300;
int TIME_UP = 5;
int TIME_DOWN = 5;
int PIN_HALL = 12;
int CLEN_OBR = 15;
int R1 = 6;
int R2 = 7;
int MAX_OBR = 20;
int MIN_OBR = 50;


int stan = 0;
int stan1 = 0;
int stan2 = 0;
int stan3 = 0;
int stan4 = 0;
int stan5 = 0;
int stan6 = 0;
int stan7 = 0;

int obr_pot;
int obr;
int kopia_obr_pot;
int kopia_obr;
int obr_nastawa;

long time_obr;
long time_zero;
long last_up;
long last_down; 

TM1638plus tm(STROBE_TM, CLOCK_TM , DIO_TM, high_freq);


void setup() {
  pinMode(R1, OUTPUT);
  pinMode(R2, OUTPUT);
  pinMode(PIN_HALL, INPUT_PULLUP);
  
  tm.displayBegin();
}

void loop() {
  obr_pot = map(analogRead(A0), 0, 1023, MIN, MAX);

  if (digitalRead(PIN_HALL) == HIGH && stan == 0) {
    stan = 1;
    time_obr = millis();
    time_zero = millis();
    delay(30);
  } else if (digitalRead(PIN_HALL) == LOW && stan == 1) {
    stan = 2;
    time_zero = millis();
  } else if (digitalRead(PIN_HALL) == HIGH && stan == 2) {
    stan = 0;
    obr = 60000 / (millis() - time_obr);
    time_zero = millis();
  }

  if (millis() - time_zero >= (CLEN_OBR * 1000) && stan7 == 1) {
    stan7 = 0;
    obr = 0;
    time_zero = millis();
  }

  lcd();
  sterowanie_silownik();
}


void lcd() {
  if (obr != kopia_obr || obr_pot != kopia_obr_pot) {
    kopia_obr = obr;
    kopia_obr_pot = obr_pot;
    tm.reset();
    tm.DisplayDecNumNibble(obr, obr_pot, false, TMAlignTextRight); // "  43" " 991" , right aligned, NO leading zeros
  }
}


void sterowanie_silownik() {

  if (obr > (obr_nastawa + MAX_OBR) && stan1 == 0) {
    last_up = millis();
    stan1 = 1;
  } else if (obr > (obr_nastawa + MAX_OBR)) {
    stan2 = 1;
  } else {
    stan2 = 0;
    stan1 = 0;
  }

  if (millis() - last_up >= (TIME_UP * 1000) && stan2 == 1) {
    silownik_up();
    stan5 = 1;
    stan6 = 0;
  } else if (stan5 == 1) {
    silownik_stop();
    stan5 = 0;
  }



  if (obr < (obr_nastawa - MIN_OBR) && stan3 == 0) {
    last_down = millis();
    stan3 = 1;
  } else if (obr < (obr_nastawa - MIN_OBR)) {
    stan4 = 1;
  } else {
    stan4 = 0;
    stan3 = 0;
  }

  if (millis() - last_down >= (TIME_DOWN * 1000) && stan4 == 1) {
    silownik_down();
    stan5 = 0;
    stan6 = 1;
  } else if (stan6 == 1) {
    silownik_stop();
    stan6 = 0;
  }





}


void silownik_up() {
  digitalWrite(R1, HIGH);
  digitalWrite(R2, LOW);
}

void silownik_down() {
  digitalWrite(R1, LOW);
  digitalWrite(R2, HIGH);

}

void silownik_stop() {
  digitalWrite(R1, LOW);
  digitalWrite(R2, LOW);
}

 

  • Lubię! 1

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...