İçindekiler:
Video: MAX7221'i Kullanan Sayaç: 4 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:19
MAX7221'i kullanarak bir düğmeye basıldığında artan bir sayaç oluşturma.
Adım 1: Parçalar
MAX7221 veya MAX7219
Değiştirmek
4 7-Segment Ekran (ortak katot)
2 Direnç: 10k ve 9.53k (9.1k kullandım ve hala çalışıyor)
Arduino
Adım 2: Devreyi Kurmak
Ben sadece kullandığım pinleri yazdım, pin düzeninin tamamını datasheet'te bulabilirsin ya da ben ekledim. 7-Segment Ekranınıza baktığınızdan emin olun çünkü muhtemelen benimkinden farklı olacaktır ancak prosedür aynıdır.
1. MAX7221'deki 0 - 3 Rakamlarını ekrandaki 1 - 4 Rakamlarına bağlayın. MAX basamağı 0, ekran basamağı 1'e vb. bağlanır. Ekranlar alışılmışın dışındadır ve 0 yerine 1'den başlar.
2. MAX7221'deki A - G Segmentlerini ekrandaki Segment A - G'ye bağlayın.
3. MAX'a güç ve toprak sağlayın. VCC pin 19'a gider. 10k direnç de pin 19 ve 18'e bağlanır. Toprak 4 ve 9 pinlerine gider.
4. MAX7221, Arduino ile SPI (Seri Çevre Birimi Arayüzü) aracılığıyla iletişim kurar. Bu durumda MISO (Master In Slave Out) kullanmadığım için sadece 3 kabloya ihtiyaç var. MAX7221'de pin 1'i (Din) Arduino'ya bağlayın, benim durumumda pin 12'yi kullandım. Bu sizin MOSI'niz (Master Out Slave In) veya verileriniz. MAX üzerindeki Pin 12 CS'dir (Chip Select Input) ve verilerin Shift Register'a nasıl yüklendiğidir, bunu Arduino'daki pin 9'a bağladım. Son bağlantı MAX üzerindeki pin 13 olan CLK'dır, bunu Arduino'daki pin 10'a bağladım.
5 volt kullanarak Arduino üzerinden güç ve toprak sağladığınızdan emin olun. Arduino'mun kartıma yeterince güç vermediği bir problemle karşılaştım.
Bu, MAX7221 Veri Sayfası içindir. Ayrıca resimlerin nereden geldiği.
www.mouser.com/datasheet/2/256/max7219-max…
Adım 3: Anahtar
Anahtarı yukarıdaki şemadan bağladım. https://www.arduino.cc/en/tutorial/button adresinde bulunur.
Anahtarı kontrol etmek için Arduino'daki pin 8'i ve 10k'lık bir direnç kullandım.
4. Adım: Kod
MAX7221'i açmak için GitHub'da bulunan LedControl.h kitaplığını ve temel kodlarını kullandım. Daha sonra düğmeye basıldığında kodu 0 - 9999 arasında sayacak şekilde değiştirdim.
#include "LedControl.h"
int düğmesi = 8;
LedControl lc=LedControl(12, 10, 9, 1);
geçersiz kurulum() {
pinMode(düğme, GİRİŞ);
lc.shutdown(0, yanlış); // MAX7221 güç tasarrufu modunda, bu yüzden onu uyandırmamız gerekiyor
lc.setYoğunluk(0, 15); // Parlaklık ayarı, maksimum 15
lc.clearDisplay(0); // ekranı temizleme
}
boşluk döngüsü(){
int durum = digitalRead(düğme);
int ben = 0;
int j = 0;
int k = 0;
int l = 0;
süre(1){
durum = digitalRead(düğme);
while(durum == 1){
durum = digitalRead(düğme);
lc.setDigit(0, 3, ben, yanlış);
ben++;
gecikme(100); // bununla uğraşabilirsin
if(i == 10){
ben = 0;
j++;
if(j == 10){
j = 0;
k++;
if(k == 10){
k = 0;
l++;
if(l == 10){
süre(1){
lc.setRow(0, 0, 0x3E); // ekran 9999'a ulaştığında U -- 1 gösterecek
lc.setRow(0, 1, 0x1); // Onaltılık değerde
lc.setRow(0, 2, 0x1);
lc.setDigit(0, 3, 1, yanlış);
}
}
lc.setDigit(0, 0, l, yanlış);
}
lc.setDigit(0, 1, k, yanlış);
}
lc.setDigit(0, 2, j, yanlış);
}
}
}
}
Önerilen:
Merdiven Diyagramında Sayaç Nasıl Kullanılır? - Delta WPLSoft: 15 Adım
Merdiven Diyagramında Sayaç Nasıl Kullanılır? | Delta WPLSoft: Bu eğitimde, örnek olarak gerçek zamanlı uygulamalarda sayaçların nasıl kullanılacağını gösteriyoruz
SAYAÇ SAAT: 5 Adım (Resimli)
SAYAÇ SAAT: Saat yapmak için Neopixel Ring 60 Led almayı planlamıştım ama maalesef alamamıştım. Sonunda Neopixel Ring 35 Leds & saati, dakikayı ve dakikayı gösterebilen bir internet saati yapmanın basit bir yolunu buldu; th ile ikinci
Arduino RMS Sayaç Modülü: 3 Adım
Arduino RMS Sayaç Modülü: Bu, TrueRMS voltajını ölçmek için küçük bir Arduino modülüdür. Sayaç, mV cinsinden rms voltajını rakamlarla ve bir analog seviye ölçeğiyle gösterir. Modül bir "yerleşik" olarak tasarlanmıştır; sinyal izleme modülü
Basmalı Düğmeyi Kullanan Sayaç - Tinker Cad: 3 Adım
Basmalı Düğmeyi Kullanan Sayaç | Tinker Cad: Bir düğmeyi çalıştırdıktan sonra, genellikle düğmeye kaç kez basıldığına bağlı olarak bazı işlemler yapmak istersiniz. Bunu yapmak için, düğmenin ne zaman kapalı konumdan açık duruma geçtiğini bilmeniz ve bu durum değişikliğinin kaç kez gerçekleştiğini saymanız gerekir. NS
Arduino İle 2.4Ghz NRF24L01 Modülünü Kullanan Kablosuz Uzaktan Kumanda - Nrf24l01 Quadcopter için 4 Kanal / 6 Kanal Verici Alıcı - Rc Helikopter - Arduino Kullanan Rc Uçak: 5 Adım (Resimlerle)
Arduino İle 2.4Ghz NRF24L01 Modülünü Kullanan Kablosuz Uzaktan Kumanda | Nrf24l01 Quadcopter için 4 Kanal / 6 Kanal Verici Alıcı | Rc Helikopter | Arduino Kullanan Rc Uçak: Bir Rc araba çalıştırmak için | Quadcopter | dron | RC uçak | RC tekne, her zaman bir alıcı ve vericiye ihtiyacımız var, RC QUADCOPTER için 6 kanallı bir verici ve alıcıya ihtiyacımız olduğunu ve bu tür TX ve RX'in çok maliyetli olduğunu varsayalım, bu yüzden bir tane yapacağız