alguém me ajuda nesse erro

Eu escrevi o codigo abaixo e deu um erro que nao entendo o motivo de ter acontecido, alguem poderia me ajudar nisso?

ERRO:

sketch_jun21a.ino: In function 'void createGlyphDemo()':
sketch_jun21a.ino:25:33: error: call of overloaded 'write(int)' is ambiguous
sketch_jun21a.ino:25:33: note: candidates are:
In file included from sketch_jun21a.ino:1:0:
C:\Program Files (x86)\Arduino\libraries\LiquidCrystal\src/LiquidCrystal.h:83:18: note: virtual size_t LiquidCrystal::write(uint8_t)
virtual size_t write(uint8_t);
^
In file included from C:\Program Files (x86)\Arduino\libraries\LiquidCrystal\src/LiquidCrystal.h:5:0,
from sketch_jun21a.ino:1:
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino/Print.h:49:12: note: size_t Print::write(const char*)
size_t write(const char *str) {
^
Erro compilando.

CODIGO:

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() {

lcd.begin(16, 2);

}

void loop() {

createGlyphDemo();
}

void createGlyphDemo() { lcd.clear();
byte happy[8] = { // Cria um array de bytes com uma cara feliz
B00000,B00000,B10001,B00000,B10001,B01110,B00000,B00000};
byte sad[8] = { // Cria um array de bytes com uma cara triste
B00000, B00000, B10001, B00000, B01110, B10001, B00000, B00000};
lcd.createChar(0, happy);
lcd.createChar(1, sad);
for(int x=0; x<5; x++) {
lcd.setCursor(8,0); lcd.write(0);
delay(1000); lcd.setCursor(8,0);lcd.write(1);
delay(1000); }
}

Os problemas são as linhas:

 lcd.write(0);

e

lcd.write(1);

neste link eles fazem:

  lcd.write(byte(0));

outra hipótese é fazer como neste outro link:

  lcd.write((uint8_t)0);