Lesson 03 : ทำป้ายโฆษณา จาก LCD
ในบทเรียนนี้จะสอนให้น้อง ๆ เรียนรูปการใช้งานโปรแกรม Arduino แบบง่าย ๆ โดยเราจะจำลองการทำป้ายโฆษณาขายของกัน
ระดับความยาก :
สิ่งที่ต้องทราบก่อนเริ่มเรียน
- การใช้งานโปรแกรม Arduino IDE
- ผ่านบนเรียน Lesson 01
สิ่งที่จะได้จากบทเรียนนี้
- แสดงตัวหนังสือผ่านจอ LCD ได้
- ทักษะการใช้งานโปรแกรม Arduino IDE เบื้องต้น
- รู้จักการประกาศตัวแปรประเภทตัวหนังสือ
- เรียนรู้การ Import External Library มาใช้งานในโปรแกรมของเรา
อุปกรณ์
ลำดับ | ชิ้นส่วน | จำนวน |
---|---|---|
1 | Board Arduino UNO | 1 ชิ้น |
2 | Bread Board | 1 ชิ้น |
3 | สาย Jump ผู้ – เมีย | 4 เส้น |
4 | จอ LED | 1 จอ |
5 | ตัวต้านทาน 1kโอม | 1 ตัว |
6 | Micro Switch | 1 ตัว |
7 | สาย Jump แบบผู้ – ผู้ | 5 เส้น |
ให้ต่ออุปกรณ์ดังรูปต่อไปนี้
Coding กันเลย
เปิดโปรแกรม Arduino และ New File ขึ้นมาดังภาพที่ 1
ภาพที่ 1 แสดงการสร้างไฟล์ใหม่
พิมพ์ code ตามภาพที่ 2 (download code here) จากนั้นกดปุ่มบันทึกและตั้งชื่อตามที่ต้องการ
* @desc Class นี้ใช้สำหรับเรียนรู้การทำงานเบื้องต้นของ Arduino และ LED
* @author Prayoon V.,
* Email : themakerthailand@hotmail.com
* Facebook : @MrMakerThailand
*///เรียนใช้ Library สำเร็จรูป
#include
#include
//ประกาศค่าตัวแปร LCD โดย
//ค่า 0x3f หมายถึง LCD Address
//16 หมายถึง จำนวนการแสดงผลในหนึ่งบรรทัด 16 ช่องอักษร
//2 หมายถึง จำนวนบรรทัดที่จะแสดงผล
LiquidCrystal_I2C lcd(0x3F,16,2);
//กำหนดหมายเลข PIN รับค่าจาก Switch
#define SWITCH_PIN 2
#define DELAY 1000
void setup() {
//เรียก function init() ก่อนเพื่อเริ่มใช้ LCD
lcd.init();
//กำหนดให้ LCD แสดงแสงพื้นหลัง
lcd.backlight();
//lcd.noBacklight(); //หากไม่ต้องการแสดงแสงพื้นหลังให้ลองใช้คำสั่งนี้
//กำหนดให้ Arduino Board รับทราบว่าหมายเลข PIN นี้เป็น PIN แบบ INPUT เพื่อรอรับค่าจาก Switch
pinMode(SWITCH_PIN,INPUT);
Serial.begin(9600);
}
void loop() {
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“Wait for press.”);
int buttonState = digitalRead(SWITCH_PIN);
//ถ้า Switch ปุ่มใดโดนกดจะมีค่าเป็น HIGH
if(buttonState == HIGH){
Serial.println(“button pressed.”);
lcd.clear();
lcd.setCursor(0,0);
lcd.print(“The Maker”);
lcd.setCursor(5,1);
lcd.print(“Thailand”);
}else{
Serial.println(“button not pressed.”);
}
delay(DELAY);
}
ภาพที่ 2 แสดง Sourcecode
ภาพที่ 3 แสดงการบันทึก
สั่ง Compile code โดยใช้คลิกที่ปุ่ม Verify ตามภาพที่ 4
ภาพที่ 4 แสดงการ Verify และ Compile Sourcecode
สั่ง Deploy code ไปที่ Board Arduino ตามภาพที่ 5
ภาพที่ 5 แสดงการ Upload Program ไปที่ Board Arduino
รอดูผลลัพธ์น้อง ๆ จะเห็นว่าจอ LCD จะแสดงผลดังภาพที่ 6 และเมื่อกดปุ่มจอ LCD ก็จะสลับมาแสดงข้อความดังภาพที่ 7
ภาพที่ 6 จอ LCD แสดงข้อความแบบที่ 1
ภาพที่ 7 เมื่อกดปุ่มจอ LCD แสดงข้อความแบบที่ 2
ภาพที่ 8 ผลลัพธ์การทำงาน
!!!สำเร็จแล้ว!!!
ฝากการบ้าน
น้อง ๆ ลองทำให้ตัวอักษร วิ่ง จากซ้ายไปขวาดูนะครับ ถ้าทำไม่ได้ สอบถามมาได้เลยนะครับ โดยคลิกที่นี่ Line
เมื่อน้อง ๆ ทำสำเร็จแล้วอย่าลืมแชร์ให้เพื่อนๆ ดูได้ที่ Facebook MrMakerThailand
และหากน้องๆ ทำไม่ได้ ให้ติดต่อมาได้ตลอดเวลาที่ Inbox นะครับ