Arduino ile Cep Telefonu Ekranı Nasıl Arayüze Edilir

Sorunları Ortadan Kaldırmak Için Enstrümanımızı Deneyin





Bu yazıda, Nokia 5110 ekranı ile arduino mikrodenetleyicisi arasında nasıl arayüz oluşturacağımızı ve bazı metinlerin nasıl görüntüleneceğini öğreneceğiz, ayrıca basit bir dijital saat inşa edeceğiz ve son olarak Nokia 5110 ekranının grafik özelliklerini keşfedeceğiz.

Tarafından



Nokia, akıllı telefon pazarına girmeden önce dünya çapında en popüler cep telefonu markasıydı. Nokia, sağlam telefonlar üretmesiyle tanınıyordu ve ikonik ve en sağlamlarından biri Nokia 3310'du.

Nokia markası sosyal medyada çok fazla gürültü yaptı ve meme internette dolaşmaya başladı ve memin çoğu, sert çekirdekli kullanıcılarla olan mükemmel dayanıklılığı nedeniyle yaklaşık 3310 modeliydi. Bazı yasal kaynaklar, Nokia telefonlarının bazı insanların hayatını kurşunlardan kurtardığını söylüyor.



Piyasada bu modellere olan talebin azalmasından sonra kullanılmayan çok sayıda ekran vardı. Şimdi, özelleştirilmiş ihtiyaçlarımız için yenilenmiş ve piyasaya sürülmüştür.

Uygulamalı olarak bir tane istiyorsanız, eski Nokia telefonunuzdan bir tane kurtarmak için bölgenizin etrafında bir mini nükleer patlama yaratmanıza gerek yoktur. E-ticaret sitelerinde yaygın olarak bulunur.

Nokia 5110 ekranı resmi:

Eğlenceli gerçek: Nokia 5110 ekranı 3310 modelinde ve diğer bazı Nokia telefon modellerinde de kullanıldı.

Şimdi ekranı arduino ile nasıl bağlayacağımızı görelim.

Ekranı Arduino ile bağlayın

Arduino ile Cep Telefonu Ekranı Nasıl Arayüze Edilir

Ekran monokromdur ve metin ve hatta grafikleri görüntüleyebilen 84x48 piksele sahiptir.
Ekran 8 pinden oluşur: Vcc, GND, sıfırlama, çip seçimi (CS), komut seçimi, seri veri çıkışı, Seri saat ve arka ışık.

Ekran 3,3V'de çalışacak şekilde tasarlanmıştır ve 5V uygulamak ekrana zarar verir, bu nedenle onu tutarken dikkatli olunmalıdır.

Ekran, genellikle beyaz veya mavi renkli olan arka ışık işlevine sahiptir. Arka ışığa 330 ohm akım sınırlama direnci ile 5V verilir.

7, 6, 5, 4 ve 3 numaralı pinler ekranın dijital pinlerine bağlanır. Arduino'nun ekran ile nasıl iletişim kurduğunu bilmek zorunlu değildir, onu kullanmak için arduino ile ekran arasındaki iletişimi sağlayacak uygun kütüphane dosyalarını arduino yazılımına ekleyeceğiz.

Şimdi biraz metin gösterelim.

Metni Görüntüleme

Arduino ile Metin Gösteren Cep Telefonu Ekranı

Kodu yüklemeden önce kitaplık dosyalarını indirmeli ve arduino IDE'nize eklemelisiniz.

• github.com/adafruit/Adafruit-PCD8544-Nokia-5110-LCD-library
• github.com/adafruit/Adafruit-GFX-Library

Merhaba dünya programı:

//------------Program Developed by R.Girish--------//
#include
#include
#include
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3)
void setup()
{
display.begin()
display.setContrast(50)
display.clearDisplay()
}
void loop()
{
display.setTextSize(1)
display.setTextColor(BLACK)
display.print('Hello world !')
display.display()
delay(10)
display.clearDisplay()
}
//------------Program Developed by R.Girish--------//

Kodlama kısmı hakkında daha fazlasını keşfetmek istiyorsanız, grafikler, metin rengi (siyah / beyaz), test boyutu, metin döndürme ve çok daha fazlasını gösteren örnek programa göz atabilirsiniz.

Şimdi bir dijital saat oluşturalım.

Dijital saat için devre şeması:

Şematik önceki ile aynıdır, sadece fark, zaman ayarı için iki 10K ohm aşağı çekme direncinin 8 numaralı pime bağlanması ve devrenin 9 numaralı pim geri kalanı kendinden açıklamalıdır.

Dijital saat için program:

//----------------Program developed by R.Girish-------//
#include
#include
#include
Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3)
int h=12
int m
int s
int flag
int TIME
const int hs=8
const int ms=9
int state1
int state2
void setup()
{
display.begin()
display.setContrast(50)
display.clearDisplay()
}
void loop()
{
s=s+1
display.clearDisplay()
display.setTextSize(2)
display.print(h)
display.print(':')
display.print(m)
display.setTextSize(1)
display.print(':')
display.print(s)
display.setTextSize(2)
display.setCursor(0,16)
if(flag<12) display.println('AM')
if(flag==12) display.println('PM')
if(flag>12) display.println('PM')
if(flag==24) flag=0
display.setTextSize(1)
display.setCursor(0,32)
display.print('Have a nice day')
display.display()
delay(1000)
if(s==60)
{
s=0
m=m+1
}
if(m==60)
{
m=0
h=h+1
flag=flag+1
}
if(h==13)
{
h=1
}
//-----------Time setting----------//
state1=digitalRead(hs)
if(state1==1)
{
h=h+1
flag=flag+1
if(flag<12) display.print(' AM')
if(flag==12) display.print(' PM')
if(flag>12) display.print(' PM')
if(flag==24) flag=0
if(h==13) h=1
}
state2=digitalRead(ms)
if(state2==1)
{
s=0
m=m+1
}
}
//-------- Program developed by R.GIRISH-------//

Şimdi, ekranın grafik özelliklerini tartışalım. Nokia 5110 ekranı 84x48 piksele sahiptir ve bu da çok sınırlı grafikleri tek renkli olarak gösterebilir. Akıllı telefonlardaki kadar yetenekli renkli ekranlar olmayabilir, ancak projenizde logolar veya semboller göstermemiz gerekiyorsa çok yararlıdır.

Nokia 5110 ekranı kullanan grafiklerin gösterimi:

Popüler trol yüzü:

Dr. A.P.J Abdul Kalam:

Tek renkli bir ekran kullanarak gördüğümüz gibi, yine de bazı fotoğrafları veya logoları doğrudan arduino'dan görüntüleyebiliyoruz. SD kart gibi herhangi bir harici belleğe ihtiyacımız yok.

Bir fotoğrafı “C” koduna dönüştürme süreci, adım adım süreci açıklayacağımız başka bir makalenin konusudur.

Herhangi bir sorunuz varsa, lütfen yorum bölümü aracılığıyla açıklayın.




Önceki: BJT Verici İzleyici - Çalışma, Uygulama Devreleri Sonraki: Ölçme Tesisi ile Aşırı Gerilim Durdurucu Devre