สารบัญ:

TM1637 7 Segment Display - ทำให้ใช้งานได้จริง!: 5 ขั้นตอน
TM1637 7 Segment Display - ทำให้ใช้งานได้จริง!: 5 ขั้นตอน

วีดีโอ: TM1637 7 Segment Display - ทำให้ใช้งานได้จริง!: 5 ขั้นตอน

วีดีโอ: TM1637 7 Segment Display - ทำให้ใช้งานได้จริง!: 5 ขั้นตอน
วีดีโอ: LAB14 การใช้งาน TM1637 7-Segment 4 digits Module (Arduino 7 Segment) 2024, พฤศจิกายน
Anonim
TM1637 7 Segment Display - ใช้งานได้จริง!
TM1637 7 Segment Display - ใช้งานได้จริง!
TM1637 7 Segment Display - ใช้งานได้จริง!
TM1637 7 Segment Display - ใช้งานได้จริง!

บทนำ ในที่สุดฉันก็หยุดทำงานและตัดสินใจทดลองกับการแสดงผล 7 ส่วน ฉันค่อนข้างจะตั้งโปรแกรมระบบสัมผัส TFT หรือเพียงแค่จอแสดงผล TFT ธรรมดาเพราะมีความยืดหยุ่นในการแสดงข้อมูลจำนวนมากบนหน้าจอต่างๆ การแสดง 7 เซ็กเมนต์นั้น จำกัด มาก แม้จะมีตัวเลขที่ขยาย อย่างไรก็ตาม ด้วยแนวคิดแปลกใหม่ ฉันจึงตัดสินใจสร้างนาฬิกาโลกเพื่อแสดงเวลาทั่วโลก แอปพลิเคชั่นที่สมบูรณ์แบบสำหรับจอแสดงผล 4 หลัก 7 เซ็กเมนต์ราคาประหยัด! เพิ่มเติมเกี่ยวกับโครงการเมื่อมีความก้าวหน้ามากขึ้น แต่นี่คือ "การค้นพบ" และความคิดของฉันเกี่ยวกับจอแสดงผล TM1637 จาก RobotDyn

ขั้นตอนที่ 1: อะไหล่

อะไหล่:หากต้องการทดลองกับจอแสดงผล TM1637 สิ่งเดียวที่คุณต้องการคือ:

- TM1637 จอแสดงผล

- RTC หรือ DHT เพื่ออ่านข้อมูลบางอย่าง - ไม่จำเป็นต้องมีฮาร์ดแวร์ เพียงแค่ทำเคาน์เตอร์ง่ายๆ

- Arduino Uno, Mega หรือ Micro

- สายจัมเปอร์สองสามเส้น

ขั้นตอนที่ 2: ข้อควรพิจารณาเกี่ยวกับซอฟต์แวร์

ข้อควรพิจารณาเกี่ยวกับซอฟต์แวร์:ฉันพบไลบรารีที่แตกต่างกัน 3 แห่งเพื่อใช้กับ TM1637

- TM1637.h - แนะนำโดย RobotDyn แต่เก่ากว่า

- ไลบรารี TM1637display.h - โดย AVISHORPE ดูเหมือนจะเป็นรายการโปรด

- SevenSegmentTM1637.h - โดยบรีม ฟังก์ชันและความเป็นไปได้ส่วนใหญ่

ลองใช้ทั้งหมดและดูว่าคุณคิดอย่างไร จนถึงตอนนี้ ฉันพอใจกับไลบรารี TM1637display มากที่สุด

ขั้นตอนที่ 3: ความคิดเริ่มต้น

ความคิดเริ่มต้น: เมื่อฉันได้จอแสดงผลครั้งแรก ฉันซื้อมันพร้อมกับจอแสดงผล 7 ส่วนทั่วไป (12 ตะกั่ว) และการลงทะเบียนกะบางส่วน การใช้พวกมันทำงานมากกว่าที่ฉันต้องการ และจำกัดให้ฉันใช้ Mega สำหรับนาฬิกาโลกของฉัน จอแสดงผล TM1637 ใช้ I2C ดังนั้นแม้แต่ไมโครก็สามารถรองรับจอแสดงผลเหล่านี้ได้ 4-5 จอ แต่ฉันจะยืนยันเมื่อโปรเจ็กต์ของฉันพัฒนาขึ้น! แต่ใช้เพียง (2) GPIO หมุดแต่ละตัว - นั่นเป็นข้อดีอย่างมาก

หน่วยนี้คุ้มค่ามาก เพียง 1.50 ดอลลาร์สำหรับจอแสดงผลขนาดใหญ่ (50x19 มม.) ที่ RobotDyn.com

ง่ายต่อการติดตั้งและใช้งานสำหรับโครงการ ขนาดกำลังดี หน้าจอสว่างที่ปรับได้ มีรูยึด 4 รู (เวอร์ชัน RobotDyn) การเข้าถึงปลายคู่ การเชื่อมต่อเพียง 4 จุด (5v, Gnd, ข้อมูล, นาฬิกา) รูปแบบสีต่างๆ (5) และการเขียนโปรแกรม "แบบง่าย" (อ่านต่อ…).

ขั้นตอนที่ 4: การเขียนโปรแกรม

การเขียนโปรแกรม
การเขียนโปรแกรม
การเขียนโปรแกรม
การเขียนโปรแกรม
การเขียนโปรแกรม
การเขียนโปรแกรม

การเขียนโปรแกรม จนถึงตอนนี้ ฉันมีความสุขที่สุดกับไลบรารี TM1637display.h และใช้มันเพื่อให้ได้ผลลัพธ์และการค้นพบต่อไปนี้ ปัญหาเหล่านี้อาจไม่ใช่ปัญหาเดียว แต่สิ่งที่ฉันพบและพบวิธีแก้ไขเพื่อแก้ไข

เกี่ยวกับการเขียนโปรแกรมนั้นตอนนี้ เมื่อฉันเชื่อมต่อจอแสดงผลของฉันเป็นครั้งแรกและเรียกใช้ตัวอย่างสำหรับไลบรารีทั้งสาม ฉันไม่เห็นอะไรเลย ไม่แสดงผล ไม่อ่านออก ไม่มีอะไร อันที่จริงดูเหมือนว่าจะทำให้ Arduino หยุดนิ่งและปฏิเสธที่จะส่งออกแม้แต่เอาต์พุตแบบอนุกรม ฉันเป็นแค่ผู้ผลิต แต่แน่นอนว่าฉันไม่สามารถทำให้การแสดงผลเล็ก ๆ น้อย ๆ นี้ยุ่งเหยิงได้อย่างแน่นอน! หลังจากหาข้อมูลมาบ้างแล้ว ก็พบข้อมูลบางส่วนในหลายๆ แห่ง ดังนั้นขอผมลองส่งต่อสิ่งที่พบมาบ้าง

เช่นเดียวกับจอ LCD คุณสามารถส่งออกสตริงของจำนวนเต็มไปยังจอแสดงผลได้ มีวิธี 'ซับซ้อน' มากขึ้นในการวางข้อมูลแต่ไม่จำเป็น จอแสดงผลถูกจำกัดด้วยสตริงและอักขระ และจำกัดชุดที่มีอยู่ ดังนั้นหากคุณต้องการข้อความ สิ่งเหล่านี้อาจไม่ใช่ทางออกที่ดีที่สุด

การใช้ 'การหน่วงเวลา' ทุกประเภทอาจทำให้จอแสดงผลค้าง นี่อาจเป็นลักษณะเฉพาะของจอแสดงผล RobotDyn เนื่องจากคนอื่น ๆ ดูเหมือนจะหลีกเลี่ยงปัญหา แต่นี่ไม่ใช่ปัญหาเดียว เพื่อหลีกเลี่ยงปัญหานี้ ฉันพบ 2 ขั้นตอน ก่อนอื่นฉันตัดตัวเก็บประจุในตัวที่ด้านหลังของอุปกรณ์ - ซึ่งฉันขี้เกียจเกินกว่าจะแยกชิ้นส่วน ประการที่สอง ฉันแสดงความคิดเห็นเกี่ยวกับความล่าช้าทั้งหมด ความสำเร็จ! การแสดงมีชีวิตชีวาขึ้น ตอนนี้ ไม่มีวิธีตั้งเวลา (เช่น ตัวนับ) ให้น้อยกว่าอุดมคติแล้ว แต่ฉันต้องการนาฬิกาและ/หรือมาตรวัดอุณหภูมิ เพื่อที่ฉันจะได้ทำงานนี้

บน RobotDyn แสดงจุดทศนิยมที่ไม่สามารถเข้าถึงได้ ฉันไม่พบวิธีแก้ปัญหาที่แน่นอน และไม่ต้องการมัน แต่โปรดทราบ

เอกสารสำหรับโคลอนนั้นยุ่งยาก แต่ฉันพบวิธีแก้ปัญหาที่ค่อนข้างง่ายโดยใช้คำสั่งหนึ่งบรรทัด ฉันไม่สามารถทำให้มันกะพริบได้อย่างง่ายดาย แต่อีกครั้ง ปัญหาเล็กน้อยสำหรับโครงการของฉัน ใช้ 'display.showNumberDecEx(0, 64);' และมีเครื่องหมายทวิภาค

เพื่อให้จอแสดงผลแสดงการอ่านค่าคงที่ ฉันเพียงแค่ใช้คำสั่ง for() เพื่อทำซ้ำเอาต์พุตในช่วงเวลาที่ฉันต้องการให้แสดง แค่ให้รูทีนย่อยเพิ่มเติมให้ฉันโทร แต่ฉันจะคว้าชัยชนะ

เพื่อให้ได้สีที่ต่างกัน คุณต้องสั่งจอแสดงผลสีที่สัมพันธ์กัน คุณไม่สามารถเปลี่ยนสีของจอแสดงผลได้ หากคุณจะใช้งานในลักษณะนี้ ให้สั่งซื้อชุดงานจาก Amazon พร้อมจอแสดงผลสีต่างๆ 5 สี ด้วย RobotDyn คุณสั่งซื้อสีหรือชุด 1 สี

ขั้นตอนที่ 5: บทสรุป

บทสรุปจนถึงตอนนี้คือสิ่งที่ฉันพบ แต่ถ้าคุณมีข้อเสนอแนะใด ๆ ฉันจะขอบคุณสำหรับข้อเสนอแนะหรือข้อเสนอแนะ ฉันยังคงเรียนรู้เกี่ยวกับการจัดแสดงและยังต้องเรียนรู้และทำความเข้าใจอีกมาก ยินดีต้อนรับบันทึกอื่น ๆ ที่คุณมี ขอบคุณและฉันหวังว่าสิ่งนี้จะช่วยให้ผู้อื่นที่สนใจในการแสดงผล 7 เซ็กเมนต์ สนุก!

แนะนำ: