Sadržaj:

LED matrica tipke: 4 koraka
LED matrica tipke: 4 koraka

Video: LED matrica tipke: 4 koraka

Video: LED matrica tipke: 4 koraka
Video: ПЕРВАЯ СХЕМА НА АРДУИНО [Уроки Arduino #4] 2024, Srpanj
Anonim
LED matrica s gumbom
LED matrica s gumbom

Ovaj se projekt može smatrati još jednim uvodnim Arduino projektom koji je nešto napredniji od vašeg tipičnog projekta 'treptanja LED -a'. Ovaj projekt uključuje LED matricu, tipke, registre pomaka (koji mogu spremiti pinove na vašoj Arduino ploči) i ključni koncept koji se naziva multipleksiranje. Nadam se da vam je vodič poučan i da ćete sebe izazvati da ga poboljšate!

Pribor

(1x) Arduino Uno

(5x) taktilni gumbi

(2x) 0,1 uF kondenzatori

(2x) 1 uF kondenzatori

(8x) 1k otpornici

(5x) 10k otpornika

(2x) Registri pomaka 74HC595

Žice za kratkospojnike

Crna žica

Crvena žica

Korak 1: Korak 1: Izrada LED matrice

Korak 1: Izrada LED matrice
Korak 1: Izrada LED matrice
Korak 1: Izrada LED matrice
Korak 1: Izrada LED matrice
Korak 1: Izrada LED matrice
Korak 1: Izrada LED matrice

Vodič koji sam koristio za izradu 8x8 LED matrice u ovom projektu možete pronaći ovdje. Postoje uobičajene konfiguracije za LED matricu:

a) Anoda zajedničkog reda

b) Zajednička katoda redova

Budući da sam koristio raspored matrice Common Row Cathode, o tome ću uglavnom raspravljati, a istu logiku možete proširiti i na raspored Common Anod Anod. U rasporedu zajedničke katode redova, katode LED dioda (ili negativni terminali, što je kraći krak LED -a) povezane su zajedno u redove, dok su anode (ili pozitivni terminali, što je duži krak na LED -u) povezane zajedno u stupce. Za adresiranje određene LED diode povucite katodni red na kojem je LED katoda nisko i povucite anodni stupac na kojem je LED anoda visoka.

Napomena: Prilikom izrade LED matrice prikazane na gornjoj poveznici, obavezno spojite anodne stupove s otpornicima od 1 k ohma prije nego što primijenite bilo koji napon na LED diode.

Korak 2: Korak 2: Ožičenje tipki i registara pomaka

Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka
Korak 2: Ožičenje tipki i registara pomaka

Ožičenje tipki i registara pomaka prikazano je gore. Želio bih napomenuti da registri pomaka u dijagramu kruga ne prikazuju uzemljenje (pin 8 IC) i Vcc ili napajanje (pin 16 IC) pinove za čipove; pin za uzemljenje spojen je na GND pin Arduino ploče, a Vcc na 5V pin Arduino ploče. Vcc pin svakog registra pomaka također je spojen na 0,1uF kondenzator spojen na masu.

Napomena: Izlazi svakog registra pomaka navedeni su kao QA do QH (zanemarite QH*). Navedeni su u terminima od najmanje bitnog bita (LSB) (za QA) do najznačajnijeg bita (MSB) (za QH), tj. QA bi kontrolirala 0. red ili stupac itd.

Korak 3: Korak 3: Prijenos koda

Kod za upravljanje LED matricom priložen je ovom vodiču. Pokušao sam komentirati što je više moguće koda kako bi bilo vrlo jasno kako program radi. Glavna osnova programa je matrica koja prati koje LED diode trebaju biti uključene ili isključene. Kako bi se različite LED diode ispravno prikazale bez slučajnog uključivanja neželjenih dioda, morate koristiti koncept koji se naziva multipleksiranje. Multipleksiranje u biti osvjetljava pojedinačne LED diode u određenom redu, dok sve ostale LED diode u drugim redovima, a zatim čini isto za preostale redove. Trik je u tome što, ako LED diode kruže kroz redove dovoljno brzo, vaše oči mogu vidjeti da se pojedinačni redovi pale jedan po jedan. Ako želite istražiti više načina na koje možete zavarati oči LED diodama, možda biste htjeli pogledati koncept postojanosti vida (lako pretraživ na Googleu ili Instructables).

Način ažuriranja anodnih stupaca i katodnih redaka je putem korisnički definirane funkcije pod nazivom 'UpdateShiftRegisters'. Ova funkcija prvo okreće kvačicu zasuna, koja kontrolira šalje li se novi bajt (8 bita) na izlaz, nisko, tako da nisu moguće promjene na izlazima dok se novi bitovi zapisuju na čip. Zatim pomoću ugrađene Arduino funkcije pod nazivom 'ShiftOut', koja posebno upravlja slanjem podataka u registre pomaka, program zapisuje koji bi red (katodni) bio nizak i koji bi (anodni) stupci trebali biti visoki. Konačno, kvačica zasuna je visoko povučena kako bi se ažurirao izlaz (LED diode).

Korak 4: Dodatne informacije/izvori

Evo nekoliko veza na web stranice ili knjige koje mogu dati dodatne informacije o ovom projektu:

learn.adafruit.com/adafruit-arduino-lesson-4-eight-leds/arduino-code

www.arduino.cc/en/tutorial/ShiftOut

www.ti.com/lit/ds/symlink/sn74hc595.pdf

www.youtube.com/watch?v=7VYxcgqPe9A

www.youtube.com/watch?v=VxMV6wGS3NY

Početak rada s Arduinom, drugo izdanje Massima Banzija

Preporučeni: