LCD 1602 + Arduino Uno??

floresta:
Be aware that the Arduino D0 and D1 pins are used by the bootloader to download your programs. You can use them for your LCD but you may have to disconnect those two wires while downloading the program and reconnect them before actually running your program.

In short, never use D0 or D1 for anything (other than deliberately for serial communication, in which case there are certain conditions). The possible requirement to do so will be so rare and improbable you can just "take it as read".

Please go back and use the "modify" function to correct the "quote" to "code" tags for your sections of code - and or that matter, error messages.

You have probably not (and a re-install of the IDE will probably foul this up) correctly installed the "fmalpartida" LCD library - you also need to remove the original that comes with the IDE.

Yes, I suppose the fact that you do not need to connect the data ins D0 to D3 might lead you to imagine that you do not need to connect R/~W when in fact, not connecting it will generate all sorts of random failures.

I have had no problems with the I2C modules - as long as you actually connect all the pins (which is a common cause of troubles here when people do not manage to do so) and you use the "guesser" sketch, they almost always work perfectly.