สารบัญ:
- ขั้นตอนที่ 1: รับ PCB สำหรับโครงการของคุณที่ผลิต
- ขั้นตอนที่ 2: เกี่ยวกับการลงทะเบียนกะ 74HC595
- ขั้นตอนที่ 3: ปักหมุดไดอะแกรมของ 74HC595
- ขั้นตอนที่ 4: เชื่อมต่อจอแสดงผลกับ Arduino ผ่าน 74HC595
- ขั้นตอนที่ 5: การเข้ารหัส Arduino เพื่อควบคุมการแสดงผลเจ็ดส่วน
- ขั้นตอนที่ 6: คุณสามารถทำสิ่งนี้ด้วยตัวคุณเอง
วีดีโอ: การควบคุมการแสดงผล Seven Segment โดยใช้ Arduino และ 74HC595 Shift Register: 6 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
เฮ้ ว่าไงพวก! Akarsh ที่นี่จาก CETech
Seven Segment Displays ดูดีและเป็นเครื่องมือที่มีประโยชน์ในการแสดงข้อมูลในรูปของตัวเลขเสมอ แต่มีข้อเสียอยู่คือเมื่อเราควบคุม Seven Segment Display ในความเป็นจริงเรากำลังควบคุม LED 8 แบบที่แตกต่างกันและเพื่อควบคุม แต่ละรายการเราต้องการเอาต์พุตที่แตกต่างกัน แต่ถ้าเราใช้พิน GPIO แยกต่างหากสำหรับ LED แต่ละดวงบนจอแสดงผลเจ็ดส่วน เราอาจประสบปัญหาการขาดแคลนพินบนไมโครคอนโทรลเลอร์ของเรา และท้ายที่สุด เราจะไม่มีที่สำหรับทำการเชื่อมต่อที่สำคัญอื่นๆ นี่อาจดูเหมือนปัญหาใหญ่สำหรับคุณ แต่วิธีแก้ปัญหานี้ง่ายมาก เราแค่ต้องใช้ IC ลงทะเบียนกะ 74HC595 74HC595 IC ตัวเดียวสามารถใช้เพื่อให้เอาต์พุตไปยังจุดต่างๆ ได้ 8 จุด นอกจากนั้น เรายังสามารถเชื่อมต่อไอซีเหล่านี้จำนวนหนึ่งและใช้เพื่อควบคุมอุปกรณ์จำนวนมากที่ใช้พิน GPIO เพียง 3 พินของไมโครคอนโทรลเลอร์
ดังนั้นในโครงการนี้ เราจะใช้ 74HC595 Shift register IC กับ Arduino เพื่อควบคุมการแสดงผล Seven Segment โดยใช้หมุด GPIO 3 ตัวของ Arduino และทำความเข้าใจว่า IC นี้จะเป็นเครื่องมือที่ยอดเยี่ยมได้อย่างไร
ขั้นตอนที่ 1: รับ PCB สำหรับโครงการของคุณที่ผลิต
คุณต้องตรวจสอบ PCBWAY เพื่อสั่งซื้อ PCB ออนไลน์ในราคาถูก!
คุณจะได้รับ PCB คุณภาพดี 10 ชิ้นที่ผลิตและจัดส่งถึงมือคุณในราคาถูก คุณยังจะได้รับส่วนลดสำหรับการจัดส่งในการสั่งซื้อครั้งแรกของคุณ อัปโหลดไฟล์ Gerber ของคุณไปยัง PCBWAY เพื่อผลิตไฟล์เหล่านั้นด้วยคุณภาพที่ดีและเวลาตอบสนองที่รวดเร็ว ตรวจสอบฟังก์ชั่น Gerber viewer ออนไลน์ของพวกเขา ด้วยคะแนนสะสม คุณจะได้รับของฟรีจากร้านขายของกระจุกกระจิก
ขั้นตอนที่ 2: เกี่ยวกับการลงทะเบียนกะ 74HC595
การลงทะเบียนกะ 74HC595 เป็น IC SIPO 16 พิน SIPO ย่อมาจาก Serial In และ Parallel Out ซึ่งหมายความว่ารับอินพุตแบบอนุกรมทีละบิตและให้เอาต์พุตแบบคู่ขนานหรือพร้อมกันบนพินเอาต์พุตทั้งหมด เรารู้ว่าการลงทะเบียน Shift นั้นโดยทั่วไปใช้เพื่อวัตถุประสงค์ในการจัดเก็บ และคุณสมบัติของการลงทะเบียนนั้นถูกใช้ที่นี่ ข้อมูลจะเลื่อนเข้าผ่านขาอินพุตแบบอนุกรมและไปยังพินเอาต์พุตแรกและยังคงอยู่จนกว่าอินพุตอื่นจะเข้ามาใน IC ทันทีที่ได้รับอินพุตอื่น อินพุตที่จัดเก็บไว้ก่อนหน้านี้จะเปลี่ยนเป็นเอาต์พุตถัดไปและข้อมูลที่ป้อนใหม่เข้ามา ไปที่พินแรก กระบวนการนี้จะดำเนินต่อไปจนกว่าการจัดเก็บของ IC จะไม่เต็มเช่นจนกว่าจะได้รับ 8 อินพุต แต่เมื่อที่เก็บข้อมูล IC เต็มทันทีที่ได้รับอินพุตที่ 9 อินพุตแรกจะออกไปทางพินของ QH หากมีรีจิสเตอร์การเปลี่ยนแปลงแบบเดซี่เชนกับรีจิสเตอร์ปัจจุบันผ่านพินของ QH ข้อมูลจะเปลี่ยนไปที่นั้น ลงทะเบียนมิฉะนั้นจะสูญหายและข้อมูลที่เข้ามายังคงเข้ามาโดยเลื่อนข้อมูลที่เก็บไว้ก่อนหน้านี้ กระบวนการนี้เรียกว่าล้น IC นี้ใช้พิน GPIO เพียง 3 พินในการเชื่อมต่อกับไมโครคอนโทรลเลอร์ ดังนั้นด้วยการใช้ไมโครคอนโทรลเลอร์เพียง 3 พิน GPIO เราจึงสามารถควบคุมอุปกรณ์อนันต์ได้ด้วยการผูกไอซีจำนวนหนึ่งเข้าด้วยกัน
ตัวอย่างในโลกแห่งความเป็นจริงที่ใช้ shift register คือ 'Original Nintendo Controller' ตัวควบคุมหลักของ Nintendo Entertainment System จำเป็นต้องได้รับการกดปุ่มทั้งหมดตามลำดับ และใช้ shift register เพื่อทำงานนั้นให้สำเร็จ
ขั้นตอนที่ 3: ปักหมุดไดอะแกรมของ 74HC595
แม้ว่า IC นี้จะมีจำหน่ายในหลากหลายรูปแบบและหลายรุ่น แต่เราจะพูดถึง Pinout ของ Texas Instruments SN74HC595N IC สำหรับข้อมูลโดยละเอียดเพิ่มเติมเกี่ยวกับ IC นี้ คุณสามารถดูเอกสารข้อมูลได้จากที่นี่
Shift Register IC มีพินต่อไปนี้:-
1) GND - พินนี้เชื่อมต่อกับพินกราวด์ของไมโครคอนโทรลเลอร์หรือแหล่งจ่ายไฟ
2) Vcc - พินนี้เชื่อมต่อกับ Vcc ของไมโครคอนโทรลเลอร์หรือแหล่งจ่ายไฟเนื่องจากเป็น IC ระดับลอจิก 5V ควรใช้แหล่งจ่ายไฟ 5V
3) SER - เป็นข้อมูล Serial Input Pin ที่ป้อนตามลำดับผ่าน Pin นี้ เช่น ป้อนทีละบิต
4) SRCLK - มันคือ Shift Register Clock Pin พินนี้ทำหน้าที่เป็นนาฬิกาสำหรับ Shift Register เนื่องจากสัญญาณนาฬิกาถูกนำไปใช้ผ่านพินนี้ เนื่องจาก IC เป็นขอบบวกที่ถูกกระตุ้น ดังนั้นเพื่อเปลี่ยนบิตไปยังรีจิสเตอร์ Shift นาฬิกานี้จึงต้องสูง
5) RCLK - เป็นพินนาฬิกาลงทะเบียน เป็นพินที่สำคัญมากเพราะในการสังเกตเอาต์พุตบนอุปกรณ์ที่เชื่อมต่อกับไอซีเหล่านี้ เราจำเป็นต้องเก็บอินพุตไว้ในสลัก และเพื่อจุดประสงค์นี้พิน RCLK จะต้องสูง
6) SRCLR- เป็นพินที่ชัดเจนของ Shift Register ใช้เมื่อใดก็ตามที่เราต้องการล้างที่เก็บข้อมูลของ Shift register มันตั้งค่าองค์ประกอบที่เก็บไว้ในการลงทะเบียนเป็น 0 ในครั้งเดียว มันเป็นพินตรรกะเชิงลบดังนั้นเมื่อใดก็ตามที่เราต้องการล้างการลงทะเบียนเราจำเป็นต้องใช้สัญญาณ LOW ที่พินนี้มิฉะนั้นควรเก็บไว้ที่ HIGH
7) OE- เป็นขาออกที่เปิดใช้งาน Pin มันเป็นลอจิกพินเชิงลบและเมื่อใดก็ตามที่พินนี้ถูกตั้งค่าเป็น HIGH รีจิสเตอร์จะถูกตั้งค่าเป็นสถานะอิมพีแดนซ์สูงและเอาต์พุตจะไม่ถูกส่ง เพื่อให้ได้ผลลัพธ์เราต้องตั้งค่าพินนี้ให้ต่ำ
8) Q1-Q7 - นี่คือพินเอาต์พุตและจำเป็นต้องเชื่อมต่อกับเอาต์พุตบางประเภทเช่น LED และ Seven Segment Display เป็นต้น
9) QH' - พินนี้อยู่ที่นั่นเพื่อที่เราจะได้เชื่อมต่อไอซีเหล่านี้หากเราเชื่อมต่อ QH นี้กับพิน SER ของไอซีตัวอื่น และให้สัญญาณนาฬิกาเหมือนกันทั้งสองไอซี พวกมันจะมีพฤติกรรมเหมือนไอซีตัวเดียวที่มี 16 เอาท์พุท แน่นอน เทคนิคนี้ไม่ได้จำกัดแค่ไอซีสองตัว - คุณสามารถต่อเดซี่เชนได้มากเท่าที่คุณต้องการ หากคุณมีกำลังเพียงพอสำหรับไอซีทั้งหมด
ขั้นตอนที่ 4: เชื่อมต่อจอแสดงผลกับ Arduino ผ่าน 74HC595
ตอนนี้เรามีความรู้เพียงพอเกี่ยวกับ Shift Register IC ดังนั้นเราจะไปที่ส่วน Implementation ในขั้นตอนนี้ เราจะทำการเชื่อมต่อเพื่อควบคุม SSD กับ Arduino ผ่าน 74HC595 IC
วัสดุที่จำเป็น: Arduino UNO, จอแสดงผลเจ็ดส่วน, 74HC595 Shift Register IC, สายจัมเปอร์
1) เชื่อมต่อ IC กับ SSD ในลักษณะดังต่อไปนี้:-
- IC Pin No. 1(Q1) เพื่อแสดงพินสำหรับ Segment B ผ่านตัวต้านทาน
- IC Pin No. 2(Q2) เพื่อแสดงพินสำหรับ Segment C ผ่านตัวต้านทาน
- IC Pin No. 3(Q3) เพื่อแสดงพินสำหรับ Segment D ผ่านตัวต้านทาน
- IC Pin No. 4(Q4) เพื่อแสดงพินสำหรับ Segment E ผ่านตัวต้านทาน
- IC Pin No. 5 (Q5) เพื่อแสดงพินสำหรับ Segment F ผ่านตัวต้านทาน
- IC Pin No. 6(Q6) เพื่อแสดงพินสำหรับ Segment G ผ่านตัวต้านทาน
- IC Pin No. 7(Q7) เพื่อแสดงพินสำหรับ Segment Dp ผ่านตัวต้านทาน
- พินทั่วไปบนจอแสดงผลกับรางจ่ายไฟหรือกราวด์ หากคุณมี Common Anode Display ให้เชื่อมต่อกับรางไฟฟ้า มิฉะนั้นสำหรับ Common Cathode Display ให้เชื่อมต่อกับรางภาคพื้นดิน
2) ต่อ Pin No. 10 (Register Clear Pin) ของ IC เข้ากับ power rail มันจะป้องกันการลงทะเบียนจากการหักบัญชีเนื่องจากเป็นพินต่ำที่ใช้งานอยู่
3) ต่อ Pin No. 13 (Output Enable Pin) ของ IC เข้ากับ Ground Rail เป็นพินสูงที่ใช้งานดังนั้นเมื่อเก็บไว้ที่ระดับต่ำจะทำให้ IC สามารถให้เอาต์พุตได้
4) เชื่อมต่อ Arduino Pin 2 กับ Pin12 (Latch Pin) ของ IC
5) เชื่อมต่อ Arduino Pin 3 กับ Pin14 (Data Pin) ของ IC
6) เชื่อมต่อ Arduino Pin 4 กับ Pin11 (Clock Pin) ของ IC
7) เชื่อมต่อ Vcc และ GND ของ IC กับ Arduino
หลังจากทำการเชื่อมต่อทั้งหมดเหล่านี้ คุณจะจบลงด้วยวงจรที่คล้ายกับในภาพด้านบน และหลังจากขั้นตอนทั้งหมดเหล่านี้ คุณต้องตรงไปที่ส่วนการเข้ารหัส
ขั้นตอนที่ 5: การเข้ารหัส Arduino เพื่อควบคุมการแสดงผลเจ็ดส่วน
ในขั้นตอนนี้ เราจะโค้ด Arduino UNO เพื่อแสดงตัวเลขต่างๆ บน Seven Segment Display โดยมีขั้นตอนดังนี้:-
1) เชื่อมต่อ Arduino Uno กับพีซีของคุณ
2) ตรงไปที่ที่เก็บ Github ของโครงการนี้จากที่นี่
3) ในที่เก็บ เปิดไฟล์ "7segment_arduino.ino" ซึ่งจะเป็นการเปิดรหัสสำหรับโครงการนี้
4) คัดลอกโค้ดนี้แล้ววางลงใน Arduino IDE ของคุณแล้วอัปโหลดไปยังบอร์ด
เมื่อโค้ดถูกอัปโหลด คุณจะสามารถเห็นตัวเลขตั้งแต่ 0 ถึง 9 ปรากฏบนจอแสดงผลที่เวลาล่าช้า 1 วินาที
ขั้นตอนที่ 6: คุณสามารถทำสิ่งนี้ด้วยตัวคุณเอง
ดังนั้นโดยทำตามขั้นตอนเหล่านี้ทั้งหมด คุณสามารถสร้างโครงการนี้ด้วยตัวเองซึ่งจะมีลักษณะเหมือนที่แสดงในภาพด้านบน คุณยังสามารถลองใช้โปรเจ็กต์เดียวกันได้โดยไม่ต้องใช้ Shift Register IC และคุณจะได้รู้ว่า IC นี้มีประโยชน์อย่างไรในการให้เอาต์พุตไปยังวัตถุหลายชิ้นพร้อมกันโดยใช้พิน GPIO จำนวนน้อยกว่า คุณยังสามารถลองเชื่อมโยงไอซีเหล่านี้จำนวนหนึ่งและควบคุมเซ็นเซอร์หรืออุปกรณ์จำนวนมาก เป็นต้น
หวังว่าคุณจะชอบบทช่วยสอนนี้
แนะนำ:
7 Segment Display Counter พร้อม Shift Register: 3 ขั้นตอน
7 Segment Display Counter พร้อม Shift Register: นี่เป็นโปรเจ็กต์สำหรับผู้เริ่มต้นที่สมบูรณ์แบบ หากคุณเพิ่งเรียนรู้วิธีใช้ shift register และวิธีทำงานกับโค้ด นอกจากนี้ โปรเจ็กต์นี้เป็นการเริ่มต้นที่ดีหากคุณยังใหม่ต่อการแสดงผล 7 เซ็กเมนต์ ก่อนที่คุณจะเริ่มโครงการนี้ ตรวจสอบให้แน่ใจว่า
Cascade of Shift Registers 74HC595 ควบคุมผ่าน Arduino และ Ethernet: 3 ขั้นตอน
Cascade of Shift Registers 74HC595 ควบคุมผ่าน Arduino และ Ethernet: วันนี้ฉันอยากจะนำเสนอโครงการที่ฉันดำเนินการในสองเวอร์ชัน โครงการนี้ใช้ 12 shift register 74HC595 และ 96 LEDs, Arduino Uno board พร้อม Ethernet shield Wiznet W5100 8 LEDs เชื่อมต่อกับ shift register แต่ละอัน ตัวเลข 0
จอแสดงผล LED Matrix แบบเลื่อน 48 X 8 โดยใช้ Arduino และ Shift Registers: 6 ขั้นตอน (พร้อมรูปภาพ)
จอแสดงผลเมทริกซ์ LED แบบเลื่อนได้ 48 X 8 โดยใช้ Arduino และ Shift Registers: สวัสดีทุกคน! นี่เป็นคำสั่งแรกของฉันและมันคือทั้งหมดที่เกี่ยวกับการสร้างเมทริกซ์ LED การเลื่อนที่ตั้งโปรแกรมได้ 48 x 8 โดยใช้ Arduino Uno และการลงทะเบียนกะ 74HC595 นี่เป็นโครงการแรกของฉันกับบอร์ดพัฒนา Arduino มันเป็นความท้าทายที่มอบให้กับม
การใช้ Dot Matrix LED กับ Arduino และ Shift Register: 5 ขั้นตอน
การใช้ Dot Matrix LED กับ Arduino และ Shift Register: Siemens DLO7135 Dot matrix LED เป็นออปโตอิเล็กทรอนิกส์ชิ้นหนึ่งที่น่าทึ่ง มันถูกเรียกเก็บเงินเป็น 5x7 Dot Matrix Intelligent Display (r) พร้อมหน่วยความจำ/ตัวถอดรหัส/ไดรเวอร์ นอกจากหน่วยความจำนั้นแล้ว ยังมีจอแสดงผล ASCII 96 อักขระที่ตั้งค่าบนและล่าง
74HC164 Shift Register และ Arduino ของคุณ: 9 ขั้นตอน
74HC164 Shift Register และ Arduino ของคุณ: Shift register เป็นส่วนสำคัญของตรรกะดิจิทัล โดยทำหน้าที่เป็นกาวระหว่างโลกคู่ขนานและโลกอนุกรม ช่วยลดจำนวนสายไฟ การใช้พิน และยังช่วยลดภาระของ cpu โดยสามารถจัดเก็บข้อมูลได้ สิ่งเหล่านี้มาในรูปแบบต่างๆ