Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-23 15:12
Ngayon nais kong ipakita ang isang proyekto na naipatupad ko sa dalawang bersyon. Gumagamit ang proyekto ng 12 shift register 74HC595 at 96 LEDs, Arduino Uno board na may Ethernet Shield Wiznet W5100. Ang 8 LEDs ay konektado sa bawat rehistro ng paglilipat. Ang mga bilang na 0-9 ay kinakatawan ng mga LED. Ang bawat rehistro ng paglilipat ay nilagyan ng 8 mga terminal ng output.
Ang bawat isa sa 4 na rehistro ng paglilipat 74HC595 ay bumubuo ng isang lohikal na yunit - isang display para sa listahan ng isang 4-digit na numero. Sa kabuuan, mayroong 3 lohikal na ipinapakita sa proyekto na binubuo ng 12 shift register.
Ang mga pagpapatupad ay katugma para sa Arduino boards Nano, Mega, Uno at para sa mga panangga at module ng Ethernet mula sa pamilyang Wiznet, partikular na mga modelo ng W5100 at W5500 (gamit ang library ng Ethernet2).
Mga gamit
- Arduino Uno / Nano
- Ethernet Wiznet W5100 / W5500
- 4 hanggang 12 shift register 74HC595
- 32 hanggang 96 LED diode
Hakbang 1: Nagpapatupad ng Mga Pagpapatupad sa Proyekto Gamit ang Arduino:
- Webserver - Direktang tumatakbo ang HTTP server sa Arduino, pinapayagan na bigyang-kahulugan ang HTML code
- WebClient - May kakayahang gumawa ang isang kliyente ng isang kahilingan sa HTTP sa isang remote server, na nagpapadala / nagda-download ng data
Webserver:
- Nagbibigay ng isang web page na HTML na may isang form na nagbibigay-daan sa iyo upang maglagay ng 3 mga numero ng apat na digit.
- Matapos ipadala ang form, ang data ay naproseso at nakaimbak sa memorya ng EEPROM, ang gumagamit ay may kaalaman tungkol sa pagpoproseso ng data ng isang hiwalay na subpage.
- Pagkatapos i-save ang data, ang gumagamit ay nai-redirect pabalik sa form.
- Ang memorya ng EEPROM ay independiyente sa enerhiya, maa-access ang data kahit na matapos ang pagbawi ng kuryente, ngunit i-restart din ang board.
- Ang lahat ng mga numero ay kinakatawan sa tatlong mga display na binubuo ng 12 74HC595 shift register.
WebClient:
- Ang komunikasyon sa web server ay nagaganap tuwing 5 segundo pagkatapos ng HTTP protocol.
- Nagpapatakbo ang web server ng isang web application na PHP na nagbibigay-daan sa iyo upang magpasok ng 3 mga numero ng apat na digit sa pamamagitan ng form na HTML.
- Ang data mula sa form ay nakaimbak sa isang MySQL database.
- Humiling si Arduino na kunin ang data mula sa database na ito sa pamamagitan ng isang query sa server.
- Ang naproseso na data ay na-parse ng Arduino, pagkatapos ay naka-plot gamit ang shift register 74HC595.
- Ang data ay naka-imbak din sa memorya ng EEPROM ng Arduino, ginagamit ang mga ito kung sakaling mabigo ang koneksyon sa web server / kapag na-restart ang mga board ng Arduino, ginagamit ito para sa paunang pag-render ng data sa mga rehistro ng shift.
- Ang data ay nai-o-overtake sa EEPROM lamang kapag nagbago ang data, ang mga cell ng EEPROM ay nai-save mula sa hindi kinakailangang pag-o-overtake.
Hakbang 2: Mga Kable at Screenshot
Ang koneksyon ng Cascade para sa shift registro 74HC595 (maaaring mapalawak ng x higit pa) - I-export mula sa TinkerCAD. Ang Screenshot ay naroroon mula sa webserver interface, kapag nakakakuha ito ng data sa pamamagitan ng form na HTML, iproseso ang mga ito, at i-save ang mga ito sa memorya ng EEPROM.
Hakbang 3: 74HC595 + Mga Source Code
Ito ay malinaw mula sa diagram na 3 data wires lamang ang ginagamit upang makontrol ang mga rehistro ng shift:
- Data Outlet - (SER hanggang 74HC595)
- Clock output - (SRCLK sa 74HC595)
- Latch Outlet - (RCLK hanggang 74HC595)
Ang mga rehistro ng paglilipat ay maaaring pagsamahin sa isang kaskad, habang ang iba pang mga peripheral ay maaari ding kontrolin ng mga rehistro ng shift - halimbawa, mga relay para sa paglipat ng mga elemento ng kuryente. Posible ring makontrol ang 500 magkakahiwalay na relay (na may sapat na bilang ng mga rehistro ng shift at supply ng kuryente) na may isang output ng data.
Kapag kinokontrol ang mga output ng mga rehistro, posible ring baguhin ang byte order sa pinakamahalagang bit - MSB UNA, o sa LSB - ang hindi gaanong makabuluhang kaunting. Bilang isang resulta, binabaligtad nito ang mga output. Sa isang kaso, halimbawa, 7 diode ang naiilawan, sa iba pang kaso 1 diode depende sa input at byte order.
Ang parehong pagpapatupad ay gumagamit ng memorya ng EEPROM, na maaaring mag-imbak ng data kahit na pagkatapos ng isang pagkabigo sa kuryente o pagkatapos ng isang restart ng board. Ang pangalawang paggamit ng memorya na ito ay ang kakayahang kumatawan sa huling kilalang data kung sakaling hindi posible na makipag-usap sa web server (error sa pagkakakonekta, server).
Ang memorya ay limitado sa 10, 000 hanggang 100, 000 na mga transcript. Ang mga pagpapatupad ay idinisenyo para sa pinakamaliit na posibleng pag-load ng memorya. Ang data ay hindi mai-o-overtake kapag binago ang mga ito. Kung ang parehong data ay nabasa mula sa web server / client, hindi sila nai-o-overtake sa memorya ng EEPROM.
Ang pagpapatupad ng software (panig ng Arduino) para sa WebClient ay maaaring subukan nang libre sa:
Nakikipag-usap ang Arduino sa isang web interface kung saan posible na baguhin ang 3 mga apat na digit na numero:
Humingi ng code para sa Arduino bilang webserver sa: [email protected] para sa higit pang mga itinuturo:
Inirerekumendang:
Pagkontrol sa Pitong Segment na Display Gamit ang Arduino at 74HC595 Shift Register: 6 na Hakbang
Pagkontrol sa Pitong Segment na Display Gamit ang Arduino at 74HC595 Shift Register: Hoy, ano na, Guys! Ang Akarsh dito mula sa CETech. Ang pitong Segment Ipinapakita ay mahusay na tingnan at palaging isang madaling gamiting tool upang ipakita ang data sa anyo ng mga digit ngunit mayroong isang sagabal sa kanila na kung saan kinokontrol namin ang isang Pitong Segment na Display sa reali
Tutorial: Paano Kinokontrol ng Arduino ang Maramihang Parehong Mga Device sa Address sa pamamagitan ng Paggamit ng TCA9548A I2C Multiplexer: 3 Mga Hakbang
Tutorial: Paano Kinokontrol ng Arduino ang Maramihang Parehong Mga Device sa Address sa pamamagitan ng Paggamit ng TCA9548A I2C Multiplexer: Paglalarawan: Ang TCA9548A I2C Multiplexer Module ay upang paganahin upang ikonekta ang mga aparato na may parehong I2C address (hanggang sa 8 parehong address I2C) na naka-hook hanggang sa isang microcontroller. Ang multiplexer ay kumikilos bilang isang gatekeeper, pinapatay ang mga utos sa napiling set o
Paggamit ng 2 Shift Registro (74HC595) upang Magmaneho ng 16 LEDs: 9 Mga Hakbang
Paggamit ng 2 Shift Registro (74HC595) sa Drive 16 LEDs: Ang circuit na ito ay gagamit ng 2 shift register (74HC595). Ang mga shift register ay magdadala bilang mga output na 16 LEDs. Ang bawat rehistro ng paglilipat ay magdadala ng 8 LEDs. Ang mga rehistro ng shift ay wired upang ang bawat output ng rehistro ng shift ay magiging hitsura ng isang duplicate ng iba pa
Pag-interface ng 7-Segment Display na May Shift Registro Gamit ang CloudX Microcontroller: 5 Hakbang
Pag-interface ng 7-Segment Display na May Shift Rehistro Gamit ang CloudX Microcontroller: Sa proyektong ito, naglilathala kami ng isang tutorial sa kung paano i-interface ang pitong segment na LED display sa CloudX microcontroller. Pitong segment na nagpapakita ay ginagamit sa maraming mga naka-embed na system at pang-industriya na aplikasyon kung saan ang saklaw ng mga output na maipapakita ay kno
48 X 8 Pag-scroll LED Matrix Display Paggamit ng Arduino at Shift Registro .: 6 Mga Hakbang (na may Mga Larawan)
48 X 8 Scrolling LED Matrix Display Paggamit ng Arduino at Shift Registro .: Kamusta lahat! Ito ang aking unang Maituturo at lahat tungkol sa paggawa ng 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 kay m