Sisällysluettelo:

Laskuri käyttämällä MAX7221: 4 vaihetta
Laskuri käyttämällä MAX7221: 4 vaihetta

Video: Laskuri käyttämällä MAX7221: 4 vaihetta

Video: Laskuri käyttämällä MAX7221: 4 vaihetta
Video: Sijoitusasunto laskuri -osio Asuntosijoittajan Laskurissa. 2024, Heinäkuu
Anonim
Laskuri MAX7221: n avulla
Laskuri MAX7221: n avulla

Laskimen luominen, joka kasvaa, kun painiketta painetaan MAX7221: llä.

Vaihe 1: Osat

MAX7221 tai MAX7219

Vaihtaa

4 7-segmenttinäyttö (yhteinen katodi)

2 vastusta: 10k ja 9.53k (käytin 9.1k ja se toimii edelleen)

Arduino

Vaihe 2: Piirin rakentaminen

Piirin rakentaminen
Piirin rakentaminen
Piirin rakentaminen
Piirin rakentaminen
Piirin rakentaminen
Piirin rakentaminen

Kirjoitin muistiin vain käyttämäni nastat. Löydät täydellisen nastaasettelun lomakkeesta tai liitin sen. Muista etsiä 7-segmenttinen näyttösi, koska se todennäköisesti eroaa omastani, mutta menettely on sama.

1. Liitä MAX7221: n numerot 0 - 3 näytön numeroihin 1 - 4. MAX -numero 0 yhdistää näytön numeron 1 jne. Näytöt ovat vain epätavallisia ja alkavat 1: stä 0: n sijasta.

2. Liitä MAX7221: n segmentit A - G segmentteihin A - G.

3. Syötä MAX -laitteeseen virta ja maadoitus. VCC menee nastaan 19. 10k vastus on myös kytketty nastoihin 19 ja 18. Maa kulkee nastoihin 4 ja 9.

4. MAX7221 kommunikoi Arduinon kanssa SPI: n (Serial Peripheral Interface) kautta. Tässä tapauksessa tarvitaan vain 3 johtoa, koska en käytä MISOa (Master In Slave Out). Yhdistä MAX7221 -laitteessa nasta 1 (Din) Arduinoon, minun tapauksessani käytin nasta 12. Tämä on MOSI (Master Out Slave In) tai tiedot. MAX: n nasta 12 on CS (Chip Select Input) ja miten tiedot ladataan siirtorekisteriin, liitin tämän Arduinon nastaan 9. Viimeinen yhteys on CLK, joka on MAXin nasta 13, liitin tämän Arduinon nastaan 10.

Muista syöttää virtaa ja maata Arduinon kautta 5 voltilla. Törmäsin ongelmaan, jossa Arduino ei antanut laudalleni tarpeeksi voimaa.

Tämä koskee MAX7221 -tuoteselostetta. Myös mistä kuvat ovat peräisin.

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

Vaihe 3: Kytkin

Kytkin
Kytkin

Johdotin kytkimen yllä olevasta kaaviosta. Löytyy osoitteesta

Käytin nasta 8 Arduinossa ohjaamaan kytkintä ja 10k vastusta.

Vaihe 4: Koodi

Käytin GitHubissa olevaa LedControl.h -kirjastoa ja niiden peruskoodia MAX7221: n käynnistämiseen. Muutin sitten koodia laskemaan 0 - 9999, kun painiketta painetaan.

#include "LedControl.h"

int -painike = 8;

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

void setup () {

pinMode (painike, INPUT);

lc. sammutus (0, false); // MAX7221 on virransäästötilassa, joten meidän on herätettävä se

lc.setIntensity (0, 15); // Kirkkauden asetus, enintään 15

lc.clearDisplay (0); // näytön tyhjentäminen

}

void loop () {

int tila = digitalRead (painike);

int i = 0;

int j = 0;

int k = 0;

int l = 0;

samalla (1) {

tila = digitalRead (painike);

while (osavaltio == 1) {

tila = digitalRead (painike);

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

i ++;

viive (100); // voit sotkea tätä

jos (i == 10) {

i = 0;

j ++;

jos (j == 10) {

j = 0;

k ++;

jos (k == 10) {

k = 0;

l ++;

jos (l == 10) {

samalla (1) {

lc.setRow (0, 0, 0x3E); // kun näyttö saavuttaa 9999, se näyttää U - 1

lc.setRow (0, 1, 0x1); // Hexin desimaaliluku

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

lc.setDigit (0, 3, 1, epätosi);

}

}

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

}

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

}

lc.setDigit (0, 2, j, epätosi);

}

}

}

}

Suositeltava: