![Kā savienot ar MAX7219 vadāmu LED matricu 8x8 ar ATtiny85 mikrokontrolleri: 7 soļi Kā savienot ar MAX7219 vadāmu LED matricu 8x8 ar ATtiny85 mikrokontrolleri: 7 soļi](https://i.howwhatproduce.com/images/002/image-3944-19-j.webp)
Satura rādītājs:
2025 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2025-01-23 14:59
![Kā savienot ar MAX7219 vadāmu LED matricu 8x8 ar ATtiny85 mikrokontrolleri Kā savienot ar MAX7219 vadāmu LED matricu 8x8 ar ATtiny85 mikrokontrolleri](https://i.howwhatproduce.com/images/002/image-3944-20-j.webp)
MAX7219 kontrolieri ražo uzņēmums Maxim Integrated ir kompakts, sērijveida ieejas/izejas kopējā katoda displeja draiveris, kas var savienot mikrokontrolleru ar 64 atsevišķām gaismas diodēm, 7 segmentu ciparu LED displejiem līdz 8 cipariem, joslu diagrammas displejiem utt. -čips ir BCD koda B dekodētājs, multipleksās skenēšanas shēmas, segmentu un ciparu draiveri un 8 × 8 statiskā RAM, kas saglabā katru ciparu.
MAX7219 moduļus ir ļoti ērti lietot ar tādiem mikrokontrolleriem kā ATtiny85 vai, mūsu gadījumā, ar Tinusaur Board.
1. darbība: aparatūra
![Aparatūra Aparatūra](https://i.howwhatproduce.com/images/002/image-3944-21-j.webp)
![Aparatūra Aparatūra](https://i.howwhatproduce.com/images/002/image-3944-22-j.webp)
MAX7219 moduļi parasti izskatās šādi. Viņiem ir ieejas kopne vienā pusē un izejas kopne otrā. Tas ļauj jums ieslēgt 2 vai vairāk moduļu ķēdi, t.i., vienu pēc otra, lai izveidotu sarežģītākus iestatījumus.
Mūsu izmantotie moduļi ir savienojami ķēdē, izmantojot 5 mazus džemperus. Skatiet attēlu zemāk.
2. darbība. Pinout un signāli
MAX7219 modulim ir 5 tapas:
- VCC - jauda (+)
- GND-zeme (-)
- DIN - datu ievade
- CS - mikroshēmas izvēle
- CLK - pulkstenis
Tas nozīmē, ka, lai kontrolētu moduli, mums ir nepieciešami 3 tapas mikrokontrollera pusē ATtiny85. Tie būs:
- PB0 - savienots ar CLK
- PB1 - savienots ar CS
- PB2 - savienots ar DIN
Tas ir pietiekami, lai izveidotu savienojumu ar moduli MAX7219 un to ieprogrammētu.
3. solis: protokols
![Protokols Protokols](https://i.howwhatproduce.com/images/002/image-3944-23-j.webp)
Saziņa ar MAX7219 ir salīdzinoši vienkārša - tajā tiek izmantots sinhronais protokols, kas nozīmē, ka katram nosūtītajam datu bitam ir noteikts pulksteņa cikls, kas norāda uz šī datu bita klātbūtni.
Citiem vārdiem sakot, mēs nosūtām uz bitiem 2 paralēlas secības - vienu pulkstenim un otru datiem. To dara programmatūra.
4. solis: programmatūra
![Programmatūra Programmatūra](https://i.howwhatproduce.com/images/002/image-3944-24-j.webp)
Šis MAX7219 modulis darbojas šādi:
- Mēs ierakstām baitus tā iekšējā reģistrā.
- MAX7219 interpretē datus.
- MAX7219 kontrolē gaismas diodes matricā.
Tas nozīmē arī to, ka mums nav visu laiku jāapmeklē gaismas diodes, lai tās iedegtos - par to rūpējas MAX7219 kontrolieris. Tas varētu arī pārvaldīt gaismas diožu intensitāti.
Tātad, lai ērti izmantotu MAX7219 moduļus, mums ir nepieciešama šo funkciju bibliotēka.
Pirmkārt, mums ir nepieciešamas dažas pamatfunkcijas, lai ierakstītu reģistros MAX7219.
- Ieraksta baitu uz MAX7219.
- Vārda (2 baiti) ierakstīšana MAX7219.
Funkcija, kas kontrolierim raksta vienu baitu, izskatās šādi:
void max7219_byte (uint8_t data) {for (uint8_t i = 8; i> = 1; i--) {PORTB & = ~ (1 << MAX7219_CLK); // Iestatiet CLK uz LOW, ja (dati & 0x80) // Maskējiet datu MSB PORTB | = (1 << MAX7219_DIN); // Iestatīt DIN uz HIGH else PORTB & = ~ (1 << MAX7219_DIN); // Iestatiet DIN uz LOW PORTB | = (1 << MAX7219_CLK); // Iestatīt CLK uz HIGH data << = 1; // Shift pa kreisi}}
Tagad, kad mēs varam nosūtīt baitus uz MAX7219, mēs varam sākt sūtīt komandas. Tas tiek darīts, nosūtot 2 baitus - pirmais iekšējā reģistra adresei un otrais - datiem, kurus mēs vēlētos nosūtīt.
MAX7219 kontrollerī ir vairāk nekā ducis reģistra.
Komandas vai vārda nosūtīšana būtībā ir 2 secīgu baitu nosūtīšana. Funkcijas ieviešana ir ļoti vienkārša.
void max7219_word (uint8_t adrese, uint8_t dati) {PORTB & = ~ (1 << MAX7219_CS); // Iestatīt CS uz LOW max7219_byte (adrese); // Adreses sūtīšana max7219_byte (dati); // Datu nosūtīšana PORTB | = (1 << MAX7219_CS); // Iestatiet CS uz HIGH PORTB & = ~ (1 << MAX7219_CLK); // Iestatīt CLK uz LOW}
Šeit ir svarīgi atzīmēt līniju, kurā mēs atgriežam CS signālu HIGH - tas iezīmē secības beigas - šajā gadījumā komandas beigas. Līdzīga metode tiek izmantota, kontrolējot vairāk nekā vienu ķēdē savienotu matricu. Nākamais solis, pirms sākam ieslēgt un izslēgt gaismas diodes, ir inicializēt MAX7219 kontrolieri. Tas tiek darīts, ierakstot noteiktas vērtības noteiktos reģistros. Ērtības labad, kodējot to, mēs varētu ievietot inicializācijas secību masīvā.
uint8_t initseq = {0x09, 0x00, // Atšifrēšanas režīma reģistrs, 00 = Bez atšifrēšanas 0x0a, 0x01, // Intensitātes reģistrs, 0x00.. 0x0f 0x0b, 0x07, // Skenēšanas ierobežojumu reģistrs, 0x07, lai parādītu visas rindas 0x0c, 0x01, // Izslēgšanas reģistrs, 0x01 = Normal Operation 0x0f, 0x00, // Display-Test Register, 0x00 = Normal Operation};
Mums vienkārši jāsūta 5 iepriekš minētās komandas secībā kā adreses/datu pāri. Nākamais solis - iedegt gaismas diožu rindu.
Tas ir ļoti vienkārši - mēs vienkārši uzrakstām vienu komandu, kur pirmais baits ir adrese (no 0 līdz 7), bet otrais baits ir 8 biti, kas attēlo 8 gaismas diodes rindā.
void max7219_row (uint8_t adrese, uint8_t dati) {if (adrese> = 1 && adrese <= 8) max7219_word (adrese, dati); }
Ir svarīgi atzīmēt, ka tas darbosies tikai 1 matricai. Ja mēs ķēdē savienojam vairāk matricu, tie visi parāda vienādus datus. Iemesls tam ir tas, ka pēc komandas nosūtīšanas mēs atgriežam CS signālu HIGH, kas liek visiem ķēdes MAX7219 kontrolieriem bloķēties un parādīt pēdējo komandu.
Ieteicams:
Divciparu displejs, izmantojot vienu 8x8 LED matricu: 3 soļi
![Divciparu displejs, izmantojot vienu 8x8 LED matricu: 3 soļi Divciparu displejs, izmantojot vienu 8x8 LED matricu: 3 soļi](https://i.howwhatproduce.com/images/008/image-21373-j.webp)
Divciparu displejs, izmantojot vienu 8x8 LED matricu: Šeit es vēlētos izveidot istabas temperatūras un mitruma indikatoru. Divciparu skaitļu attēlošanai es izmantoju vienu 8x8 LED matricu, un es domāju, ka daļa projekta kļuva noderīgāka. Es ievietoju finālā, kas būvēts, izmantojot kartona kastīti, sāpes
Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi
![Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi Arduino: Potencio indikators izmanto LED matricu MAX7219: 4 soļi](https://i.howwhatproduce.com/images/009/image-26899-j.webp)
Arduino: Potencio indikators izmanto LED matricu MAX7219: Iepriekšējā apmācībā esmu norādījis potenciometru, izmantojot RGB gredzena neo pikseļu vadu. to varat redzēt šajā rakstā " Potencio indikators izmanto RGB neopikseli " Un šodien es parādīšu potenciātora indikatoru, izmantojot MAX7219 LED met
Kā lietot Max7219 8x8 punktu matricu ar "skiiiD": 9 soļi
![Kā lietot Max7219 8x8 punktu matricu ar "skiiiD": 9 soļi Kā lietot Max7219 8x8 punktu matricu ar "skiiiD": 9 soļi](https://i.howwhatproduce.com/images/010/image-29717-j.webp)
Kā lietot Max7219 8x8 punktu matricu ar "skiiiD": Šī ir video instrukcija par Max7219 8x8 punktu matricu, izmantojot "skiiiD" Pirms sākuma zemāk ir pamata apmācība, kā lietot skiiiDhttps: //www.instructables.com/id /Darba sākšana-W
Kā izveidot 8x8 BIG LED matricu (MAX7219 LED 10mm): 9 soļi (ar attēliem)
![Kā izveidot 8x8 BIG LED matricu (MAX7219 LED 10mm): 9 soļi (ar attēliem) Kā izveidot 8x8 BIG LED matricu (MAX7219 LED 10mm): 9 soļi (ar attēliem)](https://i.howwhatproduce.com/images/011/image-30624-j.webp)
Kā izveidot 8x8 BIG LED matricu (MAX7219 LED 10mm): vai esat strādājis ar gatavu 8x8 LED matricu kā displeju? Tie ir dažādu izmēru un ir diezgan interesanti strādāt. Liels, viegli pieejams izmērs ir aptuveni 60 mm x 60 mm. Tomēr, ja jūs meklējat daudz lielāku gatavu LED matricu
Galda sīkrīks ar 8x8 LED RGB matricu un Arduino Uno: 6 soļi
![Galda sīkrīks ar 8x8 LED RGB matricu un Arduino Uno: 6 soļi Galda sīkrīks ar 8x8 LED RGB matricu un Arduino Uno: 6 soļi](https://i.howwhatproduce.com/images/001/image-2056-58-j.webp)
Galda sīkrīks ar 8x8 LED RGB matricu un Arduino Uno: Sveiki, dārgais! Šajā apmācībā mēs darīsim DIY RGB LED sīkrīku, ko varētu izmantot kā galda sīkrīku vai pretgaismu. Bet, pirmkārt, pievienojieties manam telegrammas kanālam, lai redzētu vairāk pārsteidzošu projektu. Turklāt tā ir mana motivācija