สารบัญ:

การใช้จอแสดงผล 4 หลักและ 7 ส่วนกับ Arduino: 7 ขั้นตอน
การใช้จอแสดงผล 4 หลักและ 7 ส่วนกับ Arduino: 7 ขั้นตอน

วีดีโอ: การใช้จอแสดงผล 4 หลักและ 7 ส่วนกับ Arduino: 7 ขั้นตอน

วีดีโอ: การใช้จอแสดงผล 4 หลักและ 7 ส่วนกับ Arduino: 7 ขั้นตอน
วีดีโอ: การใช้ 7-Segment แบบ 4 หลัก 2024, พฤศจิกายน
Anonim
การใช้จอแสดงผล 4 หลักและ 7 ส่วนกับ Arduino
การใช้จอแสดงผล 4 หลักและ 7 ส่วนกับ Arduino

ในบทช่วยสอนนี้ ฉันจะแสดงให้คุณเห็นถึงวิธีใช้จอแสดงผล 7 ส่วนที่มีตัวเลข 4 หลักโดยใช้ Arduino สิ่งพื้นฐานบางอย่างที่ฉันอยากจะชี้ให้เห็นคือสิ่งนี้ใช้พินดิจิทัลเกือบทั้งหมดบน arduino uno, leonardo, บอร์ดที่มี 13 พินดิจิทัล จอแสดงผลส่วนใหญ่มีหมุดฝ่าวงล้อม 12 อันที่เชื่อมต่อโดยตรงกับ Arduino หรือผ่านตัวต้านทาน นอกจากนี้ ฉันต้องการชี้ให้เห็นว่าจอแสดงผลเหล่านี้ไม่จำเป็นต้องต่อกราวด์ 5V หรือ 3.3V เอาล่ะมาเริ่มกันเลย…

ขั้นตอนที่ 1: วัสดุ

วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ
วัสดุ

การใช้จอแสดงผลประเภทนี้แทบไม่ต้องใช้วัสดุใดๆ

- ตัวต้านทาน 4 x 330Ω

- 12 x สายจัมเปอร์ชายกับชาย

- 1 x Arduino

- 1 x เขียงหั่นขนมขนาดใดก็ได้ (ไม่จำเป็นต้องใช้รางไฟ)

ไม่จำเป็นต้องใช้เครื่องมือในการสร้างต้นแบบของการออกแบบนี้ อย่างไรก็ตาม จำเป็นต้องใช้หัวแร้งและบอร์ด pcb เพื่อการใช้งานที่ถาวรมากขึ้น

ขั้นตอนที่ 2: เค้าโครงเขียงหั่นขนม

เค้าโครงเขียงหั่นขนม
เค้าโครงเขียงหั่นขนม

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

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

***โน๊ตสำคัญ***

เมื่อตั้งค่าวงจรให้เปลี่ยนสายสีเหลืองและสีม่วง (ฉันทำให้แผนภาพวงจรของฉันยุ่งเหยิง)

ขั้นตอนที่ 3: การติดตั้งไลบรารี

ไลบรารีที่เชื่อมโยงด้านล่างมาจากเว็บไซต์ Arduino เพื่อควบคุมการแสดงผลได้อย่างง่ายดาย ลิงค์ไปที่ github หากคุณไม่เคยใช้ GitHub ให้ฟังอย่างระมัดระวัง หากคุณได้อ่านย่อหน้าถัดไป เมื่อคุณเข้าสู่เว็บไซต์ ให้ดูที่ด้านขวาของหน้าต่างและมองลงไปจนกว่าคุณจะเห็น "ดาวน์โหลด Zip" คลิกปุ่มนั้นและดูปรากฏในการดาวน์โหลดของคุณ

ตอนนี้ คุณต้องโหลดไลบรารีที่ติดตั้งไว้ก่อนหน้านี้ลงในโฟลเดอร์ไลบรารีของคุณ ถ้าตอนนี้คุณทำได้อย่างไร ให้ข้ามไปยังขั้นตอนถัดไป ไม่เช่นนั้นให้อ่านต่อไป ขั้นแรกให้ไปที่ finder และค้นหาโฟลเดอร์ "documents" แล้วเปิดขึ้น จากนั้นค้นหาโฟลเดอร์ "arduino" แล้วเปิดขึ้น จากนั้นค้นหาโฟลเดอร์ไลบรารีและเปิดขึ้น สุดท้ายลากและวางไลบรารีที่ติดตั้งลงในโฟลเดอร์ไลบรารีที่เพิ่งเปิด

สำคัญ. หากแอปพลิเคชัน Arduino ของคุณเปิดและทำงานในขณะที่คุณวางไลบรารีลงในโฟลเดอร์ไลบรารี Arduino จะไม่รู้จักไลบรารี คุณเพียงแค่ต้องออกจากแอปพลิเคชันแล้วเปิดใหม่อีกครั้ง

github.com/DeanIsMe/SevSeg

ขั้นตอนที่ 4: รหัส

รหัส
รหัส

รหัสสำหรับแสดงบางอย่างอยู่ด้านล่าง

#include "SevSeg.h"

เซฟเซก เซฟเซก; // เริ่มต้นการตั้งค่าวัตถุตัวควบคุมเจ็ดส่วนเป็นโมฆะ () { ไบต์ numDigits = 4; ไบต์ digitPins = {2, 3, 4, 5}; ไบต์ segmentPins = {6, 7, 8, 9, 10, 11, 12, 13}; ตัวต้านทานบูลOnSegments = 0; // ตัวแปรด้านบนแสดงว่ามีการวางตัวต้านทาน 4 ตัวบนพินหลัก // ตั้งค่าตัวแปรเป็น 1 หากคุณต้องการใช้ตัวต้านทาน 8 ตัวบนพินเซกเมนต์ sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, ตัวต้านทาน OnSegments); sevseg.setBrightness(90); } วงเป็นโมฆะ () { sevseg.setNumber (3141, 3); sevseg.refreshDisplay(); //ต้องวิ่งซ้ำๆ

ขั้นตอนที่ 5: ผลลัพธ์

หากคุณเชื่อมต่อจอแสดงผลอย่างถูกต้อง อัปโหลดโค้ดอย่างถูกต้อง และคัดลอกโค้ดอย่างถูกต้อง จอแสดงผลของคุณควรแสดง pi (เฉพาะ 3.141)

ถ้าไม่เช่นนั้น ให้อ่านขั้นตอนที่หกสำหรับสิ่งที่เกิดขึ้น

หากคุณทำถูกต้อง ฉันขอแนะนำให้อ่านเพิ่มเติมในขั้นตอนที่เจ็ด

ขั้นตอนที่ 6: การแก้ไขปัญหา

ที่นี่ฉันได้ระบุสองสิ่งที่เป็นไปได้ที่อาจเกิดขึ้นกับจอแสดงผลของคุณที่อาจทำให้สับสนได้ น่าเศร้าเพียงหนึ่งในสองที่สามารถแก้ไขได้

- จอแสดงผลของคุณกำลังแสดง 8888

ไม่ต้องกังวลว่านี่คือปัญหาที่แก้ไขได้ เพียงทำตามขั้นตอนเหล่านี้

1. ค้นหาในรหัส " sevseg.begin(COMMON_CATHODE, numDigits, digitPins, segmentPins);"

2. เปลี่ยน "COMMON CATHODE" เป็น "COMMON ANODE"

3. อัปโหลดรหัสอีกครั้ง

- จอแสดงผลของคุณกำลังแสดง 3. 41 หรือ.141 หรือ 3.1 1 หรือ 3.14 โดยไม่มี 1. อื่น

น่าเศร้าที่ปัญหานี้สามารถแก้ไขได้หรือไม่:.(… (นั่นคือใบหน้าที่ร้องไห้ของฉัน)

1. ตรวจสอบการเชื่อมต่อของคุณและตรวจสอบให้แน่ใจว่าทุกอย่างเสียบปลั๊กและไม่ห้อยออก

2. ตรวจสอบแผนผังอีกครั้งเพราะคุณมักจะเสียบผิด

3. ค้นหาบรรทัดใน void loop ที่ระบุว่าจะแสดง (3.141, 3) และเปลี่ยน 3.141 เป็น 8888 และดูว่าหนึ่งใน 8 หายไปหรือไม่

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

5. หากคุณไม่เห็นเครื่องหมายสีดำที่ใด ๆ กว่าที่คุณเปลี่ยนสายไฟที่ไม่สามารถเอาชนะได้ ให้ตรวจสอบแผนผังและเสียบปลั๊กอย่างถูกต้องแล้วเปลี่ยนรหัสกลับจาก 8888 เป็น 3.141

ขั้นตอนที่ 7: ก้าวต่อไป

วิธีหนึ่งในการใช้พินสองสามตัวบน Arduino เพื่อควบคุม LED หลายดวงที่อาจต้องใช้พินเป็นจำนวนมากคือการลงทะเบียนกะแบบไตรสถานะ 8 พิน ดังนั้นแทนที่จะเชื่อมต่อพิน 8 เซ็กเมนต์กับ Arduino โดยตรง คุณสามารถเสียบมันเข้ากับ shift register และหาวิธีทำเช่นนั้น

มันเป็นเพียงความคิดที่ฉันคิดขึ้นมา แต่ฉันไม่รู้ว่าต้องทำอย่างไร หรือเป็นไปได้แม้กระทั่งกับ Arduino และไลบรารีของจอแสดงผล แต่เดี๋ยวก่อน อาหารสำหรับความคิดของผู้อยากรู้อยากเห็น

ขอให้สนุกกับการแสดงของคุณ และฉันหวังว่าคุณจะชอบคำแนะนำนี้เพราะเป็นครั้งแรกที่ฉันได้เสร็จสิ้นจากจำนวนมากที่ฉันมีในร่างของฉัน

แนะนำ: