Arduino IDE has its standard “LiquidCrystall” library, but MCP23008 1602 LCD needed a customed library. Simply installation may lead to unexpected result
Arduino ide 1.5 , Arduino mega 2560, scl(clk 21) sda(20 DAT) connection is fine,
but example “HelloWorld_i2c”, compiled sucessfully, but it does not give correct character display, instead, “//??-> **”, unmeaningful characters are shown on LCD.
Reason:
test on Arduino 1.0.3, this example links to “LiquidCrystal.h” of standard library, Leading to compiling error. Corrected included header should be the “LiquidCrystal.h” in the customed liquidcrystall lib.
simple and dirty solution:
After install axxxxliquidcrystall , delete the standard liquidcrystall lib.
Then the example will link to correct header.
tested for IDE 1.0.3 and 1.5
CC-BY-NC 4.0 licensed free for non-commercial usage
Author: Qingfeng XIA
copyright (C) 2011-2020
http://www.iesensor.com
please keep the original link in your reference.
http://www.iesensor.com/blog/2013/03/04/solution-to-spi-and-i2c-lcd-unmeaningful-character-display/