Hello,
Is it possible to interface a 20x4 lcd (having 6 pins connected on arduino), a 4x4 keypad (having 8 pins connected on arduino) and a gps module (usong 0,1 pins of arduino) with a normal arduino (Not Mega)? Will it have sufficient pins to support these 3 devices? Can I use any of the analog pins for the keypad instead of digital pins?
You can get serial I2C/SPI character LCD backpacks that reduce the number of pins needed for the 16x2 display. I got one when I got my UNO, but I haven't hooked it up yet, since I need to learn how to solder. Here is one such device.
I see there is also a i2c port expander, but I don't know anything about it:
Can I connect the pins of the 4x4 keypad with some analog pins ,instead of all digital? Will the keypad library support that? If so, how to do it?
Yes, you can use the analog input pins as digital output pins, see the FAQ:
Will it have sufficient pins to support these 3 devices?
Yes. You need 16 I/O pins and the basic Arduino has 19.
Can I use any of the analog pins for the keypad instead of digital pins?
You can use all of them.
Don