Obsah:

Počítadlo pomocou MAX7221: 4 kroky
Počítadlo pomocou MAX7221: 4 kroky

Video: Počítadlo pomocou MAX7221: 4 kroky

Video: Počítadlo pomocou MAX7221: 4 kroky
Video: How to Make PLC LCD HMI || FLProg 2024, November
Anonim
Počítadlo pomocou MAX7221
Počítadlo pomocou MAX7221

Vytvorenie počítadla, ktoré sa zvýši po stlačení tlačidla pomocou MAX7221.

Krok 1: Diely

MAX7221 alebo MAX7219

Prepnúť

4 7-segmentový displej (spoločná katóda)

2 rezistory: 10k a 9,53k (použil som 9,1k a stále funguje)

Arduino

Krok 2: Budovanie obvodu

Budovanie okruhu
Budovanie okruhu
Budovanie okruhu
Budovanie okruhu
Budovanie okruhu
Budovanie okruhu

Zapísal som iba kolíky, ktoré som použil, kompletné rozloženie pinov nájdete v technickom liste alebo som ho priložil. Nezabudnite si vyhľadať 7-segmentový displej, pretože sa bude pravdepodobne líšiť od môjho, ale postup je rovnaký.

1. Pripojte číslice 0 - 3 na MAX7221 k čísliciam 1 - 4 na displeji. MAX číslica 0 sa pripája k číslici 1 displeja atď. Displeje sú netradičné a začínajú na 1 namiesto 0.

2. Pripojte segmenty A - G na MAX7221 k segmentom A - G na displeji.

3. Pripojte napájanie a uzemnenie k MAX. VCC ide na pin 19. Rezistor 10k je tiež pripojený na piny 19 a 18. Uzemnenie ide na piny 4 a 9.

4. MAX7221 komunikuje s Arduino prostredníctvom SPI (sériové periférne rozhranie). V tomto prípade sú potrebné iba 3 vodiče, pretože nepoužívam MISO (Master In Slave Out). Na MAX7221 pripojte pin 1 (Din) k Arduinu, v mojom prípade som použil pin 12. Toto je váš MOSI (Master Out Slave In) alebo údaje. Pin 12 na MAX je CS (Chip Select Input) a spôsob načítania údajov do posuvného registra, pripojil som to na pin 9 na Arduine. Posledné pripojenie je CLK čo je pin 13 na MAXe, toto som pripojil na pin 10 na Arduine.

Uistite sa, že napájate a uzemňujete Arduino pomocou 5 voltov. Narazil som na problém, kde moje Arduino nedávalo mojej doske dostatok energie.

Toto je pre list MAX7221. Tiež odkiaľ pochádzajú obrázky.

www.mouser.com/datasheet/2/256/max7219-max…

Krok 3: Prepínač

Prepínač
Prepínač

Prepínač som zapojil zo schémy vyššie. Nájdené na

Na ovládanie spínača som použil pin 8 na Arduine a 10k odpor.

Krok 4: Kód

Na zapnutie MAX7221 som použil knižnicu LedControl.h nájdenú na GitHub a ich základný kód. Potom som pri stlačení tlačidla kód upravil tak, aby počítal od 0 - 9999.

#include "LedControl.h"

tlačidlo int = 8;

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

neplatné nastavenie () {

pinMode (tlačidlo, VSTUP);

lc.shutdown (0, false); // MAX7221 je v úspornom režime, takže ho musíme zobudiť

lc.setIntensity (0, 15); // Nastavenie jasu, max 15

lc.clearDisplay (0); // vymazanie displeja

}

prázdna slučka () {

int state = digitalRead (tlačidlo);

int i = 0;

int j = 0;

int k = 0;

int l = 0;

pričom (1) {

stav = digitalRead (tlačidlo);

while (state == 1) {

stav = digitalRead (tlačidlo);

lc.setDigit (0, 3, i, false);

i ++;

oneskorenie (100); // s tym sa mozes pohrat

ak (i == 10) {

i = 0;

j ++;

ak (j == 10) {

j = 0;

k ++;

ak (k == 10) {

k = 0;

l ++;

ak (l == 10) {

pričom (1) {

lc.setRow (0, 0, 0x3E); // keď displej dosiahne 9999, zobrazí sa U - 1

lc.setRow (0, 1, 0x1); // V hexadecimálnej desatinnej hodnote

lc.setRow (0, 2, 0x1);

lc.setDigit (0, 3, 1, false);

}

}

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

}

lc.setDigit (0, 1, k, false);

}

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

}

}

}

}

Odporúča: