Isi kandungan:

Tutorial Arduino MAX7219 7-Segment: 5 Langkah
Tutorial Arduino MAX7219 7-Segment: 5 Langkah

Video: Tutorial Arduino MAX7219 7-Segment: 5 Langkah

Video: Tutorial Arduino MAX7219 7-Segment: 5 Langkah
Video: Using MAX7219 8 Digits Seven Segment Display - Robojax 2024, Julai
Anonim
Tutorial Paparan 7-Segmen Arduino MAX7219
Tutorial Paparan 7-Segmen Arduino MAX7219

MAX7219 adalah IC yang digunakan untuk menggerakkan LED 7 segmen (hingga 8 digit), paparan blok (paparan bar), dan 64 LED individu yang merupakan katod biasa. Untuk berkomunikasi dengan mikrokontroler, MAX7219 menggunakan sistem komunikasi SPI. Jadi untuk memandu 64 LED hanya memerlukan 3 port mikrokontroler.

Dalam artikel ini saya akan menunjukkan kepada anda cara menggunakan modul 7-Segement yang menggunakan IC MAX7219 sebagai pemacu.

Komponen yang diperlukan:

  • MAX7219 7-Segmen Modul
  • Arduino Nano
  • wayar Jumper
  • Mini USB

Perpustakaan yang diperlukan:

Pengawalan Led

Dalam tutorial ini saya menggunakan papan Arduino Nano. Sekiranya anda tidak pernah menggunakannya. Saya cadangkan membaca artikel saya sebelumnya mengenai "Cara Menggunakan Arduino Nano".

Langkah 1: Kumpulkan Semua Komponen

Himpunkan Semua Komponen
Himpunkan Semua Komponen

Sambungkan papan Arduino ke modul 7-Segmen. Lihat gambar atau arahan yang saya tulis di bawah ini:

Arduino hingga 7-Segmen

+ 5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS / LOAD

Langkah 2: Tambah Perpustakaan

Tambah Perpustakaan
Tambah Perpustakaan

Setelah litar selesai. Tambahkan perpustakaan "LedControl" ke Arduino IDE.

Untuk menambahkan perpustakaan ke Arduino, anda dapat membacanya dalam artikel "Bagaimana Menambah Perpustakaan Luar ke Arduino" yang saya buat sebelumnya ".

Langkah 3: Fungsi Tambahan

Fungsi Tambahan
Fungsi Tambahan

Setelah menambah perpustakaan LedControl. Anda boleh menggunakan fungsi tambahan untuk mengawal modul 7-Segmen.

Hujah

addr - alamat paparan

digit - kedudukan digit pada paparan (0..7) nilai - nilai yang akan dipaparkan. (0x00..0x0F)

dp menetapkan titik perpuluhan.

Fungsi

setChar (addr, digit, value.dp); // untuk memaparkan nilai jenis char untuk pengekodan ASCII 7-bit

setDigit (addr, digit, value, bolean dp); // untuk memaparkan digit dan watak dalam satu fungsi setRow (addr, digit, value, boolean dp); // untuk memaparkan objek dalam digit yang dikehendaki

Untuk maklumat lebih lanjut, sila baca di sini.

Langkah 4: Muat naik Sketsa

Muat naik Sketsa
Muat naik Sketsa

Saya telah membuat sketsa untuk percubaan modul 7-Segmen ini. Anda boleh menyalin kod di bawah, kemudian tampalkannya dalam lakaran anda.

// Kita mesti selalu memasukkan perpustakaan

#sertakan "LedControl.h"

/*

Sekarang kita memerlukan LedControl untuk bekerjasama. ***** Nombor pin ini mungkin tidak akan berfungsi dengan perkakasan anda *****

pin 12 disambungkan ke DataIn

pin 11 disambungkan ke CLK

pin 10 disambungkan ke LOAD

Kami hanya mempunyai MAX72XX tunggal.

*/

LedControl lc = LedControl (12, 11, 10, 1);

/ * kami selalu menunggu sedikit antara kemas kini paparan * /

masa penangguhan panjang yang tidak ditandatangani = 500;

batal persediaan () {

/ * MAX72XX berada dalam mod penjimatan kuasa semasa permulaan, kita harus melakukan panggilan bangun * /

lc.shutdown (0, salah);

/ * Tetapkan kecerahan ke nilai sederhana * /

lc.setIntensity (0, 8);

/ * dan kosongkan paparan * /

lc.clearDisplay (0);}

batal hello () {

lc.setChar (0, 7, 'H', palsu);

lc.setChar (0, 6, 'E', palsu);

lc.setChar (0, 5, 'L', false);

lc.setChar (0, 4, 'L', false);

lc.setChar (0, 3, '0', false);

lc.setChar (0, 2, '.', false);

lc.setChar (0, 1, '.', false);

lc.setChar (0, 0, '.', false);

kelewatan (waktu tunda + 1000);

lc.clearDisplay (0);

kelewatan (waktu tunda);

lc.setDigit (0, 7, 1, salah);

kelewatan (waktu tunda);

lc.setDigit (0, 6, 2, false);

kelewatan (waktu tunda);

lc.setDigit (0, 5, 3, salah);

kelewatan (waktu tunda);

lc.setDigit (0, 4, 4, false);

kelewatan (waktu tunda);

lc.setDigit (0, 3, 5, salah);

kelewatan (waktu tunda);

lc.setDigit (0, 2, 6, palsu);

kelewatan (waktu tunda);

lc.setDigit (0, 1, 7, salah);

kelewatan (waktu tunda);

lc.setDigit (0, 0, 8, false);

kelewatan (1500);

lc.clearDisplay (0);

kelewatan (waktu tunda);

}

gelung kekosongan () {hello ();

}

Atau muat turun fail di bawah:

Langkah 5: Hasilnya

Nikmati hasilnya.

Sekiranya ada soalan, tulis sahaja di ruangan komen.

Jumpa anda dalam artikel seterusnya.

Disyorkan: