Esto ya esta hecho , creo recordar en el foro del compilador CSS, auqnue yo ya hice uno para mi aplicacion.
Lo dieal es utilizar cuatro botones, aunque se puede hacer igual que los moviles.
En C es relativamente sencillo.
Cada menu tiene un numero
Creas un array/matriz donde guardas cada menu, por ejemplo
char menus[1][20]
menu[0]="brillo"
menu[1]="Contraste"
----...
para el control luego lo haces con switch
switch

:
case 0: brillo++;
printf("brillo:%u",brillo(;
......
Claro que se puede hacer con un pic16f84, utilizando la configuracion de 4 hilos de la lcd, en total se utilizan 7 pines, pero ademas jugando un poco con la CS de la lcd puedes escanear los pulsadores, traducido es posible controlar pulsadores y lcd con un unico puerto.
Si miras un poco por internet encontraras lo que te digo.
Evidentemente no te recomiendo el pic16f84, por el mismo precio tienes un 876 o similar mucho mas potente y puedes poner un bootloader.