V tomto tutoriálu budeme propojovat dotykovou klávesnici 4x2 (8 kláves) s mikrokontrolérem ATMEGA32A. Všichni víme, že klávesnice je jedním z nejdůležitějších vstupních zařízení používaných v elektronice. Tento modul nemá skutečné klávesy, ale má speciálně navržené kapacitní kovové podložky a tyto podložky jsou velmi citlivé. Takže když se osoba dostane do kontaktu s jednou z podložek, dojde k kapacitní změně v odpovídající smyčce a tato změna bude snímána řídicí elektronikou v modulu. V odezvě na dotek je výstupní pin odpovídající podložky vysoký.
Pro dotykovou podložku s osmi klávesami budeme mít osm výstupů. Ačkoli s tímto modulem existují další funkce, nebudeme je zde diskutovat.
Požadované komponenty
Hardware: mikrokontrolér ATMEGA32, napájecí zdroj (5v), programátor AVR-ISP, JHD_162ALCD (16x2LCD), kondenzátor 100uF, kondenzátor 100nF, rezistor 1KΩ (2 kusy), modul dotykové klávesnice.
Software: Atmel studio 6.1 nebo Atmel studio 6.2, progisp nebo flash magic.
Schéma zapojení a pracovní vysvětlení
V obvodu PORTB ATMEGA32 je připojen k datovému portu LCD. Zde je třeba pamatovat na zakázání komunikace JTAG v PORTC na ATMEGA změnou bajtů pojistek, pokud chcete použít PORTC jako normální komunikační port. Na 16x2 LCD je 16 kolíků, pokud je podsvícení, pokud není podsvícení, bude 14 kolíků. Jeden může napájet nebo nechat kolíky podsvícení. Nyní ve 14 kolíky jsou 8 datových kolíky (7-14 nebo D0-D7), 2 napájecí kolíky elektrárny (1 & 2 nebo VSS a VDD nebo GND a + 5 V), 3 rd kolík pro řízení kontrastu (VEE-určuje, jak silná znaky musí být (zobrazeno) a 3 ovládací piny (RS & RW & E)
V obvodu můžete pozorovat, že jsem vzal pouze dva ovládací piny, což dává flexibilitu lepšího porozumění, kontrastní bit a READ / WRITE se často nepoužívají, takže mohou být zkratovány na zem. LCD se tak dostane do režimu nejvyššího kontrastu a čtení. Abychom mohli odpovídajícím způsobem odesílat znaky a data, musíme pouze ovládat piny ENABLE a RS.
Připojení, která se provádí pro LCD, jsou uvedena níže:
PIN1 nebo VSS k zemi
PIN2 nebo VDD nebo VCC na + 5V napájení
PIN3 nebo VEE k zemi (poskytuje maximální kontrast nejlepší pro začátečníky)
PIN4 nebo RS (výběr registru) na PD6 uC
PIN5 nebo RW (čtení / zápis) na zem (přepnutí LCD do režimu čtení usnadňuje uživateli komunikaci)
PIN6 nebo E (povolit) na PD5 uC
PIN7 nebo D0 až PB0 uC
PIN8 nebo D1 až PB1 uC
PIN9 nebo D2 až PB2 uC
PIN10 nebo D3 až PB3 uC
PIN11 nebo D4 až PB4 uC
PIN12 nebo D5 až PB5 uC
PIN13 nebo D6 až PB6 uC
PIN14 nebo D7 až PB7 uC
V obvodu, který vidíte, jsme použili 8bitovou komunikaci (D0-D7), ale to není povinné, můžeme použít 4bitovou komunikaci (D4-D7), ale se 4bitovým komunikačním programem se stává trochu složitější.
Pozorováním výše uvedené tabulky tedy připojujeme 10 pinů LCD k řadiči, ve kterém 8 pinů jsou datové piny a 2 piny pro ovládání.
Než půjdeme dále, je důležité vědět, že kapacitní modul pracuje na napětí 2,5V. A také proud odebíraný dotykovým modulem není vysoký. Takže pro získání 2,5 V pro modul z 5 V použijeme obvod děliče napětí.
Tvarovač děliče napětí pomocí odporů je zobrazen na obrázku níže.
Obvod děliče napětí nyní poskytuje nízká napětí pro moduly a další reference. Jak je znázorněno na obrázku, výstupní napětí ve středním bodě je poměr odporů. Takže pro získání 2,5 V z 5 V použijeme R1 = R2 = 1 KΩ, takže pro napájecí napětí 5 V bude střední napětí 2,5 V vzhledem k zemi. Toto napětí z dělícího obvodu je připojeno k modulu. K ní je připojen kondenzátor pro filtrování harmonických, jak je znázorněno na schématu zapojení.
Výstupní port dotykového modulu je připojen k ovladači atmega, takže kdykoli se dotknete podložky, odpovídající výstup kolíku se zvýší. Tato logická změna je snímána regulátorem. Řadič zobrazuje číslici na LCD na základě kolíku, který jde vysoko.
Z bezpečnostních důvodů je možné stáhnout všechny výstupní piny modulu na zem přes 10K rezistory, i když to není povinné.
Fungování TOUCH KEAYPAD INTERFACE je nejlépe vysvětlit krok za krokem v C kódu uvedeném níže.