I denna handledning kommer vi att ansluta en 4x2 (8-tangent) pekskärm med ATMEGA32A mikrokontroller. Vi vet alla att knappsatsen är en av de viktigaste inmatningsenheterna som används inom elektronikteknik. Denna modul har inte riktiga nycklar, men har specialdesignade kapacitiva metallkuddar, och dessa kuddar är mycket känsliga. Så när en person kommer i kontakt med en av dynorna kommer en kapacitiv förändring i motsvarande slinga, och denna förändring kommer att kännas av styrelektroniken i modulen. Som ett svar på beröringen blir motsvarande padutgångsstift högt.
För en pekplatta med åtta tangenter kommer vi att ha åtta utgångar. Även om det finns andra funktioner med den här modulen kommer vi inte att diskutera dem här.
Komponenter krävs
Hårdvara: ATMEGA32 mikrokontroller, strömförsörjning (5v), AVR-ISP PROGRAMMER, JHD_162ALCD (16x2LCD), 100uF kondensator, 100nF kondensator, 1KΩ motstånd (2 stycken), Touch-knappsatsmodul.
Programvara: Atmel studio 6.1 eller Atmel studio 6.2, progisp eller flash magi.
Kretsschema och arbetsförklaring
I kretsen är PORTB på ATMEGA32 ansluten till dataport LCD. Här bör man komma ihåg att inaktivera JTAG-kommunikationen i PORTC till ATMEGA genom att byta säkringsbyte, om man vill använda PORTC som en normal kommunikationsport. I 16x2 LCD finns det 16 stift överallt om det finns en bakgrundsbelysning, om det inte finns något bakgrundsbelysning kommer det att finnas 14 stift. Man kan driva eller lämna bakljuset. Nu i de 14 stiften finns 8 datastift (7-14 eller D0-D7), 2 effektmatningsstiften (1 & 2 eller VSS & VDD eller GND & + 5v), 3 : e stift för kontrastreglering (VEE-styr hur tjock tecknen bör vara visas) och 3 kontrollstift (RS & RW & E)
I kretsen kan du observera att jag bara har tagit två kontrollstift, detta ger flexibiliteten för bättre förståelse, kontrastbiten och LÄS / SKRIV inte ofta så att de kan kortslutas till marken. Detta sätter LCD i högsta kontrast och läsläge. Vi behöver bara kontrollera ENABLE- och RS-stift för att skicka tecken och data i enlighet därmed.
De anslutningar som görs för LCD ges nedan:
PIN1 eller VSS till jord
PIN2 eller VDD eller VCC till + 5v ström
PIN3 eller VEE till marken (ger maximal kontrast bäst för en nybörjare)
PIN4 eller RS (Registrera val) till PD6 i uC
PIN5 eller RW (läs / skriv) till marken (sätter LCD i läsläge underlättar kommunikationen för användaren)
PIN6 eller E (Aktivera) till PD5 för uC
PIN7 eller D0 till PB0 för uC
PIN8 eller D1 till PB1 i uC
PIN9 eller D2 till PB2 i uC
PIN10 eller D3 till PB3 i uC
PIN11 eller D4 till PB4 i uC
PIN12 eller D5 till PB5 i uC
PIN13 eller D6 till PB6 i uC
PIN14 eller D7 till PB7 i uC
I kretsen kan du se att vi har använt 8-bitars kommunikation (D0-D7) men detta är inte obligatoriskt, vi kan använda 4-bitars kommunikation (D4-D7) men med 4-bitars kommunikationsprogram blir lite komplext.
Så genom att observera ovanstående tabell ansluter vi 10 stift LCD till styrenheten där 8 stift är datapinnar och 2 stift för kontroll.
Innan du går vidare är det viktigt att veta att den kapacitiva modulen fungerar för en spänning på 2,5 V. Och även strömmen som dras av pekmodulen är inte hög. Så för att få 2,5V för modulen från 5V ska vi använda spänningsdelarkretsen.
Spänningsdelarkretsen med motstånd visas i figuren nedan.
Nu ger spänningsdelarkretsen låga spänningar för moduler och andra referenser. Som visas i figuren är utspänningen vid mittpunkten ett förhållande mellan motstånd. Så för att få 2.5v från 5V ska vi använda R1 = R2 = 1KΩ, så för en matningsspänning på 5V blir mittpunktsspänningen 2,5V i förhållande till jord. Denna spänning från delarkretsen är ansluten till modulen. En kondensator är ansluten över den för att filtrera övertonerna, som visas i kretsschemat.
Utgångsporten på beröringsmodulen är ansluten till atmega-styrenheten, så när en dyna berörs blir motsvarande stiftutgång hög. Denna logiska förändring känns av styrenheten. Styrenheten visar siffran på LCD-skärmen baserat på stiftet, som går högt.
Som säkerhet kan man dra ner alla modulens utgångsstift till jord genom 10K-motstånd, även om det inte är obligatoriskt.
Arbetet med TOUCH KEAYPAD INTERFACE förklaras bäst steg för steg i C-koden nedan.