Page 169 - 최강 아두이노 퍼스트 참고서
P. 169

#include <Wire.h>
                 #include <LiquidCrystal_I2C.h>

                 LiquidCrystal_I2C lcd(0x27,16,2);  // set the LCD address to 0x27 for a 16 chars and
                 2 line display

                 void setup()
                 {
                   lcd.init();                      // initialize the lcd    lcd.backlight();
                 Serial.begin(9600);

                 }

                 void loop()
                 {
                   //  when  characters  arrive  over  the  serial  port...      if
                 (Serial.available()) {
                     // wait a bit for the entire message to arrive     delay(100);
                     // clear the screen     lcd.clear();
                     //  read  all  the  available  characters          while
                 (Serial.available() > 0) {
                       // display each character to the LCD       lcd.write(Serial.read());
                     }
                   }
                 }






               위의 코드 적용 시 깨진 문자처럼 나옵니다. lcd.write() 함수는 BYTE 값 출력이라 의도하지
               않게 깨진 문자로 보입니다. 아래의 예제코드는 시리얼로 받은 BYTE 값을 프린트 가능하게
               변환하는 부분 추가 된 코드입니다. 아래의 예제 코드와 위의 예제 코드를 비교해 보시기 바랍

               니다. 시리얼로 입력된 전체 문자열들을 LCD1602 로 출력해주는 코드입니다.















                                                   169
   164   165   166   167   168   169   170   171   172   173   174