¿Y qué es lo que no entiendes, a mí me parece lógico como está armado el circuito?
Yo pensaría que, o bien el nibble bajo o bien el nibble alto, del puerto B quedan configurados como entrada salvo cuando se quiere escribir en el LCD. Al quedar como entrada siempre van a poder determinar la tecla pulsada y no molestaría al LCD ya que para que éste procese la señal tiene que estar activado por su pin Enable.