Arduino UNO & 16×2 LCD (PCM1602B)

Arduino gibi bir sistemle çalışırken, sistemin ne yaptığından haberdar olmak gerektiğinde bunu led, buzzer, 7 Segment Display gibi sınırlı durumları bildiren elemanlar yeterli gelmediğinde bir çok bilgiyi almanın en kolay yollarından birisi LCD ekran kullanmak.
Piyasada bir çok çeşit karakter LCD ekran bulmak mümkün.

Tabi bulduğumuz her LCD arduino örnekleri ile aynı özelliklerde olmayabiliyor.

Arduino ile çalışırken en çok dikkat ettiğim konu örneklerle uyumlu ek parçalar temin edebilmek, böylece elemanı çözümlemek için zaman kaybetmemek ama herzaman bu olmayabiliyor. Biraz araştırınca arduino örneklerinde gösterilen 16×2 HD44780 LCD Ekranı bulmak pek mümkün olmadı. Öyle ya da böyle bir yolunu bulurum diyerek piyasadaki standart bir 16×2 LCD ekranı aldım ve ilk iş olarak LCD ekranın Data Sheet”ini aramaya koyuldum. Bulabildiğim sadece bir sayfadan oluşan bağlantı bilgilerini gösteren sayfaydı. İşin ehli tecrübeli kişilen için yeterli olan bu sayfa benim gibi acemiler için oldukça zorlu geçecek bir devrenin göstergesiydi. Örnekleri breadboard üzerinde oluşturduğumdan öncelikle LCD”nin breadboard”a düzgün şekilde oturtulması gerekiyordu. Bir kaç uğraşma sonunda bu işin lehim kullanmadan olmayacağını anlayıp çok uzun zamandır kullanmadığım havyamı ve lehim telimi bulup erkek header”ı LCD”ye lehimledim.

16×2 LCD’ye Erkek Header’ı Lehimliyoruz.

Ardından örnekteki LCD devresini kuruyoruz.

Arduino UNO ile 16×2 LCD Bağlantısı

Burada dikkat edeceğimiz nokta LCD”nin pinlerinin sıralı olmaması. benim gibi sıralı olmayan şeyleri karıştırıyorsanız ekteki fotoğrafa bakarak sorunsuz şekilde bağlantıyı gerçekleştirebilirsiniz.

16×2 LCD’nin Arka Tarafı

Yazılım yüklendiğinde LCD”de görmeyi beklediğim karakterler yerine okunamayan abuk subuk değerlerin olduğunu görünce uzak doğu ürünlerinin dışında ürün bulmanın nerdeyse imkansız olduğu bir ülkede arduino gibi tüm örnekleri amerika, avrupa piyasası ürünlerinden oluşan sistemle uğraşmanın zorluklarını düşünmeye dalıyordum ki bir örnekte farklı LCD kullanımında yapılması gereken değişiklikleri gösteren notu buldum 🙂

Kısmını

şeklinde değiştiriyoruz.

Arduino UNO - 16x2 online casino  LCD Yazılımı:
// Arduino Turkiye 16x2 LCD ornegi
#include <LiquidCrystal.h>

// Orjinal LCD Ornegindeki kısım bu sekilde degistirilmeli:
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

void setup(){
  lcd.begin(16,2);
}

void loop(){
  lcd.clear(); 
  lcd.setCursor(6,0);
  lcd.print("cCc"); 
  lcd.setCursor(0,1);
  lcd.print("Arduino Turkiye");
  delay(15000);
}

Hemen taslakta bulunan pin değerlerini değiştirip yeniden uno”ya yükledim. Ve karşımızda ilk yazımız:

Arduino Uno ile 16×2 LCD

Kullandığımız potansiyometre ile yazının kontrastını ayarlayabiliyoruz. Arduino üzerindeki sensörlerden, yaptığımız işlemlerden her türlü çıktıyı 16×2 ekran üzerinde görüntülememiz mümkün. Karakter ekranın kullanımı oldukça basit. lcd.clear(); komutu ile ekranı temizliyoruz. lcd.setCursor(6,0); komutu ile imleci istediğimiz karakter kutusuna konumlandırıyoruz. Burada (6,0) değeri ilk satırın 6 karakter kutusuna konumlanıldığını gösteriyor. lcd.print(“cCc”); komutu ile imlecin konumlandığı yerden yazmaya başlıyoruz. her karakter bir karakter kutusu kullanıyor. lcd.setCursor(0,1); ile ikinci satırın ilk karakter kutusuna konumlanıyoruz. lcd.print(“Arduino Turkiye”); komutu ile ekranda Arduino Turkiye yazısını görüntülüyoruz. Standart LCD kütüphanesi Türkçe karakterleri desteklemiyor 🙂 Tabi bu Türkçe karakterleri yazamayacağımız anlamına gelmiyor. Her karakter kutusunu byte değer dizisi ile istediğimiz gibi kullanabiliyoruz. bunun için biraz kod yazmamız gerekiyor ama LCD kullanımının güzellikleri için buna değiyor.

ü harfi yazmak için örnek:
byte newChar[8] = {
    B01010,
    B00000,
    B10001,
    B10001,
    B10001,
    B10011,
    B01101,
    B00000
};

kod içerisinde her hangi bir değeri LCD”de görüntülemek istediğimizde yapmamız gereken sadece imleci konumlandırmak ve değeri lcd.print ile değerimizi LCD”ye göndermek.

Kaan Ceyhan

Make Magazine tutkunu, otomasyon sistemleri sevici. Özgür yazılım & donanım destekçisi, vasıfsız işçi. Kuş ve böcek hayranı.

64 comments

  1. […] yazmış olduğum Arduino UNO ile 16×2 LCD (PCM1602B) kullanımı ile ilgili yazıyı Arduino Türkiye sayfasında bulabilirsiniz. yazının önemli […]

  2. […] Arduino UNO & 16×2 LCD (PCM1602B) Kategoriler […]

  3. Hasan dedi ki:

    Merhaba,

    DHT22 sıcaklık&nem sensörü verilerini LCD ye yazdırmak istiyorum fakat henüz bu konuda çok yeniyim. Bağlantı şekilleri ve kodlar hakkında bana yardımcı olabilir misiniz?

  4. kaanceyhan dedi ki:

    bu konuda örnek bir yazıyı ilerleyen zamanda yayınlayacağım.
    kısaca açıklayayım, lcd’ye print komutu ile değer gönderebildiğmiz için, DHT22’den okunan ve değişkene atanmış olan sıcaklık, nem bilgilerini yine print komutu ile gönderebilirsiniz. bununla ilgili örnek kodu aşağıya kopyalıyorum. daha sonra yazı olarak yayınlarız.

    #include <OneWire.h>
    #include <SHT1x.h>
    #include <LiquidCrystal.h>
    //#include <stdio.h>
    
    int DS18S20_Pin = 2; //DS18S20 Signal pin on digital 2
    int dataPin=3;
    int clockPin=4;
    
    //Temperature chip i/o
    OneWire ds(DS18S20_Pin);  // on digital pin 2
    SHT1x sht1x(dataPin, clockPin);
    LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
    
    void setup(void) {
      Serial.begin(9600);
      Serial.println("Starting up");
    }
    
    void loop(void) {
      float temp_c;
      float temp_f;
      float humidity;
      float temperature = getTemp();
    //  char chrtemp[5];
      
      // Read values from the sensor
      temp_c = sht1x.readTemperatureC();
      temp_f = sht1x.readTemperatureF();
      humidity = sht1x.readHumidity();
      
      Serial.print("DS18B20 Temp: ");
      Serial.println(temperature);
      
      // Print the values to the serial port
      Serial.print("Temperature: ");
      Serial.print(temp_c, DEC);
      Serial.print("C / ");
      Serial.print(temp_f, DEC);
      Serial.print("F. Humidity: ");
      Serial.print(humidity);
      Serial.println("%");
      
      lcd.begin(16, 2);
      lcd.write(0);
      lcd.clear(); // Clear the display
      lcd.setCursor(0,0);
      lcd.print("S1: "); 
      lcd.print(temp_c); 
      lcd.print((char)223); 
      lcd.print("C ");
    //  lcd.print("N: ");
      lcd.print("N%");
      lcd.print(humidity);
      lcd.setCursor(0,1);
      lcd.print("S2: ");
      lcd.println(temperature);
      lcd.setCursor(9,1);
      lcd.print((char)223); 
      lcd.print("C"); 
      delay(2000); //just here to slow down the output so it is easier to read
      
    }
    
    
    float getTemp(){
      //returns the temperature from one DS18S20 in DEG Celsius
    
      byte data[12];
      byte addr[8];
    
      if ( !ds.search(addr)) {
          //no more sensors on chain, reset search
          ds.reset_search();
          return -1000;
      }
    
      if ( OneWire::crc8( addr, 7) != addr[7]) {
          Serial.print("CRC is not valid!\n");
          return -1000;
      }
    
      if ( addr[0] != 0x10 && addr[0] != 0x28) {
          Serial.print("Device is not recognized");
          return -1000;
      }
    
      ds.reset();
      ds.select(addr);
      ds.write(0x44,1); // start conversion, with parasite power on at the end
    
      byte present = ds.reset();
      ds.select(addr);    
      ds.write(0xBE); // Read Scratchpad
    
      
      for (int i = 0; i < 9; i++) { // we need 9 bytes
        data[i] = ds.read();
      }
      
      ds.reset_search();
      
      byte MSB = data[1];
      byte LSB = data[0];
    
      float tempRead = ((MSB << 8) | LSB); //using two's compliment
      float TemperatureSum = tempRead / 16;
      
      return TemperatureSum;
      
    }
    
    
  5. lol dedi ki:

    ccc ne lan 😀 sesli güldüm

  6. Kenan SATIR dedi ki:

    Sondan üçüncü satır :

    float tempRead = ((MSB << 8) | LSB);

    Şeklinde olacaktır…

  7. Kenan SATIR dedi ki:

    sistem aynı sonucu verdiği için yazamıyorum. Gülen arkadaş yerine 8 rakamı gelecektir.

  8. Ömer dedi ki:

    paylaşım için çok teşekkür ederim ben winstar 12864a marka ve model 128×64 glcd kullanacağım bir projem var ve bunu arduino mega kullanarak yapmak istiyorum fakat kütüphanesini yüklememe rağmen bir sonuç alamadım acaba yardımınız mümkün mü ?

  9. Ahmet dedi ki:

    Merhabalar, ben uzun birşey yazmak istiyorum 1. cümleyi yazıyorum fakat 2. cümleye nasıl geçeceğimi bulamadım bir türlü yardımcı olabilir misiniz ?

  10. Ufuk dedi ki:

    AYNISINI YAPTIM OLDU SAOLASIN :d

  11. KADİR dedi ki:

    MERHABALAR BU RESİMDEKİ DİSPLAYİN PİN NUMARALARINI NASIL BULABİLİRİZ.

  12. KADİR dedi ki:

    BEN BU PROJEYİ PROTEUS İSİS PROGRAMINDA ATMEGA328 ENTEGRESİYLE DENİYORUM AMA BİR TÜRLÜ ÇALIŞTIRAMADIM YENİYİM BU İŞTE YARDIM EDEBİLİRMİSİNİZ.TEŞEKKÜRLER ŞİMDİDEN.

  13. kaanceyhan dedi ki:

    kadir merhaba;
    örnekte gösterilen LCD’nin pin dizilimi bu fotoğrafta görülüyor:
    http://arduinoturkiye.com/wp-content/uploads/DSC01070.jpg
    arduino’ya bağlantı şekli de bu:
    http://arduinoturkiye.com/wp-content/uploads/Uno_16x2_LCD_bb.jpg
    standart kütüphane kullanıyorsan yukarıda anlatılan pin değişikliğini yapman gerekli.

  14. Someone dedi ki:

    cCc 😀
    Rüyamda dedemi gördüm, arduino’ya LCD bağlamış ıslık çalıyordu

  15. gökhan2020 dedi ki:

    ben daha yeniyim arduinoda arduino unu kartım var ve mavi renk lcd var bağlamaya çalışıyorum fakat ışık oluyor ama yazı göremiyorum ne yapmalıyım

  16. kaanceyhan dedi ki:

    Gökhan merhaba,
    Öncelikle bu tür soruları forumda sorman daha hızlı ve detaylı cevap almanı sağlayacaktır.
    Soruna gelince muhtemelen kontrast ayarı ile ilgili sorun yaşıyorsun. Potansiyometreyi değiştirmeni ya da direk 10k ohm’luk bir direnç kullanmanı öneririm. Eğer problemi çözemezsen http://forum.arduinoturkiye.com a uğra 🙂

  17. onur dedi ki:

    saygı deger abilerim kardeşlerim benim proje ödevim var http://www.instructables.com/id/Arduino-Bike-Speedometer/?ALLSTEPS
    bu hız ölçeri yapacam kullanılan lcd den yoktu bulamadım elimdeki lcd CA1602h sizden ricam bu konu hakkında bana yardımcı olursanız sevinirim mezun olucam olamıyom 🙁 bu devrenın bendeki lcd ye bağlantısını bide yazılımını yazarsanız çok sevinirim hergün dua ederim 🙁 yazılımı yazılmış yanlız düzenlemeler gerekıyor galiba 🙁

  18. Ömer Koman dedi ki:

    onur verdiğin şemada serial lcd kullanılmış kullanma onu, bu yazı gayet açıklayıcı olmuş kaan gayet detaylı anlatmış,bu yazıdakileri deneyip yapamadığın kısmı sorsan daha iyi olurdu yetmezse şurada http://arduinoturkiye.com/arduino-temel-baglantilar-arduino-basic-connections/ 11 nolu grafikle de anlatılıyor elindeki lcd yi bunlardan faydalanarak kullanabilirsin. yetmezse şurada da var http://fritzing.org/projects/how-to-connect-a-qy-1602a-lcd-to-arduino-correctly/. kullanmak istediğin devre A0 portuna bağlı reed anahtarı saymak veya sürelerini ölçmekten ibaret. sonucu ister bilgisayardan göster ister lcd den farketmez. gördüğün her yazının altına giriş yapman gereksiz sadece bir tanesi yeterli. forumdan da faydalanabilirsin. ha ben projeyi size yaptırmak istiyorum diyorsan kusura bakma …

  19. Oguz dedi ki:

    Kontrast ayarı yapmak için illaki potansiyometre gerekiyor mu? Potansiyometre hariç devreyi kurdum fakat yazı görünmüyor ekranda ama LCD nin ışığı yanıyor

  20. Ömer Koman dedi ki:

    oguz potansiymetre her nekadar kontrast gibi kullanılsa da aslında lcd çalışma prensibine göre çalışma voltajını ayarlamak için konmuştur potu koymazsan lcd ye voltaj gitmez ve sadece lcd aydınlatma ledi yanar. potun yoksa 2 adet dirençle devreyi tamamlamalısın direnç değerleri toplamda potun değeri kadar olmalıdır. birde elektronik bir devre şemasında malzeme tasarrufu veya eksikliğine gidilemez. bu devrede zararı yok ama başka bir devrede bir direnç yüzünden tüm devren yanabilir veya herşey çalışmaz olur.

  21. demir dedi ki:

    Devreyi yukarıda anlatıldığı gibi kurdum. Ama lcd den aldığım görüntü; potla oynadıkça en üst satır ya kare kare gözüküyor ya da hiç yazı gözükmüyor. Hatam ne olabilir? Aynı sorunu yaşayan var mı?

    not:lcd aynı pcm1602b-fl, 10k pot kullanıyorum.

    • Ömer Koman dedi ki:

      devrendeki bağlantıları tekrar kontrol et en yukarıda ekrana “ccc arduino turkiye” yazan örneği yükle sadece, çalışması lazım. datasheete baktım cam kısmı önde iken pinler aşağıda dizilim 14…1 15 16 şeklinde buna dikkat ettin mi?

      • demir dedi ki:

        Teşekkürler ilginiz için.
        Devreyi tekrar kurduğumda sonuca ulaşabildim. Bir şeyi kaçırmış olmalıyım.
        İyi çalışmalar…

  22. ömer kabil dedi ki:

    ÖMER BEY merhaba ben bilgisayar Programcılığı ikinci sınıf öğrencisiyim Bi Konu İçin Sizinle İletişime Geçmek İstiyorum.Yardımcı olursanız çok memnun kalıcam.

  23. Ömer Koman dedi ki:

    proje desteği gibi konularda vakitsizliğimden dolayı yardımcı olamıyorum. mevcut veya yeni bir projeniz varsa foruma konuyu yazın birileri mutlaka uğraşmıştır yardım gelir.

  24. İlker dedi ki:

    Merhabalar,
    http://www.direnc.net/4X20-Lcd-Display-TC2004A-Mavi,PR-13679.html
    Ben yukarıdaki linkte bulunan lcd ile yazı yazmaya çalışıyorum. ilgili satırda değişiklik yaptım ama hala yazı çıkmadı. tüm karakterler yerinde içi dolu kareler çıkıyor. yardımcı olursanız sevinirim.

  25. Ömer Koman dedi ki:

    o lcd, kontroler olarak splc78d01 kullanır bu kodla kullanamazsınız. hitachi HD44780 uyumlu olan bir lcd ile deneyin. şurada http://pdf1.alldatasheet.com/datasheet-pdf/view/126648/ETC1/SPLC780D.html kontrolor datasheet var komutlar hitachiye benziyor belki çalışır. pin numarası yerine bacakların isimlerine göre bağlantıları yapmayı deneyin. rs rw enable d4 d5 d6 d7 isimli bacakları şemedaki ilgili yere bağlayarak deneyin. pin numaraları çok yanıltıcıdır bu tip lcd lerde.

  26. İlker dedi ki:

    Öncelikle yardımlarınız için teşekkürler.
    Arduino Mega ile TFT LCD sürmeye çalışıyoruz.
    http://forum.arduino.cc/index.php?topic=101029.0
    Anlatımını kullanarak LCDyi çalıştırdım fakat yazı yazdırmada problem çıktı.
    Benim TFT LCDim: Winstar WF35DTIBCDE#
    işlemcisi: SSD1963
    yardımcı olabilirseniz sevinirim.

  27. Ömer Koman dedi ki:

    örnek aldığınız grafik işlemci ssd1289 ama hedef işlemciniz ssd1963. grafik işlemciler tam tutmazsa kesinlikle çalıştıramazsınız. ssd1963 için yazılmış bir lib bulmalısınız. bişeyin arduino için (hatta uno veya mega bile farkeder) lib/kütüphanesinin olup olmadığına bakmadan neden alırsınızki ? hangi kafayla bu işlere girersiniz anlamam bende. bu kadar basit mi?

  28. celil dedi ki:

    16×2 lcd ekranı bağladım bağlantıları kontrol ettim ışık yanıyor fakat yazı gelmiyor yardımcı olurmusunuz…

  29. hakan dedi ki:

    herekese merhaba.benım proje odevı hazırlamm gerekıyo ve hala n yapacagıma karar vermedım bana yardımcı olursanız cok sewınırım ıyı gunler.

  30. oguzz dedi ki:

    İyi günler , ben sıcaklık artışı ile farklı sayıda ledi breadbord üzerinde yakmak istiyorum ama yeni olduğum için yapamıyorum. örneğin 20 derecede 1 ışık 20-40 derece arasında iki ışık gibi . yardımcı olabilir misiniz ?

  31. Mehmet Fatih Kızıltan dedi ki:

    Bu ekran kullanılarak DHT11 ile ölçüm yapacağım ancak program derlenirken hata veriyor. Yazdığım program şu şekilde;
    #include
    #include “dht11.h” // DHT11 kütüphanesini ekliyoruz.

    #define DHTPIN 7

    dht11 DHT11;
    LiquidCrystal lcd (12, 11, 5, 4, 3, 2);

    void setup () {
    Serial.begin (9600);
    lcd.begin (16, 2); // 2 satır 16 karakter anlamına geliyor.
    lcd.print (“Sistem Çalışıyor…”);
    dht11.begin ();
    }

    void loop(void) {
    float h = dht11.read(Humidity);
    float t = dht11.read(Temperature);
    if (isnan(t) || isnan(h)) {
    Serial.println (“DHT11 Okunamadı!”);
    }

    else {
    lcd.setCursor (0,0);
    lcd.print (“Sıcaklık= “);
    lcd.print (t);
    lcd.print (” *C”);
    lcd.setCursor (0,1);
    lcd.print (“Nem= “);
    lcd.print (h);
    lcd.print (“% “);
    delay(2000);
    }
    }

  32. Mehmet Ali dedi ki:

    Saygdeger arkadaşlar, arduino ile 16×2(1602b) lcd baglantılarını potansiyometre ile yapmama ragmen lcd nin ısıgı yanıyor fakat ekrana istedigim degerleri yazdıramıyorum.Bir yardımcı olursanız sevinirim..

  33. İlker Ertürk dedi ki:

    İyi günler. Rc522 rfid setiyle kart tanıma sistemi yapıp hangi kartı okuttugumu lcd displayde gösteren bi program yaptım. Program baslangıcında lcdye yazdırdıgım kelimeler sorunsuz ekranda belirirken (“Rfid Reader” / “Kartı Okutunuz” … gibi) kartı okuttuktan sonra “Rfid card is detected” yazısı beklerken “£@#~” gibi ifadeler eknrada beliriyor. Sebebi ne olabilir. Teşekkür ederim.

  34. İlker Ertürk dedi ki:

    Bu da kod kısmı:

    #include
    #include
    #include

    #define SS_PIN 10
    #define RST_PIN 9

    RFID rfid(SS_PIN, RST_PIN);

    LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

    int serNum0;
    int serNum1;
    int serNum2;
    int serNum3;
    int serNum4;

    void setup()
    {
    Serial.begin(9600);
    lcd.begin(16,2);

    lcd.setCursor(0, 0);
    lcd.print(“RFID Reader”);
    lcd.setCursor(0, 1);
    lcd.print(“By illkerr”);

    delay(2000);

    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(“Scan your tags”);
    delay(1000);
    lcd.clear();
    SPI.begin();
    rfid.init();

    }

    void loop()
    {

    if (rfid.isCard())
    {
    if (rfid.readCardSerial())
    {
    if (rfid.serNum[0] != serNum0
    && rfid.serNum[1] != serNum1
    && rfid.serNum[2] != serNum2
    && rfid.serNum[3] != serNum3
    && rfid.serNum[4] != serNum4)
    {

    if (rfid.serNum[0] == 124
    && rfid.serNum[1] == 88
    && rfid.serNum[2] == 95
    && rfid.serNum[3] == 116
    && rfid.serNum[4] == 15)
    {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(“Rfid card is”);
    lcd.setCursor(0, 1);
    lcd.print(“Detected”);
    }

    else if (rfid.serNum[0] == 19
    && rfid.serNum[1] == 47
    && rfid.serNum[2] == 189
    && rfid.serNum[3] == 169
    && rfid.serNum[4] == 40)
    {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(“Rfid Card(Blue)”);
    lcd.setCursor(0, 1);
    lcd.print(“is Detected”);
    }

    else
    {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print(“Rfid Card”);
    lcd.setCursor(0, 1);
    lcd.print(“is not found”);
    }
    }

    rfid.halt();
    }
    }
    }

  35. İlker Ertürk dedi ki:

    Çözümü kısmen buldum arkadaslar 🙂

    Eğer Lcd ekrana tekrardan yazı göndermek istiyorsak SPI buslarını kapatmak gerekiyor.

    Bunun için de SPI.end() komutunu eklemek gerekiyor reader la işimiz bittikten sonra.

    Yani kodumuz şöyle düzeltmek gerekirse;
    if (rfid.serNum[0] == 124
    && rfid.serNum[1] == 88
    && rfid.serNum[2] == 95
    && rfid.serNum[3] == 116
    && rfid.serNum[4] == 15)
    {
    SPI.end();
    lcd.begin(16,2);

    lcd.setCursor(0, 0);
    lcd.print(“Rfid card is”);
    lcd.setCursor(0, 1);
    lcd.print(“Detected”);

  36. Fatih Göçmen dedi ki:

    Merhaba Hocam LCD Projelerinde Kullanmak Üzere Linkteki LCD yi Kullanmak İstiyorum Fakat Yaptığım Devre piyasadaki standart bir 16×2 LCD ekran larda Sıkıntısız Calısıyor Fakat Bu LCD de Calıstıramıyorum. Pin Bağlantıları düzgün fakat kütüphanemde değiştirmem gereken yerler var heralde.

    http://winstar.com.tw/detail_view.php?pd_num=WH&pd_nu2=1202A
    http://www.kosmodrom.com.ua/pic/WH1202A-NGG-CT-1.jpg

  37. ahmet dedi ki:

    girilen bir yazıdaki(string) sesli harfleri hangisinde kaç tane var oldugunu bulan ve akrana yazdıran program lazım yarın 2 ye kadar bile arkadasın yardımcıolabılırmı (yapılan iyilik karsılıksız kalmaz) ahmet_64100_43@hotmail.com

    • Ömer Koman dedi ki:

      Hemen foruma gel birileri gorur yardim eder sen de biraz yaz biseyler ustune tamamlayan cikar. Onemli olan baslamak. Hatta soyle yap sadece bir harfi ara string icinde onu say gerisi kolay

  38. ahmet dedi ki:

    /*

    */

    void setup()
    {

    Serial.begin(9600);
    }

    int sayac = 0;

    void loop()
    {
    Serial.print(“Seri haberlesme: “);
    Serial.println(sayac);
    sayac++;
    delay(1000);
    }
    main()
    {

    int a,b;
    char ch;
    printf(“bir harf giriniz”);
    scanf(“%c”,&ch);
    if (ch==a)

    printf(“sesli”);
    else
    if (ch==’a’)
    printf(“sesli”);
    else
    if (ch==’e’)
    printf(“sesli”);
    else
    if (ch==’ı’)
    printf(“sesli”);
    else
    if (ch==’i’)
    printf(“sesli”);
    else
    if (ch==’o’)
    printf(“sesli”);
    else
    if (ch==’ö’)
    printf(“u”);
    else
    if (ch==’ü’)
    printf(“sesli”);
    else
    if (ch==’u’)
    printf(“sesli”);
    else
    printf(“sessiz”);

    }
    YAPTIM SANKİ HOCAM

  39. ahmet dedi ki:

    HOCAM OKUYORUM ARTI ÇALIŞIYORUM AMA BİŞİLER YAPMAYA ÇALISIYORUM ELİMDEN GELENİ YAPMAYA CALISIYORUM

  40. ebubekir dedi ki:

    öncelikle emekleriniz için çok teşekkürler hocam
    ben sizin kurduğunuz şekilde devreyi kurdum hatta isis de de kurup çalışıp çalışmadığını kontrol ettim isisde çalıştırdım fakat board üzerinde lcd yanıyor lakin çıktı olarak alt satırın hepsi kare şeklinde bir şekil veriyor yardımcı olabilirseniz sevinirim şimdiden teşekkürler

  41. Yahya dedi ki:

    arkadaşlar telefon pin kodu yapmam gerekiyor yardımcı olabilir misiniz nasıl bi yol izlemeliyim

  42. eray dedi ki:

    anlatım için teşekkürler benim potansiyometrem yok daha başlamgıç seviyesindeyim dirençlerle devreyi nasıl tamamliyacağım anlatırmısınız acaba

    • Ömer Koman dedi ki:

      uygun bir pot koymanız lazım standart direnç değerleri ile zor olur. denemek istiyorsan potun çalışma prensibini biliyorsundur potun değerine göre iki baştan öçünce 10k veya 4.7k gibi bir değer olur (4.7k lık bir potsa) orta pinden baştaki pinleri ölçtüğünde 0k ile 4.7 k arasında değişen değerler görürsün. birde elektroniklte pazarlık olmaz o devrede ne gerekirsa o değerde malzeme konur veya ayarlanır eksik devre ile bir yer varamazsın.

  43. ömer atıcı dedi ki:

    iyi günler benim problemim arduino lcd uygulamasında bir sayım işlemini lcd ye yazdırıyorum sistemde 2 adet röle var bu rölelerim kontakladğımda arduino bir kararsızlığa düşüyor besleme üzerine attığım capasitor ler fayda etmedi opto kublör kullansam bu hatayı giderebilirmiyim bilginiz varsa yardımcı olursanız sevinirim saygılar

  44. […] kullanımına şu adreste Kaan Ceyhan arkadaşımız anlattığı için […]

  45. Hasan dedi ki:

    hocam ben arduinoda yeniyim ve lm 35 sensör ,lcd kullanarak dijital bir sensör yapmaya calişiyorum devreyi bağlıyorum lakin kod yükleyemiyorum arduino hata veriyor . sizden ricam aşağıda yazdığım koddaki hatalarımı bana söylermisiniz.
    #include
    float sicaklik,gerilim;
    int sensorPin=0;
    LiquidCrystal lcd(12,11,5,4,3,2);
    void setup(){
    lcd.begin(16,2);
    }
    void loop()
    {
    gerilim=analogRead(sensorPin);
    gerilim=(gerilim/1023)*5000;
    sicaklik=gerilim/10.0;

    lcd.setCursor(0,0);
    lcd.print(“Sicaklik:”);
    lcd.setCursor(0,1);
    lcd.print(sicaklik);
    delay(1000);

    }

  46. hakan dedi ki:

    Herkese selamlar https://gelecegiyazanlar.turkcell.com.tr/…/uzaktan-kontroll… bu linkteki sıcaklık sensörünü aynı şekilde yapıp çalıştırdım bunu 2×16 bir lcd ekranda Nasıl yazdırabilirim yardım edebilecek olan var mı teşekkürler.

  47. akif dedi ki:

    merhaba,
    Bu lcd winstar wh1602b modeli mi? Bu lcd yi 3voltta sürebilir miyiz?

    • Ömer Koman dedi ki:

      wh1602b lcd 5v ile çalışır. 3v luk işlemci ıle kullanmak ıcın her data pininin seviye çevirici ıle kullanmanız lazım ama lcd yine 5v ıle beslenmelı
      elektronık malzemelerin bir datasheeti vardır tum elektrıksel ve ışlem verılerı bu dokumanda bukunur datasheet ıncelemeyi de ogrenırsenız ılerıde daha guzel projeler yapabılırsınız sayfa 6 ya bakın
      https://www.arduino.cc/documents/datasheets/LCD-WH1602B-TMI-ET%23.pdf

  48. Ertug_TR dedi ki:

    Ayni code’u arduino’ya yüklüyorum.Hata veriyor SHT1.x nedir anlayamadım,Sonra ben onu dht olarak deiştirdim ama yine hata veriyor,kütüphaneyede DHT yüklemiştim.
    Kısacası DHT22 ile 2×16 LCD ekran uygulamsı bir türlü olmadı,her defasında include dht hatası veriyor ,kütüphaneye hangi DHT dosyasını eklesem hep hata veriyor.

    • Ömer Koman dedi ki:

      once lcd yi yukarıdakı kod ile calıstırın sorun kalmasın. ayrı bır kodun ıcınde de dht sensoru serial monıtorle calıstırıp ondan da emın olun daha sonra nasıl birleştirecedğinizi foruma gelin anlatalım.

  49. Ertug_TR dedi ki:

    Selamlar,yukarıdaki kod hata veriyor,include hangi kütüphane eklenecek yazılmamış.Örnek kod’da serial monitörle haberleşip,bilgisayar ekranından verileri görmüştüm.Ama LCD ile yapılan uygulamalrı yüklememin hepsinde dht.h hatası verdi.Hangi kğtğphaneyi kurduysam olmadı. Tşk.

    • Ömer Koman dedi ki:

      yukarıdaki kodu boş bir arduino programı açıp içine kopyaladığımda sorunsuz compile oluyor kullanılan kutuphane standart olarak yuklemenın ıcınde olan bırşey
      yazdığınınz kodu inceleyın buyuk kucuk harf ayırımı vardır hatalı bır yazım yapmışınız sanırım

  50. Ertug_TR dedi ki:

    Yukarıdaki kodu deneyince de include onewire.h hatası veriyor.Forumda da bu konuyu paylaştım.

    • Ömer Koman dedi ki:

      yazıda anlatılan standart lcd kutuphanesidir ve arduinoda sorunsuz çalışıyor sizin buldugunuz kodun içinde başka bir şeyler varsa onu bılemeyız kodu aldıgınız yere sorun. bazı lcdler serial lcd olarak gecer o tip bir şey kullanıysanız o konu burada anlatılmıyor. bu programda yapamadıgınız çalışlmayan bir şey varsa ona bakalım. bu kodda sorun yok

E-posta adresiniz gösterilmeyecek. Gerekli alanlar * ile işaretlidir.

*



Sosyal Ağlar