I am trying to fit a 16x2 character LCD in a dashboard of a car and drive this LCD using the PIC16F877. The LCD works fine and displays all the menus according to the switches pressed while the engine is not running. When I start the engine the LCD freaks and starts displaying various characters which don't make any sense. I am using a 7805 Regulator to drop the voltage from +12V to +5V and all supplies are taken directly from the battery. Also I made a suppressor from the coil +ve terminal to ground because I thought it would solve the problem of interference but it remained the same. Does anyone have any hint how to solve this??