Talaan ng mga Nilalaman:
2025 May -akda: John Day | [email protected]. Huling binago: 2025-01-13 06:58
2 mga paraan upang pamahalaan ang isang 16 na pushbuttons keypad na may isang minimum na mga pin.
Hakbang 1: Intro
Kamakailan ay nagtrabaho ako sa isang paraan upang pamahalaan ang isang 4x4 touch keypad matrix na konektado sa isang clone ng Arduino. Ang mga itinakdang puntos ay:
-upang gamitin lamang ang 4 + 1 na mga pin sa halip na 8 mga pin sa atmega328p
-o upang magdagdag ng isang link sa LCD Display 4x20 CHAR sa pamamagitan ng I2C (2 pin)
-upang makontrol ang mga digital at analog na output.
Kaya, pagkakaroon ng maraming mga bagay upang makontrol sa isang halaga ng kasalanan ng I / O.
Hakbang 2: Mga Bagay na Gagamitin:
Bumili ako ng isang LCD display 4x20 na mga character at isang adaptor ng module ng I2C upang ikonekta ang display na may mga SDA (A4) at SCL (A5) na mga pin sa aking clone ng arduino.
Ginagamit ko ang sikat at ngayon ay lipas na ng MM74C922N: isang 8 hanggang 4 na paraan ng converter na magkasya sa 4x4 matrix keypad.
Lumikha ako ng isang clone ng arduino batay sa atmega328p at na-program sa pamamagitan ng isang konektor na HE10 (SPI bus) at isang USBasp cable.
Hakbang 3: Schematic at ang Lupon:
Ang board ay gawa sa:
-ang LCD keypad ay ginagamit lamang sa Arduino IDE, hindi posible sa LDmicro (Ladder programming)
-ang board ng MM74C922N: 16 na mga pushbutton na naka-code sa 16 na halagang binary sa 4 na piraso ng DCBA. Kapag ang isang pindutan ay pinindot: ang asul na humantong ilaw sa at isang halaga ay lilitaw sa DCBA (A ay ang LSB). Kapag ang isang pindutan ay pinakawalan: ang asul na humantong ilaw ay patay at ang halaga ay nai-reset sa zero sa DCBA.
-ang Arduino atmega238p clone board.
Hakbang 4: Paggamit ng LDmicro Sa Ladder Programming:
Ang code na ipasok ay gawa sa 4 na halaga sa 16 keypressed na halaga kaya't 16x16x16x16 na kombinasyon.
Sa sandaling iguhit mo ang SFC, kailangan mong isalin ito sa LADDER kasama ang pamamaraang ibinigay sa isa sa aking
mga itinuturo:
www.instructables.com/id/Arduino-tomation-…
Kapag na-type, i-compile ito bilang xxxx.hex at pagkatapos ay i-download ito sa downloader ng KHAZAMA.
Ang LCD display ay hindi maaaring mai-program sa LDmicro.
Nagbibigay ako ng LDmicro zip na may sketch na SERRURE.id dito at ang downloader ng KHAZAMA.
Hakbang 5: Paggamit ng Arduino IDE 1.8.x Sa Mightycore at SMlib:
Isasalin ko ang SFC sa isang state machine. Pagkatapos ginamit ko ang Arduino IDE na may Mightycore at SM library sa loob.
Nagpapakita ako ng mensahe tulad ng: ERROR, WAITING, UNLOCK, naabot ng estado, halaga ng keypressed sa LCD diplay.
Ibinibigay ko sa iyo ang sketch at ang SM lib. Para sa Mightycore tingnan ito:
www.instructables.com/id/Arduino-18x-Clone…
Hakbang 6: Upang Magwakas:
Ito ang dalawang paraan upang pamahalaan ang 16 keypad at inabot ako ng maraming oras upang makita ang mahusay na pagkakasunud-sunod ngunit ngayon ay gumagana ito ng maayos. Dapat mong igalang ang mga hakbang na ito:
-1 nakakita ng isang keypressed sa isang tumataas na gilid ng DA pin
-2 basahin ang halagang nabuo sa DCBA at ihambing sa mabuti
Maliban kung ito ay tiyak na hindi gagana.
Salamat sa lahat ng mga kagiliw-giliw na tutorial sa net.