İçindekiler:

TM1637 7 Segment Ekran - Çalıştırma!: 5 Adım
TM1637 7 Segment Ekran - Çalıştırma!: 5 Adım

Video: TM1637 7 Segment Ekran - Çalıştırma!: 5 Adım

Video: TM1637 7 Segment Ekran - Çalıştırma!: 5 Adım
Video: How to use TM1637 4 digits seven segment display with Arduino 2024, Kasım
Anonim
TM1637 7 Segment Ekran - Çalıştırma!
TM1637 7 Segment Ekran - Çalıştırma!
TM1637 7 Segment Ekran - Çalıştırma!
TM1637 7 Segment Ekran - Çalıştırma!

GirişPekala, sonunda bozuldum ve 7 segmentli ekranla deneme yapmaya karar verdim. Ekranlar arasında birçok bilgiyi görüntüleme esnekliği nedeniyle bir TFT dokunuşunu veya sadece düz bir TFT ekranı programlamayı tercih ederim. 7 segmentli bir ekran, genişletilmiş rakamlarla bile çok sınırlayıcıdır. Ancak, yeni bir fikir olarak, dünyadaki saatleri gösterecek bir dünya saati yapmaya karar verdim. Düşük maliyetli 4 haneli, 7 segmentli ekran için mükemmel uygulama! Proje ilerledikçe, proje hakkında daha fazla bilgi var, ama işte RobotDyn'in TM1637 ekranı hakkındaki "keşiflerim" ve düşüncelerim.

Adım 1: Parçalar

Parçalar:TM1637 ekranını denemek için ihtiyacınız olan tek şey:

- TM1637 Ekran

- Bazı bilgileri okumak için bir RTC veya DHT - isteğe bağlı olarak donanım yok, sadece basit bir sayaç yapın

- Arduino Uno, Mega veya Mikro

- Birkaç atlama teli

2. Adım: Yazılımla İlgili Hususlar

Yazılım konuları: TM1637 ile kullanmak için 3 farklı kitaplık buldum

- TM1637.h - RobotDyn tarafından önerilir ancak daha eskidir

- TM1637display.h kitaplığı - AVISHORPE tarafından favori gibi görünüyor

- SevenSegmentTM1637.h - Breeme ile. Çoğu işlevsellik ve olasılık.

Hepsini deneyin ve ne düşündüğünüzü görün, şu ana kadar en rahat olduğum şey TM1637 ekran kitaplığı.

Adım 3: İlk Düşünceler

İlk düşünceler: Ekranımı ilk aldığımda, onu bazı genel 7 segmentli ekranlar (12 kurşun) ve bazı vardiya kayıtları ile satın aldım. Onları kullanmak, ihtiyacım olandan daha fazla işti ve beni dünya saatim için bir Mega kullanmakla sınırladı. TM1637 ekranı I2C kullanır ve bu nedenle bir mikro bile bu ekranların 4-5'ini işleyebilir, ancak projem geliştikçe onaylayacağım! Ancak her biri yalnızca (2) GPIO pini kullanmak - bu büyük bir artı.

Birim çok uygun maliyetlidir, RobotDyn.com'da daha büyük (50x19mm) ekran için sadece 1,50$'dır.

Bir proje için kurulumu ve kullanımı kolaydır. İyi boyut, ayarlanabilir parlak ekran, 4 montaj deliği (RobotDyn versiyonu), çift uç erişim, sadece 4 bağlantı (5v, Gnd, Data, Clock), renk çeşitleri (5) ve “basit” programlama (okuyun…).

Adım 4: Programlama

Programlama
Programlama
Programlama
Programlama
Programlama
Programlama

Programlama Şimdiye kadar en çok TM1637display.h kitaplığından memnun kaldım ve aşağıdaki sonuçları ve bulguları elde etmek için onu kullandım. Bunlar muhtemelen tek sorun değil, karşılaştığım ve çözmek için çözüm bulduğum şeyler.

Şimdi bu programlama hakkında. Ekranımı ilk kez bağladığımda ve üç kitaplığın tümü için örnekleri çalıştırdığımda hiçbir şey alamadım. Ekran yok, okuma yok, hiçbir şey yok. Aslında Arduino'yu dondurmuş gibi görünüyordu ve seri bir çıktı bile vermeyi reddetti. Ben sadece bir yapımcıyım ama kesinlikle bu basit küçük ekranı karıştıramazdım! Biraz araştırmadan sonra birçok yerde bazı bilgiler buldum, bu yüzden bulduklarımı aktarmaya çalışayım.

Bir LCD ekran gibi, ekrana bir dizi tamsayı çıktısı alabilirsiniz. Bilgileri yerleştirmenin daha 'karmaşık' yolları vardır, ancak gerekli değildir. Ekran, dizeler ve karakterlerle sınırlıdır ve mevcut seti sınırlar, bu nedenle metne ihtiyacınız varsa, bunlar en iyi çözüm olmayabilir.

Herhangi bir türde bir "gecikme" kullanmak, ekranın donmasına neden oluyor gibi görünüyor. Diğerleri sorundan kaçınıyor gibi göründüğü için bu, RobotDyn ekranına özgü olabilir, ancak tek sorun bu değildi. Etrafında dolaşmak için 2 adım buldum. İlk önce, sökmek için çok tembel olduğum cihazın arkasındaki yerleşik kapasitörleri kestim. İkincisi, tüm gecikmeleri yorumladım. Başarı! Ekran canlandı. Şimdi, zamanlamayı (sayaç gibi) idealden daha az ayarlamanın bir yolu yok, ancak bununla çalışabilmem için bir saat ve/veya sıcaklık göstergesi istiyorum.

RobotDyn ekranında ondalık noktalara erişilemiyor gibi görünüyor. Kesin bir çözüm bulamadım - ve buna ihtiyacım olmayacak - ama farkında olun.

İki nokta üst üste için belgeler zahmetliydi, ancak tek satırlık bir komut kullanarak oldukça basit bir çözüm buldum. Kolayca yanıp sönmesini sağlayamıyorum, ama yine de projem için küçük bir sorun. 'display.showNumberDecEx(0, 64);' kullanın ve iki nokta üst üste işareti var.

Ekranın sabit bir okuma göstermesini sağlamak için çıktıyı göstermek istediğim süre boyunca tekrarlamak için for() deyimlerini kullandım. Bana aramam için daha fazla alt program veriyor. Ama galibiyeti alacağım.

Farklı renkler elde etmek için renge karşılık gelen bir ekran sipariş etmeniz gerekir. Ekranın rengini değiştiremezsiniz. Bunları bu şekilde kullanacaksanız, Amazon'dan 5 farklı renkli ekranlı bir parti sipariş edin. RobotDyn ile bir renk veya 1 renkten oluşan bir parti sipariş edersiniz.

Adım 5: Sonuç

Sonuç Şu ana kadar bulduğum şey bu, ancak herhangi bir öneriniz varsa, geri bildirim veya önerilerinizi takdir ediyorum. Hala ekran hakkında bir şeyler öğreniyorum ve onlar hakkında öğrenecek ve anlayacak çok şeyim var. Başka notlarınız varsa açığız. Teşekkürler ve umarım bu, 7 segmentli ekranla ilgilenen diğerlerine yardımcı olmuştur. Eğlence!

Önerilen: