เฮ้! ในฐานะซัพพลายเออร์จอแสดงผลตัวอักษร LCD ฉันมักถูกถามเกี่ยวกับวิธีแสดงข้อความแบบเลื่อนบนหน้าจอเล็กๆ ที่สวยงามเหล่านี้ มันเป็นฟีเจอร์ที่มีประโยชน์สุดๆ ไม่ว่าคุณจะแสดงสัญลักษณ์ข่าว ข้อความยาวๆ หรือเพียงแค่ต้องการเพิ่มความเก๋ไก๋ให้กับโปรเจ็กต์ของคุณ เรามาเจาะลึกและสำรวจวิธีการทำให้ข้อความของคุณเลื่อนบนจอ LCD กันดีกว่า
ทำความเข้าใจเกี่ยวกับการแสดงตัวอักษรบนจอ LCD
ก่อนอื่น เรามาดูกันก่อนว่าการแสดงตัวอักษรบนจอ LCD คืออะไร เป็นจอแสดงผลแบบธรรมดาที่สามารถแสดงอักขระตัวอักษรและตัวเลขได้ มีหลายขนาด เช่น0802 จอแสดงผลแอลซีดีซึ่งมี 8 ตัวอักษรต่อบรรทัดและ 2 บรรทัด ที่จอ LCD 40x2โดยมีความยาว 40 ตัวอักษรต่อบรรทัด และ 2 บรรทัด และจอแสดงผลแอลซีดีขนาด 16x4โดยมีอักขระ 16 ตัวต่อบรรทัดและ 4 บรรทัด จอภาพแต่ละจอมีจำนวนเซลล์อักขระที่กำหนดไว้ และคุณต้องทำงานภายในขีดจำกัดของเซลล์เหล่านั้นเพื่อแสดงข้อความของคุณ
พื้นฐานของการเลื่อนข้อความ
แนวคิดของการเลื่อนข้อความบนจอ LCD ค่อนข้างตรงไปตรงมา โดยพื้นฐานแล้ว คุณกำลังย้ายข้อความจากด้านหนึ่งของจอแสดงผลไปยังอีกด้านหนึ่ง ทีละตัวอักษร สิ่งนี้ทำให้เกิดภาพลวงตาของข้อความที่ต่อเนื่องกัน การเลื่อนมีสองประเภทหลัก: แนวนอนและแนวตั้ง การเลื่อนในแนวนอนเป็นเรื่องปกติมากขึ้น โดยที่ข้อความจะเลื่อนจากขวาไปซ้ายหรือกลับกัน การเลื่อนแนวตั้งจะย้ายข้อความขึ้นหรือลงบนหน้าจอ
การตั้งค่าฮาร์ดแวร์
ก่อนที่คุณจะเริ่มเลื่อนข้อความได้ คุณต้องตั้งค่าการแสดงตัวอักษรบนจอ LCD อย่างถูกต้อง โดยทั่วไปคุณจะเชื่อมต่อจอแสดงผลกับไมโครคอนโทรลเลอร์ เช่น Arduino หรือ Raspberry Pi คุณจะต้องเชื่อมต่อพินไฟฟ้า (VSS, VDD, VO), พินควบคุม (RS, RW, E) และพินข้อมูล (ปกติจะเป็น 4 หรือ 8 พิน) ตรวจสอบให้แน่ใจว่าได้ปฏิบัติตามเอกสารข้อมูลของจอแสดงผล LCD เฉพาะของคุณสำหรับการเชื่อมต่อพินที่แน่นอน
การใช้งานซอฟต์แวร์
เมื่อตั้งค่าฮาร์ดแวร์ของคุณแล้ว ก็ถึงเวลาเขียนโค้ดเพื่อให้ข้อความเลื่อนได้ ต่อไปนี้เป็นภาพรวมระดับสูงเกี่ยวกับวิธีการดำเนินการใน Python โดยใช้ Raspberry Pi และRPLCDห้องสมุดซึ่งทำให้การทำงานกับจอ LCD เป็นเรื่องง่าย
จากการนำเข้า RPLCD.i2c เวลานำเข้า CharLCD # เตรียมใช้งาน LCD lcd = CharLCD(i2c_expander='PCF8574', address=0x27, port=1, cols=16, rows=2, dotsize=8) message = "นี่เป็นข้อความยาวที่จะเลื่อนบนจอ LCD" # ฟังก์ชั่นเลื่อนข้อความ def scroll_text(lcd, message): message_length = len(message) for i in range(0, message_length): lcd.clear() lcd.write_string(message[i:(i + 16)]) time.sleep(0.2) scroll_text(lcd, message)
ในโค้ดนี้ ขั้นแรกเราจะเริ่มต้นจอแสดงผล LCD โดยใช้RPLCDห้องสมุด. จากนั้นเรากำหนดข้อความยาว ที่scroll_textฟังก์ชั่นวนซ้ำข้อความ ล้างหน้าจอ LCD ในแต่ละครั้ง และเขียนส่วนของข้อความขนาด 16 ตัวอักษร ที่เวลา.นอน(0.2)บรรทัดจะเพิ่มการหน่วงเวลาเล็กน้อยระหว่างการอัปเดตแต่ละครั้ง ทำให้เกิดเอฟเฟกต์การเลื่อน
วิธีการเลื่อนที่แตกต่างกัน
มีหลายวิธีในการใช้งานการเลื่อน ขึ้นอยู่กับความต้องการของคุณ
วิธีการบัฟเฟอร์แบบคงที่
ในแนวทางนี้ คุณสร้างบัฟเฟอร์ที่มีขนาดใหญ่กว่าพื้นที่แสดงผล คุณโหลดข้อความทั้งหมดของคุณลงในบัฟเฟอร์นี้ จากนั้นย้าย "หน้าต่าง" ข้ามบัฟเฟอร์ โดยแสดงส่วนต่างๆ ของข้อความบนจอแสดงผลในแต่ละขั้นตอน วิธีนี้เหมาะสำหรับข้อความที่ยาวขึ้น เนื่องจากคุณสามารถควบคุมสิ่งที่กำลังแสดงและวิธีการเคลื่อนย้ายได้อย่างแน่นอน
ตัวละคร - โดย - วิธีการตัวละคร
นี่เป็นวิธีที่ง่ายที่สุด โดยที่คุณเพียงแค่เพิ่มอักขระลงในจอแสดงผลทีละตัว และเมื่อจอแสดงผลเต็ม คุณก็เริ่มลบอักขระออกจากด้านซ้าย (หรือขวา) ใช้งานง่ายแต่อาจไม่ได้ผลดีกับข้อความที่ยาวมาก


ละเอียด - การปรับแต่งเอฟเฟกต์การเลื่อน
คุณสามารถทำให้ข้อความเลื่อนของคุณดูดีขึ้นได้ด้วยการปรับพารามิเตอร์บางอย่าง
ความเร็ว
ความเร็วของการเลื่อนถูกกำหนดโดยความล่าช้าระหว่างการอัปเดตแต่ละครั้ง หากคุณทำให้การหน่วงเวลาสั้นลง ข้อความจะเลื่อนเร็วขึ้น อย่างไรก็ตาม หากเร็วเกินไป ข้อความอาจอ่านยาก คุณสามารถทดลองใช้ค่าดีเลย์ต่างๆ เพื่อค้นหาจุดที่เหมาะสมได้
ทิศทาง
คุณสามารถเปลี่ยนทิศทางของการเลื่อนได้ แทนที่จะเลื่อนจากซ้ายไปขวา คุณสามารถเลื่อนจากขวาไปซ้ายหรือแนวตั้งก็ได้ หากต้องการเปลี่ยนทิศทาง คุณเพียงแค่ต้องปรับวิธีการอัปเดตจอแสดงผล เช่น หากคุณต้องการเลื่อนจากขวาไปซ้าย ให้เริ่มที่ส่วนท้ายของข้อความและเลื่อนไปข้างหลัง
กำลังหยุดชั่วคราว
คุณสามารถเพิ่มการหยุดชั่วคราวในบางจุดในการเลื่อนได้ สิ่งนี้มีประโยชน์ถ้าคุณต้องการเน้นส่วนใดส่วนหนึ่งของข้อความ คุณสามารถทำได้โดยเพิ่มการหน่วงเวลาให้นานขึ้นตามช่วงเวลาที่กำหนดในโค้ดของคุณ
การแก้ไขปัญหา
บางครั้ง คุณอาจประสบปัญหากับข้อความเลื่อนของคุณ ต่อไปนี้เป็นปัญหาทั่วไปบางประการและวิธีแก้ไข
ข้อความเลื่อนไม่ราบรื่น
หากข้อความเลื่อนได้ไม่ราบรื่น อาจเนื่องมาจากสาเหตุบางประการ ขั้นแรก ตรวจสอบเวลาล่าช้าของคุณ หากสั้นหรือยาวเกินไป อาจทำให้การเลื่อนดูขาดๆ หายๆ คุณอาจต้องตรวจสอบการเชื่อมต่อฮาร์ดแวร์ของคุณด้วย การเชื่อมต่อที่หลวมอาจทำให้เกิดปัญหาการแสดงผลเป็นระยะๆ
การตัดข้อความไม่ถูกต้อง
หากข้อความถูกตัดออกอย่างไม่ถูกต้อง ตรวจสอบให้แน่ใจว่าคุณกำลังคำนวณหน้าต่างแสดงผลอย่างถูกต้อง คุณต้องแน่ใจว่าคุณไม่ได้พยายามแสดงอักขระเกินกว่าที่จอแสดงผลจะสามารถรองรับได้ในคราวเดียว
บทสรุป
การแสดงข้อความเลื่อนบนจอแสดงผลตัวอักษร LCD เป็นคุณสมบัติที่สนุกสนานและมีประโยชน์ สามารถเพิ่มฟังก์ชันการทำงานและความดึงดูดสายตาให้กับโครงการของคุณได้มากมาย ไม่ว่าคุณจะใช้สำหรับโครงการงานอดิเรกง่ายๆ หรือการใช้งานเชิงพาณิชย์ที่ซับซ้อนมากขึ้น เทคนิคที่เราได้กล่าวถึงในที่นี้น่าจะช่วยให้คุณเริ่มต้นได้
หากคุณสนใจซื้อจอแสดงผล LCD สำหรับโครงการของคุณ เราพร้อมให้ความช่วยเหลือ เรานำเสนอจอแสดงผลคุณภาพสูงหลากหลายประเภท รวมถึง0802 จอแสดงผลแอลซีดี,จอ LCD 40x2, และจอแสดงผลแอลซีดีขนาด 16x4. ติดต่อเราเพื่อหารือเกี่ยวกับความต้องการเฉพาะของคุณ และเริ่มโครงการถัดไปของคุณด้วยจอแสดงผลที่สมบูรณ์แบบ
อ้างอิง
- เอกสารอย่างเป็นทางการของ RPLCD
- เอกสารประกอบไลบรารี Arduino LCD
- เอกสารข้อมูลของการแสดงตัวอักษรบนจอ LCD ต่างๆ
