Talaan ng mga Nilalaman:

48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro .: 6 Mga Hakbang (na may Mga Larawan)
48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro .: 6 Mga Hakbang (na may Mga Larawan)

Video: 48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro .: 6 Mga Hakbang (na may Mga Larawan)

Video: 48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro .: 6 Mga Hakbang (na may Mga Larawan)
Video: CS50 2013 - Week 9 2024, Nobyembre
Anonim
48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro
48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro
48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro
48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro

Kumusta ang lahat

Ito ang aking unang Maituturo at lahat tungkol sa paggawa ng isang 48 x 8 Programmable Scrolling LED Matrix gamit ang isang Arduino Uno at 74HC595 shift register. Ito ang aking unang proyekto sa isang Arduino development board. Ito ay isang hamon na ibinigay sa akin ng aking guro. Sa oras na iyon ng pagtanggap ng hamon na ito, hindi ko alam kung paano magpikit ng isang LED gamit ang isang arduino. Kaya, sa palagay ko kahit na ang isang nagsisimula ay magagawa ito nang may kaunting pasensya at pag-unawa. Nagsimula ako sa isang maliit na pagsasaliksik tungkol sa mga rehistro ng shift at multiplexing sa arduino. Kung bago ka sa paglilipat ng mga rehistro, inirerekumenda ko ang pag-aaral ng mga pangunahing kaalaman sa mga multiplexing at daisy-chaining shift register bago magsimula sa mga matrice. Makakatulong sa iyo iyon ng maraming upang maunawaan ang code at ang pagtatrabaho ng display ng pag-scroll.

Hakbang 1: Pagtitipon ng Mga Tool at Mga Sangkap

Pagtitipon ng Mga Tool at Mga Sangkap
Pagtitipon ng Mga Tool at Mga Sangkap

Mga Bahagi

  • 1. Arduino Uno R3 - 1
  • 2. 74HC595 8 bit Serial sa Parallel Shift Registro. - 7
  • 3. BC 548 / 2N4401 Transistors - 8
  • 4. 470 Mga resistensya ng Ohms - bilang ng mga haligi + 8
  • 5. Pref Board 6x4 pulgada - 4
  • 6. Kulay na naka-code na mga wire - Tulad ng kinakailangan
  • 7. Mga may hawak ng IC - 7
  • 8. 5 mm o 3 mm 8x8 karaniwang cathode mono na kulay LED Matrix - 6
  • 9. Mga Header ng Lalaki at Babae - Kung kinakailangan.

Kinakailangan ang Mga Tool

  • 1. Soldering kit
  • 2. Multimeter
  • 3. Pandikit na baril
  • 4. De-soldering pump
  • 5. 5V Power Supply

Hakbang 2: Pagbuo ng Circuit sa Breadboard

Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard
Pagbuo ng Circuit sa Breadboard

Ang unang bagay na dapat mong gawin bago ang pagbuo ng prototype ay upang makakuha ng isang diagram ng pin ng iyong 8x8 matrix at markahan ang isang sanggunian para sa pagkilala sa mga pin sa lahat ng iyong mga matrice. Maaari kang makatulong sa iyo habang pinag-iipon ang circuit.

Nag-attach ako ng isang diagram ng pin ng matrix module na ginamit ko dito. Sa aking module ang mga hilera ay ang mga negatibong pin. Ang diagram ng pin na ito ay mananatiling pareho para sa karamihan ng mga module sa merkado.

Ipinapakita sa circuit na ang isang solong rehistro ng paglilipat ay ginagamit upang makontrol ang 8 mga hilera at para sa pagkontrol sa mga haligi, gumagamit kami ng isang rehistro ng shift para sa bawat 8 haligi.

Bumuo tayo ng isang simpleng 8 x 8 display ng pag-scroll sa breadboard.

Ang circuit ay nahahati sa dalawang bahagi - kontrol ng hilera at kontrol sa haligi. Itayo muna natin ang kontrol sa haligi.

Ang Pin 4 mula sa arduino ay konektado sa Pin 14 (SER) ng shift register. (Ito ang serial input input data ng shift register. Ang mga antas ng lohika na kinakailangan upang i-on ang mga LED ay pinakain sa pamamagitan ng pin na ito

Ang Pin 3 mula sa arduino ay konektado sa Pin 12 (RCLK) ng rehistro ng shift. (Pangalanan natin ang pin na ito bilang output relo. Ang data sa memorya ng mga rehistro ng paglilipat ay itinulak sa output kapag na-trigger ang orasan na ito.)

Ang Pin 2 mula sa arduino ay konektado sa Pin 11 (SRCLK) ng shift register. (Ito ang input clock pin na naglilipat ng data sa memorya.)

Ang VCC + 5V ay ibinibigay sa rehistro ng shift sa pamamagitan ng Pin 16 at pareho ang konektado sa Pin 10. (Bakit? Ang Pin 10 ay ang SRCLR Pin, na nililimas ang data sa shift register kapag na-trigger. Ito ay isang aktibong low pin, kaya't upang mapanatili ang data sa memorya ng shift register, ang pin na ito ay kailangang ibigay sa + 5V sa lahat ng oras.)

Ang lupa ay konektado sa parehong GND Pin (Pin 8 ng shift register) at OE Pin (Pin 13 ng shift register). (Bakit? Ang pin na paganahin ang pin ay kailangang ma-trigger na in-order upang magbigay ng mga output ayon sa signal ng orasan. Ito ay isang aktibong mababang pin tulad ng SRCLR Pin, kaya't kailangang panatilihin ito sa ground state sa lahat ng oras upang paganahin ang output.)

Ang mga haligi ng haligi ng matrix ay konektado sa shift register tulad ng ipinakita sa circuit diagram na may 470 ohms resistor sa pagitan ng matrix at ng shift register

Ngayon, para sa circuit control circuit.

Ang Pin 7 mula sa arduino ay konektado sa Pin 14 (SER) ng rehistro ng shift

Ang Pin 5 mula sa arduino ay konektado sa Pin 11 (SRCLK) ng shift register

Ang Pin 6 mula sa arduino ay konektado sa Pin 12 (RCLK) ng rehistro ng shift

Ang VCC + 5V ay ibinibigay sa Pin 16 at Pin 10 tulad ng inilarawan sa itaas

Ang ground ay konektado sa Pin 8 at Pin 13

Tulad ng nabanggit ko sa itaas, ang mga hilera ay ang mga negatibong pin sa aking kaso. Mas mahusay na isaalang-alang ang mga negatibong pin ng iyong matrix bilang mga hilera ng iyong display. Ang koneksyon sa lupa ay kailangang ilipat sa mga negatibong pin gamit ang BC548 / 2N4401 transistors na kinokontrol ng mga antas ng output ng lohika ng rehistro ng shift. Kaya't mas maraming mga negatibong pin, mas maraming mga transistor na kailangan namin

Ibigay ang mga koneksyon sa hilera tulad ng ipinakita sa circuit diagram

Kung nagtagumpay ka sa paggawa ng 8 x 8 matrix display prototype, maaari mo lamang na kopyahin ang bahagi ng circuit para sa kontrol ng haligi at palawakin ang matrix sa anumang bilang ng mga haligi. Kailangan mo lamang magdagdag ng isang 74HC595 para sa bawat 8 haligi (isang 8 x 8 module) at daisy chain ito sa nakaraang isa.

Daisy chains ang shift registro para sa pagdaragdag ng higit pang mga haligi

Ang daisy chain sa electrical engineering ay isang scheme ng mga kable kung saan maraming mga aparato ang wired magkasama sa isang pagkakasunud-sunod.

Ang mekanismo ay simple: ang SRCLK (input orasan. Pin 11) at ang RCLK (output orasan. Pin 12) na mga pin ay ibinahagi sa pagitan ng lahat ng mga rehistro ng shift na may daisy habang ang bawat QH PIN (Pin 9) ng nakaraang rehistro ng shift sa Ginamit ang kadena bilang serial input para sa sumusunod na rehistro ng shift sa pamamagitan ng SER PIN (Pin 14).

Sa mga simpleng salita, sa pamamagitan ng pag-chansa ng daisy ng mga rehistro ng shift, maaari silang makontrol bilang isang solong rehistro ng shift na may isang mas malaking memorya. Halimbawa, kung ikaw ay may kadena ng dalawang 8 bit shift rehistro, gagana ang mga ito tulad ng isang solong 16 bit shift register.

Ang code

Sa code pinapakain namin ang mga haligi na may kani-kanilang mga antas ng lohika ayon sa input habang ini-scan namin kasama ang mga hilera. Ang mga character mula sa A hanggang Z ay tinukoy sa code bilang mga antas ng lohika sa isang byte array. Ang bawat character ay 5 pixel ang lapad at 7 pixel ang taas. Nagbigay ako ng isang mas detalyadong paliwanag tungkol sa pagtatrabaho ng code bilang mga komento sa mismong code.

Ang code ng Arduino ay nakakabit dito.

Hakbang 3: Paghihinang

Paghihinang
Paghihinang
Paghihinang
Paghihinang
Paghihinang
Paghihinang

Upang gawing mas madaling maunawaan ang soldered circuit, ginawa ko ito hangga't maaari at nagbigay ng magkakahiwalay na board para sa mga tagakontrol ng hilera at haligi at ikinonekta silang magkasama gamit ang mga header at wire. Maaari mo itong gawing mas maliit sa pamamagitan ng paghihinang ng mga sangkap na malapit sa isa't isa o kung mahusay ka sa pagdidisenyo ng PCB, maaari ka ring gumawa ng isang mas maliit na pasadyang PCB.

Siguraduhing maglagay ng 470 ohms resistor sa bawat pin na humahantong sa matrix. Palaging gumamit ng mga header upang ikonekta ang LED Matrices sa board. Mas mahusay na huwag idirekta ang mga ito nang direkta sa board dahil ang matagal na pagkakalantad sa init ay maaaring permanenteng makapinsala sa kanila.

Tulad ng paggawa ko ng magkakahiwalay na mga board para sa mga kontrol ng hilera at haligi, pinahaba ko ang mga wire mula sa isang board papunta sa isa pa upang ikonekta ang mga haligi. Dito, ang board sa itaas ay para sa pagkontrol ng mga hilera at ang board sa ibaba ay para sa pagkontrol sa mga haligi.

kailangan lang nito ng isang solong 74HC595 upang himukin ang lahat ng 8 mga hilera. Ngunit batay sa bilang ng mga haligi, mas maraming mga rehistro ng shift ang dapat idagdag, walang limitasyong panteorya para sa bilang ng mga haligi na maaari mong idagdag sa matrix na ito. Gaano kalaki ang makakaya mo? Ipaalam sa akin kung makarating ka doon!;)

Hakbang 4: Pagsubok sa Tapos na Unang Kalahati ng Circuit

Pagsubok sa Tapos na Unang Kalahati ng Circuit
Pagsubok sa Tapos na Unang Kalahati ng Circuit

Palaging subukan ito sa kalahati upang makahanap ng mga posibleng error tulad ng maluwag na koneksyon, maling koneksyon sa pin atbp: Maraming mga tao na humingi sa akin ng tulong sa paghahanap ng error sa kanilang matrix ay nagkamali sa row-haligi na pin-out ng matrix module. Suriin ito nang dalawang beses bago maghinang at gumamit ng mga naka-code na kulay na mga wire upang madaling makilala ang mga pin.

Hakbang 5: Pagbuo ng Ikalawang Half

Pagbuo ng Ikalawang Half
Pagbuo ng Ikalawang Half
Pagbuo ng Ikalawang Half
Pagbuo ng Ikalawang Half
Pagbuo ng Ikalawang Half
Pagbuo ng Ikalawang Half

Palawakin ang parehong circuit control control. Ang mga hilera ay konektado sa serye sa nakaraang isa.

Ang mga SRCLK at RCLK na pin ay kinuha nang kahanay at ang QH (Serial data out. Pin 9) ng huling rehistro ng shift ng tapos na circuit ay konektado sa SER (Serial Data in. Pin 14) ng susunod na rehistro ng shift. Ang kapangyarihan ng VCC at GND ay ibinabahagi din sa pagitan ng lahat ng mga IC.

Hakbang 6: Ang Resulta

Image
Image

Matapos mong matapos sa paghihinang, ang susunod na hakbang ay upang gumawa ng isang kaso para sa iyong display. Palaging mas mahusay na mag-disenyo ng isang pasadyang kaso gamit ang Fusion 360 o anumang iba pang tool sa disenyo ng 3D at i-print ang kaso ng 3D. Dahil wala akong access sa pag-print sa 3D sa oras na iyon, gumawa ako ng isang kahoy na kaso sa tulong ng isang kaibigan na mahusay sa paggawa ng kahoy.

Inaasahan kong nasiyahan ka sa pagbabasa ng itinuturo na ito. I-post ang mga larawan ng iyong bersyon ng proyektong ito sa seksyon ng mga komento sa ibaba at Kung mayroon kang anumang mga katanungan, huwag mag-atubiling itanong ito dito o magpadala ng isang mail sa [email protected]. Masaya akong tulungan ka.

Inirerekumendang: