Агуулгын хүснэгт:

Arduino MAX7219 7 сегментийн дэлгэцийн заавар: 5 алхам
Arduino MAX7219 7 сегментийн дэлгэцийн заавар: 5 алхам

Видео: Arduino MAX7219 7 сегментийн дэлгэцийн заавар: 5 алхам

Видео: Arduino MAX7219 7 сегментийн дэлгэцийн заавар: 5 алхам
Видео: LDmicro 18: GPS-будильник Ublox NEO-6M (программирование лестничной схемы ПЛК микроконтроллера с помощью LDmicro) 2024, Арваннэгдүгээр
Anonim
Arduino MAX7219 7 сегментийн дэлгэцийн заавар
Arduino MAX7219 7 сегментийн дэлгэцийн заавар

MAX7219 бол 7 сегментийн LED (8 хүртэлх оронтой), блок дэлгэц (бар дэлгэц), катодын 64 бие даасан LED хөтлөхөд ашигладаг IC юм. Микроконтроллертой холбогдохын тулд MAX7219 нь SPI холбооны системийг ашигладаг. Тиймээс 64 LED жолоодохын тулд микроконтроллерийн 3 порттой байх шаардлагатай.

Энэ нийтлэлд би IC MAX7219-ийг драйвер болгон ашигладаг 7 сегмент модулийг хэрхэн ашиглахыг танд үзүүлэх болно.

Шаардлагатай бүрэлдэхүүн хэсгүүд:

  • MAX7219 7 сегментийн модуль
  • Ардуино Нано
  • утас холбогч
  • USB мини

Шаардлагатай номын сан:

LedControl

Энэхүү гарын авлагад би Arduino Nano хавтанг ашиглаж байна. Хэрэв та үүнийг хэзээ ч ашиглаж байгаагүй бол. Би өмнөх нийтлэлээ "Arduino Nano -г хэрхэн ашиглах талаар" уншихыг санал болгож байна.

Алхам 1: Бүх бүрэлдэхүүн хэсгүүдийг угсрах

Бүх бүрэлдэхүүн хэсгүүдийг нэгтгэх
Бүх бүрэлдэхүүн хэсгүүдийг нэгтгэх

Arduino самбарыг 7 сегмент модульд холбоно уу. Миний доор бичсэн зураг эсвэл зааврыг үзнэ үү.

Arduino-аас 7 сегмент хүртэл

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS/LOAD

Алхам 2: Номын сан нэмэх

Номын сан нэмэх
Номын сан нэмэх

Хэлхээ дууссаны дараа. "LedControl" номын санг Arduino IDE дээр нэмнэ үү.

Ардуинод номын сан нэмэхийн тулд та үүнийг миний өмнө хийсэн "Гадаад номын санг Arduino -д хэрхэн нэмэх вэ" нийтлэлээс уншиж болно.

Алхам 3: Нэмэлт функцууд

Нэмэлт функцууд
Нэмэлт функцууд

LedControl номын санг нэмсний дараа. Та 7 сегмент модулийг удирдахын тулд нэмэлт функцуудыг ашиглаж болно.

Маргаан

addr - дэлгэцийн хаяг

цифр - дэлгэц дээрх цифрийн байрлал (0..7) утга - харуулах утга. (0x00..0x0F)

dp нь аравтын бутархай цэгийг тохируулдаг.

Чиг үүрэг

setChar (addr, оронтой, утга.dp); // 7 битийн ASCII кодчилолд char төрлийн утгыг харуулах

setDigit (addr, оронтой тоо, утга, bolean dp); // тоонууд болон тэмдэгтүүдийг нэг функцээр харуулах setRow (addr, digit, value, boolean dp); // объектыг хүссэн цифрээр харуулах

Дэлгэрэнгүй мэдээллийг эндээс уншина уу.

Алхам 4: Ноорог байршуулах

Ноорог байршуулах
Ноорог байршуулах

Би энэ 7 сегментийн модулийн туршилтын зургийг зурсан. Та доорх кодыг хуулж аваад ноорог дээрээ буулгаж болно.

// Бид номын санг үргэлж оруулах ёстой

#"LedControl.h" -ийг оруулна уу

/*

Одоо бидэнд ажиллах LedControl хэрэгтэй байна. ***** Эдгээр зүү дугаар нь таны техник хангамжтай ажиллахгүй байж магадгүй юм *****

зүү 12 нь DataIn -тэй холбогдсон байна

зүү 11 нь CLK -тэй холбогдсон байна

зүү 10 нь LOAD -тэй холбогдсон байна

Бидэнд ганцхан MAX72XX байна.

*/

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

/ * бид дэлгэцийн шинэчлэлтийн хооронд жаахан хүлээдэг */

гарын үсэг зураагүй урт саатал = 500;

хүчингүй тохиргоо () {

/ * MAX72XX асаахад эрчим хүч хэмнэх горимд байгаа тул бид сэрээх дуудлага хийх ёстой */

lc.shutdown (0, худал);

/ * Гэрэлтүүлгийг дунд зэрэг болгох */

lc.setIntensity (0, 8);

/ * болон дэлгэцийг цэвэрлэ */

lc.clearDisplay (0);}

хүчингүй байна уу () {

lc.setChar (0, 7, 'H', худал);

lc.setChar (0, 6, 'E', худал);

lc.setChar (0, 5, 'L', худал);

lc.setChar (0, 4, 'L', худал);

lc.setChar (0, 3, '0', худал);

lc.setChar (0, 2, '.', худал);

lc.setChar (0, 1, '.', худал);

lc.setChar (0, 0, '.', худал);

саатал (саатал+1000);

lc.clearDisplay (0);

саатал (саатал);

lc.setDigit (0, 7, 1, худал);

саатал (саатал);

lc.setDigit (0, 6, 2, худал);

саатал (саатал);

lc.setDigit (0, 5, 3, худал);

саатал (саатал);

lc.setDigit (0, 4, 4, худал);

саатал (саатал);

lc.setDigit (0, 3, 5, худал);

саатал (саатал);

lc.setDigit (0, 2, 6, худал);

саатал (саатал);

lc.setDigit (0, 1, 7, худал);

саатал (саатал);

lc.setDigit (0, 0, 8, худал);

саатал (1500);

lc.clearDisplay (0);

саатал (саатал);

}

void loop () {сайн уу ();

}

Эсвэл доорх файлыг татаж авна уу.

Алхам 5: Үр дүн

Үр дүнг нь баярлуул.

Асуулт байвал коммент хэсэгт бичээрэй.

Дараагийн нийтлэлээр уулзацгаая.

Зөвлөмж болгож буй: