Sa tutorial na ito pupunta kami sa isang 4x2 (8 key) pindutin ang keypad sa ATMEGA32A microcontroller. Alam nating lahat ang keypad ay isa sa pinakamahalagang mga aparato ng pag-input na ginamit sa electronics engineering. Ang modyul na ito ay walang aktwal na mga susi, ngunit may espesyal na idinisenyo na capacitive metal pad, at ang mga pad na ito ay napaka-sensitibo. Kaya't kapag ang isang tao ay nakikipag-ugnay sa isa sa mga pad, magkakaroon ng isang capacitive na pagbabago sa kaukulang loop, at ang pagbabagong ito ay madama ng control electronic sa modyul. Bilang isang tugon sa pagpindot ang kaukulang pad output pin ay napupunta mataas.
Para sa isang walong key touch pad magkakaroon kami ng walong output. Bagaman mayroong iba pang mga tampok sa modyul na ito, hindi namin ito tatalakayin dito.
Kinakailangan ang Mga Bahagi
Hardware: ATMEGA32 microcontroller, power supply (5v), AVR-ISP PROGRAMMER, JHD_162ALCD (16x2LCD), 100uF capacitor, 100nF capacitor, 1KΩ resistor (2 piraso), Touch keypad module.
Software: Atmel studio 6.1 o Atmel studio 6.2, progisp o flash magic.
Circuit Diagram at Paggawa ng Paliwanag
Sa circuit PORTB ng ATMEGA32 ay konektado sa data port LCD. Narito dapat tandaan na huwag paganahin ang komunikasyon ng JTAG sa PORTC sa ATMEGA sa pamamagitan ng pagbabago ng mga byte ng fuse, kung nais na gamitin ang PORTC bilang isang normal na port ng komunikasyon. Sa 16x2 LCD mayroong 16 na pin sa lahat kung mayroong back light, kung walang back light magkakaroon ng 14 na pin. Maaari ng isang tumakbo o iwanan ang mga light light pin. Ngayon sa 14 na pin mayroong 8 data pin (7-14 o D0-D7), 2 power supply pin (1 & 2 o VSS & VDD o gnd & + 5v), 3 rd pin para sa control ng kaibahan (kinokontrol ng VEE kung gaano dapat makapal ang mga character ipinakita), at 3 control pin (RS & RW & E)
Sa circuit, maaari mong obserbahan na kumuha lamang ako ng dalawang control pin, ito ay nagbibigay ng kakayahang umangkop ng mas mahusay na pag-unawa, ang kaibahan bit at READ / WRITE ay hindi madalas na ginagamit upang maaari silang maiksi sa lupa. Inilalagay nito ang LCD sa pinakamataas na kaibahan at mode na basahin. Kailangan lang naming makontrol ang Mga PIN na INABAYAHAN at RS upang magpadala ng mga character at data nang naaayon.
Ang mga koneksyon na tapos para sa LCD ay ibinibigay sa ibaba:
PIN1 o VSS sa lupa
Ang PIN2 o VDD o VCC sa + 5v na lakas
PIN3 o VEE sa lupa (nagbibigay ng pinakamataas na maximum na kaibahan para sa isang nagsisimula)
PIN4 o RS (Pagpili ng Rehistro) sa PD6 ng uC
Ang PIN5 o RW (Basahin / Isulat) sa ground (inilalagay ang LCD sa read mode ay pinapagaan ang komunikasyon para sa gumagamit)
PIN6 o E (Paganahin) sa PD5 ng uC
PIN7 o D0 hanggang PB0 ng uC
PIN8 o D1 hanggang PB1 ng uC
PIN9 o D2 hanggang PB2 ng uC
PIN10 o D3 hanggang PB3 ng uC
PIN11 o D4 hanggang PB4 ng uC
PIN12 o D5 hanggang PB5 ng uC
PIN13 o D6 hanggang PB6 ng uC
PIN14 o D7 hanggang PB7 ng uC
Sa circuit maaari mong makita na ginamit namin ang 8bit na komunikasyon (D0-D7) subalit hindi ito isang sapilitan, maaari naming gamitin ang 4bit na komunikasyon (D4-D7) ngunit sa 4 bit na programa sa komunikasyon ay medyo kumplikado.
Kaya sa pamamagitan ng pagmamasid sa talahanayan sa itaas ay kumokonekta kami ng 10 mga pin ng LCD sa controller kung saan ang 8 mga pin ay mga pin ng data at 2 mga pin para sa kontrol.
Bago magpatuloy, mahalagang malaman iyon, gagana ang capacitive module para sa isang boltahe na 2.5V. At ang kasalukuyang iginuhit din ng touch module ay hindi mataas. Kaya para sa pagkuha ng 2.5V para sa module mula sa 5V gagamitin namin ang boltahe divider circuit.
Ang boltahe divider circuit na dati ng mga resistors ay ipinapakita sa figure sa ibaba.
Ngayon ang boltahe divider circuit ay nagbibigay ng mababang voltages para sa mga module at iba pang mga sanggunian. Tulad ng ipinakita sa figure, ang output boltahe sa midpoint ay isang ratio ng resistances. Kaya para sa pagkuha ng 2.5v mula sa 5V gagamitin namin ang R1 = R2 = 1KΩ, kaya para sa isang supply boltahe ng 5V ang midpoint voltage ay magiging 2.5V na patungkol sa lupa. Ang boltahe na ito mula sa divider circuit ay konektado sa module. Ang isang kapasitor ay konektado sa kabuuan nito para sa pag-filter ng mga harmonika, tulad ng ipinakita sa circuit diagram.
Ang output port ng touch module ay konektado sa atmega controller, kaya't tuwing ang isang pad ay hinawakan ang kaukulang pin output ay mataas. Ang pagbabago sa lohika na ito ay nasasabik sa taga-kontrol. Ipinapakita ng controller ang digit sa LCD batay sa pin, na mataas.
Tulad ng seguridad, maaaring hilahin ng isa ang lahat ng mga module ng output pin sa lupa sa pamamagitan ng 10K resistors, kahit na hindi ito sapilitan.
Ang pagtatrabaho ng TOUCH KEAYPAD INTERFACE ay pinakamahusay na ipinaliwanag sa hakbang-hakbang ng C code na ibinigay sa ibaba.