• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Brak wyświetlanego tekstu na wyświetlaczu
#1
Jako, że to jest mój pierwszy post na tym forum to witam serdecznie wszystkich użytkowników. 

Dopiero zaczynam się bawić Arduino, parę dni temu przyszły mi podstawowe elementy. 
Korzystałem z TEGO PORADNIKA. Po wgraniu standardowego kodu wyświetlacz jedynie zostaje podświetlony, lecz nie wyświetla się na nim żaden tekst. 
Wygląda to tak:
[Obrazek: IMG_5979dd5da94c62367.jpg]
Nie posiadam do niego potencjonometra (nic takiego nie miałem nawet w zestawie z wyświetlaczem), zapewne dla tego nie mogę ustawić odpowiedniego kontrastu. W powyżej wymienionym poradniku własnie takie wyświetlacz był podpisany jako źle ustawiony pod względem kontrastu. Jest możliwość abym mógł jako ustawić kontrast bez potencjonometra? 
Niżej podaję kod jaki wgrywam (jest on dość krótki i był załączony od razu do wyświetlacza):
Kod:
//Sample using LiquidCrystal library
#include <LiquidCrystal.h>

/*******************************************************

This program will test the LCD panel and the buttons
Mark Bramwell, July 2010

********************************************************/

// select the pins used on the LCD panel
LiquidCrystal lcd(8, 9, 4, 5, 6, 7);

// define some values used by the panel and buttons
int lcd_key     = 0;
int adc_key_in  = 0;
#define btnRIGHT  0
#define btnUP     1
#define btnDOWN   2
#define btnLEFT   3
#define btnSELECT 4
#define btnNONE   5

// read the buttons
int read_LCD_buttons()
{
 adc_key_in = analogRead(0);      // read the value from the sensor 
 // my buttons when read are centered at these valies: 0, 144, 329, 504, 741
 // we add approx 50 to those values and check to see if we are close
 if (adc_key_in > 1000) return btnNONE; // We make this the 1st option for speed reasons since it will be the most likely result
 // For V1.1 us this threshold
/* if (adc_key_in < 50)   return btnRIGHT;  
 if (adc_key_in < 250)  return btnUP; 
 if (adc_key_in < 450)  return btnDOWN; 
 if (adc_key_in < 650)  return btnLEFT; 
 if (adc_key_in < 850)  return btnSELECT;  
*/

 // For V1.0 comment the other threshold and use the one below:

 if (adc_key_in < 50)   return btnRIGHT;  
 if (adc_key_in < 195)  return btnUP; 
 if (adc_key_in < 380)  return btnDOWN; 
 if (adc_key_in < 555)  return btnLEFT; 
 if (adc_key_in < 790)  return btnSELECT;   



 return btnNONE;  // when all others fail, return this...
}

void setup()
{
 lcd.begin(16, 2);              // start the library
 lcd.setCursor(0,0);
 lcd.print("Nacisnij switch"); // print a simple message
}
 
void loop()
{
 lcd.setCursor(9,1);            // move cursor to second line "1" and 9 spaces over
 lcd.print(millis()/1000);      // display seconds elapsed since power-up


 lcd.setCursor(0,1);            // move to the begining of the second line
 lcd_key = read_LCD_buttons();  // read the buttons

 switch (lcd_key)               // depending on which button was pushed, we perform an action
 {
   case btnRIGHT:
     {
     lcd.print("RIGHT ");
     break;
     }
   case btnLEFT:
     {
     lcd.print("LEFT   ");
     break;
     }
   case btnUP:
     {
     lcd.print("UP    ");
     break;
     }
   case btnDOWN:
     {
     lcd.print("DOWN  ");
     break;
     }
   case btnSELECT:
     {
     lcd.print("SELECT");
     break;
     }
     case btnNONE:
     {
     lcd.print("NONE  ");
     break;
     }
 }

}

Będę bardzo wdzięczny za wszelkie rady
 
Odpowiedź
#2
Masz taki niebieski pierdołek, który jest potencjometrem wieloobrotowym i nim ustawiasz kontrast.
Kod jest O.K.
 
Odpowiedź
#3
Okazało się, że miałem źle podpięty wyświetlacz (błędne piny) Smile Ale z tym potencjometrem też prawda jest, także dzięki!
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości