Det går väl i princip att bygga precis vilken storlek man vill.
Men visst, det är ju nu ganska uppenbart att det var en skrivfel...
Fel position på 4 raders lcd
Jag gjorde en liten research på området.
På dom flesta 16x4 LCD:er som jag tittade på så börjar rad 3 på adress 14H (20D). d.v.s som om den haft 20 tecken per rad istället för 16. T.ex
denna från Elfa. Men jag hittade också denna som har start av rad 3 på adress 10H (16D).
Kan man på något sätt ange för funktionsbiblioteket till kompilatorn vad för display man har ansluten?
Troligen inte. Oavsett, så är den nog inte gjord så att den klarar av båda varianterna av 16x4. Det vanligaste verkar vara första varianten som då också är kompatibel med 20x4. Kör man då en 16x4 enligt andra exemplet så får man precis det här problemet. Funktionen skriver första tecknet på tredje raden till adress 14H, som på denna display är femte tecknet på rad 3.

På dom flesta 16x4 LCD:er som jag tittade på så börjar rad 3 på adress 14H (20D). d.v.s som om den haft 20 tecken per rad istället för 16. T.ex
denna från Elfa. Men jag hittade också denna som har start av rad 3 på adress 10H (16D).
Kan man på något sätt ange för funktionsbiblioteket till kompilatorn vad för display man har ansluten?
Troligen inte. Oavsett, så är den nog inte gjord så att den klarar av båda varianterna av 16x4. Det vanligaste verkar vara första varianten som då också är kompatibel med 20x4. Kör man då en 16x4 enligt andra exemplet så får man precis det här problemet. Funktionen skriver första tecknet på tredje raden till adress 14H, som på denna display är femte tecknet på rad 3.