ผมทำโปรเจ็คเล็กๆคือ ใช้ Keypad กดคะแนนแล้วแสดงค่าบน LCD เช่น กดค่า 80-100 แสดงเกรด A
แต่ตอนนี้ผมทดสอบ LCD กับโปรแกรม Arduino.cc อยู่
ผมใช้โค้ด Swift Case พอกดค่าแล้วมันขึ้น Error เฉยเลย ไม่รู้แก้ตรงไหนดี
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup(){
Serial.begin(9600);
lcd.begin();
pinMode(13,OUTPUT);
}
char rx_byte = 0;
void loop(){
if (Serial.available()>0){
rx_byte = Serial.read();
switch (rx_byte){
case'80': lcd.write(1);
digitalWrite(13, HIGH);
lcd.print("A");
lcd.setCursor(0, 1);
break;
case'70':
digitalWrite(13, LOW);
lcd.print("B");
lcd.setCursor(0, 1);
break;
default:
lcd.print("ERRER");
break;
}
}
}
ผิดพลาดตรงไหนบอกด้วยครับ
ขอปรึกษาการเขียนโปรแกรมด้วย Arduino หน่อยครับ
แต่ตอนนี้ผมทดสอบ LCD กับโปรแกรม Arduino.cc อยู่
ผมใช้โค้ด Swift Case พอกดค่าแล้วมันขึ้น Error เฉยเลย ไม่รู้แก้ตรงไหนดี
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup(){
Serial.begin(9600);
lcd.begin();
pinMode(13,OUTPUT);
}
char rx_byte = 0;
void loop(){
if (Serial.available()>0){
rx_byte = Serial.read();
switch (rx_byte){
case'80': lcd.write(1);
digitalWrite(13, HIGH);
lcd.print("A");
lcd.setCursor(0, 1);
break;
case'70':
digitalWrite(13, LOW);
lcd.print("B");
lcd.setCursor(0, 1);
break;
default:
lcd.print("ERRER");
break;
}
}
}
ผิดพลาดตรงไหนบอกด้วยครับ