Op het shield wordt het 16 × 2 LCD tekst scherm gebruikt.
#include <LiquidCrystal.h> #define btnRIGHT 0 #define btnUP 1 #define btnDOWN 2 #define btnLEFT 3 #define btnSELECT 4 #define btnNONE 5 #define btnUNKNOWN 6 int readkeypad(){ int adc_key_in = analogRead(0); int ret = btnUNKNOWN; if (adc_key_in < 50) ret = btnRIGHT; if ((adc_key_in > 120) && (adc_key_in < 150)) ret = btnUP; if ((adc_key_in > 250) && (adc_key_in < 350)) ret = btnDOWN; if ((adc_key_in > 450) && (adc_key_in < 500)) ret = btnLEFT; if ((adc_key_in > 700) && (adc_key_in < 750)) ret = btnSELECT; if ((adc_key_in > 900) && (adc_key_in < 1150)) ret = btnNONE; return ret; } // Just for ease of displaying const char *button[7] ={"Right ", "Up ", "Down ", "Left ", "Select ", " ", "??????"}; LiquidCrystal lcd(8, 9, 4, 5, 6, 7); void setup() { lcd.begin(16, 2); } void loop() { lcd.setCursor(0, 0); lcd.print("Button Pressed:"); lcd.setCursor(0, 1); lcd.print(button[readkeypad()]); }