PGM12864B-NSW grafik ekranı Arduino UNO ile kullanmak

Ben GPIO atamalarını tamamen kendi kafama göre yaptım oradaki örnek değiştirilmeden çalışmaz. Bir de hazır kod üzerinden gitmeden sadece GLCD kütüphanesiyle minimal bir kod hazırlamak istiyorum.
 
Bu ks0108 lerin iki modeli var. İki model arasındaki fark cs1 ve cs2 pinlerini ters lojik seviyede çalışmaları.
 
İki tane sorun vardı. Bir tanesi, 0 ve 1 GPIO ları aynı zamanda serial için kullanılıyor, o yüzden o bitleri 8 bitlik LCD portu için kullanamayız. O yüzden mecbur bazı kontrol sinyallerini analog GPIO lara kaydırıyoruz.

İkincisi de, ilk döngüde ekranı 0 ile dolduruyorum, dolayısıyla ekran da başlangıçta boş iken boş ile dolduruluyor. Şimdi ilk döngüde pixeli ON yapıyorum.

Kod:
#include "Adafruit_GFX.h"
#include "KS0108_GLCD.h"

#define LCD_DI  A0
#define LCD_RW  A1
#define LCD_E   A2
#define LCD_CS1 10
#define LCD_CS2 11
#define LCD_RST 12

static KS0108_GLCD glcd(LCD_DI,
                        LCD_RW,
                        LCD_E,
                        2, 3, 4, 5, 6, 7, 8, 9,
                        LCD_CS1,
                        LCD_CS2,
                        LCD_RST);

void setup()
{
  Serial.begin(115200);

  glcd.begin(KS0108_CS_ACTIVE_HIGH);
  glcd.clearDisplay();
  glcd.display();
}

static int16_t x = 0;
static int16_t y = 0;
static uint16_t color = KS0108_ON;

void loop()
{
  glcd.drawPixel(x, y, color);
  glcd.display();

  x = x + 1;
  if (x == 128)
  {
    x = 0;
    y = y + 1;

    Serial.print("y = "); Serial.print(y); Serial.print("\n");

    if (y == 64)
    {
      y = 0;
      color = (color == KS0108_ON) ? KS0108_OFF : KS0108_ON;
    }
  }
}

1731191070908.jpeg
 
Arka aydınlatma genelde 4.5-4.7V olabilmekte. Seri direnç yerine adi bir diyot takıyorum.
 
Arka aydınlatma genelde 4.5-4.7V olabilmekte. Seri direnç yerine adi bir diyot takıyorum.

Ama işte tipik Çin datasheet. Yalan yanlış, eksik bilgilerle dolu. Aydınlatma için Anot Katot verince insan düz LED bekliyor ve seri akım sınırlandırma direnci olması gerekiyor mu diye düşünüyor. Chip select'lerin active passive durumu verilmemiş. Reset için de öyle. Timingler verilmemiş. Komut seti ve registerler de yok. Aydınlatmanın çektiği akım 300 mA diyor, ben 92 mA ölçüyorum. Operating voltage için sadece tipik değer verilmiş, minimum ve maksimum yok. Yani her türlü voltaj ile çalışır :katil2:
 
Vo pini kontrast. Kısadevre olacak bir şey yok.
Bu glcdyi değil de; kasik KS0108 ekranları incelerseniz, istediğiniz gibi veri aktarım konusunu bulabilirsiniz.
 

Çevrimiçi üyeler

Forum istatistikleri

Konular
7,242
Mesajlar
122,552
Üyeler
2,925
Son üye
YusufAbali

Son kaynaklar

Son profil mesajları

Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
Freemont2.0 posta Freemont2.0 wrote on posta's profile.
Merhabalar :)
az bilgili çok meraklı
Prooffy semih_s Prooffy wrote on semih_s's profile.
Merhaba, sizden DSO2C10 hakkında bilgi rica ettim. Yanıtlarsanız sevinirim...
Unal taydin Unal wrote on taydin's profile.
Timur Bey, Arduino kontrollü bir akü şarj cihazı yapmaya çalışıyorum. Aklımdaki fikri basit bir çizim olarak konu açmıştım. Özellikle sizin fikirlerinizi çok önemsiyorum.
Back
Top