Мазмұны:

MAX7221 қолданатын есептегіш: 4 қадам
MAX7221 қолданатын есептегіш: 4 қадам

Бейне: MAX7221 қолданатын есептегіш: 4 қадам

Бейне: MAX7221 қолданатын есептегіш: 4 қадам
Бейне: Interfacing ATMega32 to MAX7221 LED display driver 2024, Қараша
Anonim
MAX7221 көмегімен есептегіш
MAX7221 көмегімен есептегіш

MAX7221 көмегімен батырманы басқанда өсетін есептегіш құру.

1 -қадам: бөлшектер

MAX7221 немесе MAX7219

Ауыстыру

4 7 сегментті дисплей (жалпы катод)

2 резистор: 10k және 9.53k (мен 9.1k қолдандым, ол әлі де жұмыс істейді)

Ардуино

2 -қадам: Схеманы құру

Циклды құру
Циклды құру
Циклды құру
Циклды құру
Циклды құру
Циклды құру

Мен тек өзім қолданған түйреуіштерді ғана жаздым, сіз мәліметтер кестесінде түйреуіштің толық орналасуын таба аласыз немесе мен оны тіркедім. 7 сегментті дисплейді іздеңіз, себебі ол менікінен өзгеше болуы мүмкін, бірақ рәсім бірдей.

1. MAX7221 0 - 3 сандарын дисплейдегі 1 - 4 сандарына қосыңыз. MAX 0 цифры дисплейдің 1 цифрына қосылады. Дисплейлер дәстүрлі емес және 0 емес, 1 -ден басталады.

2. MAX7221 құрылғысындағы A - G сегменттерін дисплейдегі A - G сегменттеріне қосыңыз.

3. MAX қуаты мен жерге қосу. VCC түйреуіш 19 -ға өтеді. 10к резистор 19 және 18 -штырьға да қосылады. Жер 4 және 9 -түйреуіштерге өтеді.

4. MAX7221 Arduino -мен SPI (сериялық перифериялық интерфейс) арқылы байланысады. Бұл жағдайда тек 3 сым қажет, себебі мен MISO (Master In Slave Out) қолданбаймын. MAX7221 -де Arduino -ға 1 -ші түйінді (Din) қосыңыз, менің жағдайда мен 12 -штырьді қолдандым. Бұл сіздің MOSI (Master Out Slave In) немесе деректер. MAX -тегі 12 -ші түйін - бұл CS (Chip Select Input) және деректердің Shift регистріне қалай жүктелетінін, мен оны Arduino -дағы 9 -пинге қостым. Соңғы байланыс - бұл CLX, ол MAX -тің 13 -ші нүктесінде, мен оны Arduino -дағы 10 -шы істікке қостым.

5 вольтты Arduino арқылы қуат пен жерге қосуды қамтамасыз етіңіз. Мен Arduino тақтама жеткілікті қуат бермейтін мәселеге тап болдым.

Бұл MAX7221 мәліметтер парағына арналған. Сонымен қатар суреттер қайдан келді.

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

3 -қадам: қосқыш

Коммутатор
Коммутатор

Мен қосқышты жоғарыдағы схемадан жалғадым. Https://www.arduino.cc/kz/tutorial/button сайтында табылған

Мен коммутаторды басқару үшін Arduino -дегі 8 істікті және 10 к резисторды қолдандым.

4 -қадам: код

Мен GitHub -да табылған LedControl.h кітапханасын және MAX7221 қосу үшін олардың негізгі кодын қолдандым. Мен кодты түйме басылған кезде 0 - 9999 аралығында санау үшін өзгерттім.

#«LedControl.h» қосыңыз

int түймесі = 8;

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

жарамсыз орнату () {

pinMode (түйме, INPUT);

lc.shutdown (0, жалған); // MAX7221 қуатты үнемдеу режимінде, сондықтан оны ояту керек

lc.setIntensity (0, 15); // Жарықтықты орнату, максимум 15

lc.clearDisplay (0); // дисплейді тазарту

}

void loop () {

int state = digitalRead (түйме);

int i = 0;

int j = 0;

int k = 0;

int l = 0;

уақыт (1) {

күй = digitalRead (түйме);

while (state == 1) {

күй = digitalRead (түйме);

lc.setDigit (0, 3, i, жалған);

i ++;

кешіктіру (100); // сіз бұны шатастыра аласыз

егер (мен == 10) {

i = 0;

j ++;

егер (j == 10) {

j = 0;

k ++;

егер (k == 10) {

k = 0;

l ++;

егер (l == 10) {

уақыт (1) {

lc.setRow (0, 0, 0x3E); // дисплей 9999 жеткенде, U - 1 көрсетеді

lc.setRow (0, 1, 0x1); // Hexi ондық мәнінде

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

lc.setDigit (0, 3, 1, жалған);

}

}

lc.setDigit (0, 0, l, жалған);

}

lc.setDigit (0, 1, k, жалған);

}

lc.setDigit (0, 2, j, жалған);

}

}

}

}

Ұсынылған: