I can tell you briefly about the hardware part.
From keypad to the micro-controller, use a RC network to supress the debounce.( In software also you must use debounce).
THen from the micro-controller use a MAX232. From MAX232 connect to the DB9 connector of serial port. Connect only Tx, Rx, and ground.
In the software part......
You set the baud rate for serial communication.
Enable serial interrupt.
WHat i would to is connect the 16 pins to the GPIO's of the controller. THen On receipt of a valid key-press i would write a switch statement, which would interpret the character intended for display.
Make --> SBUF = "the char yuo want to display"; when you get the data from the keyboard.
In the transmit interrupt clear the TI flag.
This is a very wague idea. You need to refine this.