Un controler de tastatură este un tip de circuit integrat în interiorul majorității computerelor, care este proiectat să accepte intrare de la o tastatură și să o transmită la unitatea centrală de procesare (CPU), unde apoi poate fi transmis sistemului de operare pentru interpretare. În general, atunci când un controler cu tastatură primește un semnal de la o tastatură sau un dispozitiv de intrare similar, acesta generează un semnal cunoscut sub numele de întrerupere care face ca CPU să oprească pentru scurt timp execuția, astfel încât să poată gestiona semnalul pe care îl trimite controlerul tastaturii. În funcție de diferitele particularități hardware, un controler de tastatură primește diferite secvențe de biți de la tastatură și apoi trece aceste informații printr-un tabel de căutare, unde informațiile sunt traduse în octeți cunoscuți sub numele de coduri de scanare care pot fi interpretate mai ușor de CPU. Controlerul se ocupă, de asemenea, de interpretarea unor aspecte fizice legate de o tastatură, cum ar fi sincronizarea apăsării tastelor atunci când o tastă este apăsată mult timp și activarea sau dezactivarea diodelor emițătoare de lumină (LED-uri) care indică blocarea numerelor sau blocarea majusculelor pe tastatura în sine.
Locația controlerului tastaturii poate varia, dar circuitul integrat se află în mod tradițional pe placa de bază a computerului. În cazurile în care tastatura nu este parte integrantă a computerului, controlerul nu se află aproape niciodată în hardware-ul tastaturii. Opusul este valabil pentru tastaturile care fac parte din structura computerului, cum ar fi într-un laptop. Există, de asemenea, situații în care nu există un controler separat de tastatură, dar funcționalitatea este emulată prin alte părți ale procesorului.
Hardware-ul care se află în interiorul unei tastaturi tradiționale de computer trimite controlerului informații despre tastele care au fost apăsate, de obicei prin măsurarea unei modificări a curentului sub tastele individuale. Acest semnal este standardizat de un circuit similar cu controlerul tastaturii din computer. Aceasta înseamnă că fiecare tastatură are cunoștințe despre propria topografie și despre locația și aranjarea tastelor și poate trimite același semnal atunci când un utilizator apasă tasta de retur, indiferent unde se află tasta pe tastatură sau ce design fizic are tastatura .
Controlerul din interiorul computerului principal preia acest semnal și îl convertește într-un cod de scanare, care este mai ușor de interpretat de CPU. Tastele modificatoare, cum ar fi shift sau control, sunt transmise împreună cu orice alte taste care sunt apăsate. În acest moment, controlerul tastaturii trimite un semnal către CPU care îl face să oprească acțiunea actuală și să recupereze codurile de scanare. Procesorul transmite apoi codurile de scanare către sistem unde, în multe sisteme de operare, un eveniment de sistem este generat și transmis pentru a fi procesat de programul activ.