Aanmaken en gebruiken van drukknoppen
Voor vele toepassingen is het handig drukknoppen aan te sluiten op de microcontroller. Het Dwengo-bord voorziet reeds 5 drukknoppen aangesloten op poort B van de microcontroller. De Dwengo-bibliotheek voorziet enkele handige macro's om deze knoppen uit te lezen. Op deze pagina leggen we uit hoe je extra knoppen kan aanmaken en hoe je ze moet uitlezen.
Wanneer knoppen toegevoegd worden door middel van de uitbreidingsconnector dient men steeds te schakelen tussen 5 V en de grond. Hiervoor maakt men gebruik van een pull-up-weerstand die de ingang van de microcontroller omhoog trekt. Een schema hiervan is weergegeven op de volgende figuur (rechts):
.
Uitzondering hierop is poort B waar er reeds interne pull-up-weerstanden aanwezig zijn om de pin omhoog te trekken. De interne pull-up-weerstanden van poort B kan men activeren door het NOT_RBPU-register op 0 te zetten (of deactiveren door het register op 1 te zetten).
INTCON2bits.NOT_RBPU = 0; // enable port B pull-up (buttons)
Met behulp van de TRI-state registers kan men de juiste pinnen dan configureren als ingang, door het overeenkomstige TRI-state bit op 1 te zetten, of als uitgang, door de overeenkomstige TRI-state bit op 0 te zetten:
TRISB = 0xFF; // all port B as inputs (buttons) TRISC = 0x01; // configure pin 0 of port C as input, all other pins as output
Uitlezen van de digitale ingang gebeurt steeds met de PORT-bits:
unsigned char dummy = PORTB; // write port B into variable dummy PORTCbits.RC0; // read pin 0 of port C
- Type:
- login of registreer om te reageren
-


Uw winkelwagen