สารบัญ:
- ขั้นตอนที่ 1: อะไหล่
- ขั้นตอนที่ 2: ข้อควรพิจารณาเกี่ยวกับซอฟต์แวร์
- ขั้นตอนที่ 3: ความคิดเริ่มต้น
- ขั้นตอนที่ 4: การเขียนโปรแกรม
- ขั้นตอนที่ 5: บทสรุป
วีดีโอ: TM1637 7 Segment Display - ทำให้ใช้งานได้จริง!: 5 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
บทนำ ในที่สุดฉันก็หยุดทำงานและตัดสินใจทดลองกับการแสดงผล 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 เซ็กเมนต์ สนุก!
แนะนำ:
4 Digit 7 Segment Display 14 Pins พร้อม Arduino: 3 ขั้นตอน
4 Digit 7 Segment Display 14 Pins พร้อม Arduino: เป็นความคิดที่ดีเสมอที่จะทดสอบว่าอุปกรณ์ทำงานอย่างถูกต้องหรือไม่ว่าส่วนประกอบนั้นมีพินจำนวนมาก ในโครงการนี้ ฉันได้ทดสอบการแสดงผล 4 หลัก 7 ส่วน 14 พินของฉันแล้ว ทั้ง 7 ส่วนจะแสดง 0 ถึง 9 ในเวลาเดียวกัน
7 Segment Display Counter พร้อม Shift Register: 3 ขั้นตอน
7 Segment Display Counter พร้อม Shift Register: นี่เป็นโปรเจ็กต์สำหรับผู้เริ่มต้นที่สมบูรณ์แบบ หากคุณเพิ่งเรียนรู้วิธีใช้ shift register และวิธีทำงานกับโค้ด นอกจากนี้ โปรเจ็กต์นี้เป็นการเริ่มต้นที่ดีหากคุณยังใหม่ต่อการแสดงผล 7 เซ็กเมนต์ ก่อนที่คุณจะเริ่มโครงการนี้ ตรวจสอบให้แน่ใจว่า
7 Segment Display Array: 6 ขั้นตอน (พร้อมรูปภาพ)
7 Segment Display Array: ฉันได้สร้างจอแสดงผล LED ที่ทำจาก 144 จอแสดงผล 7 ส่วนควบคุมโดย Arduino nano เซ็กเมนต์ถูกควบคุมโดย 18 MAX7219 ic ซึ่งสามารถควบคุมไฟ LED แต่ละตัวได้มากถึง 64 ตัวหรือจอแสดงผล 7 ส่วน 8 ตัว อาร์เรย์มีจอแสดงผล 144 จอที่สร้างขึ้นจาก
DIY Big 7-Segment Internet Display: 5 ขั้นตอน
DIY Big 7-Segment Internet Display: ในโครงการนี้ ฉันจะแสดงให้คุณเห็นว่าฉันรวมจอแสดงผล 7 ส่วนขนาด 4 นิ้ว 4 นิ้วเข้ากับโมดูล ESP8266 Wifi เพื่อสร้างจอแสดงผล 8 หลักที่สามารถนำเสนอข้อมูลที่สำคัญที่สุดของคุณจากอินเทอร์เน็ตได้อย่างไร มาเริ่มกันเลย
Easy Soil Moisture Sensor Arduino 7 Segment Display: 4 ขั้นตอน (พร้อมรูปภาพ)
เซ็นเซอร์ความชื้นในดินอย่างง่าย Arduino 7 Segment Display: สวัสดี! การกักกันอาจเป็นเรื่องยาก ฉันโชคดีที่มีสนามหญ้าเล็กๆ ในบ้าน และสิ่งนี้ทำให้ฉันคิดว่าฉันสามารถสร้างเครื่องมือเล็กๆ น้อยๆ เพื่อช่วยให้ฉันดูแลพวกมันได้ดีในขณะที่ฉันติดอยู่ที่บ้าน โปรเจ็กต์นี้เรียบง่ายและน่าใช้