
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12

วันนี้ผมขอนำเสนอโครงการที่ผมได้ดำเนินการไปแล้วในสองเวอร์ชัน โครงการนี้ใช้ 12 shift register 74HC595 และ 96 LEDs, Arduino Uno board พร้อม Ethernet shield Wiznet W5100 8 LEDs เชื่อมต่อกับ shift register แต่ละอัน ตัวเลข 0-9 แสดงด้วย LED ทะเบียนกะแต่ละอันมีขั้วเอาท์พุต 8 ขั้ว
การลงทะเบียนกะทั้ง 4 กะ 74HC595 สร้างหน่วยตรรกะ - การแสดงรายการตัวเลข 4 หลัก โดยรวมแล้ว มีการแสดงผลเชิงตรรกะ 3 รายการในโครงการซึ่งประกอบด้วยการลงทะเบียนกะ 12 รายการ
การใช้งานนี้เข้ากันได้กับบอร์ด Arduino Nano, Mega, Uno และสำหรับอีเธอร์เน็ตชิลด์และโมดูลจากตระกูล Wiznet โดยเฉพาะรุ่น W5100 และ W5500 (โดยใช้ไลบรารี Ethernet2)
เสบียง
- Arduino Uno / นาโน
- อีเธอร์เน็ต Wiznet W5100 / W5500
- 4 ถึง 12 shift register 74HC595
- ไดโอด LED 32 ถึง 96 ตัว
ขั้นตอนที่ 1: ใช้งานจริงในโครงการด้วย Arduino:
- เว็บเซิร์ฟเวอร์ - เซิร์ฟเวอร์ HTTP ทำงานโดยตรงบน Arduino อนุญาตให้ตีความโค้ด HTML
- WebClient - ไคลเอนต์สามารถส่งคำขอ HTTP ไปยังเซิร์ฟเวอร์ระยะไกล ส่ง / ดาวน์โหลดข้อมูล
เว็บเซิร์ฟเวอร์:
- ให้หน้าเว็บ HTML พร้อมแบบฟอร์มที่ให้คุณป้อนตัวเลขสี่หลัก 3 ตัว
- หลังจากส่งแบบฟอร์ม ข้อมูลจะถูกประมวลผลและเก็บไว้ในหน่วยความจำ EEPROM ผู้ใช้จะได้รับแจ้งเกี่ยวกับการประมวลผลข้อมูลโดยหน้าย่อยแยกต่างหาก
- หลังจากบันทึกข้อมูลแล้ว ผู้ใช้จะถูกเปลี่ยนเส้นทางกลับไปที่แบบฟอร์ม
- หน่วยความจำ EEPROM เป็นอิสระจากพลังงาน ข้อมูลสามารถเข้าถึงได้แม้หลังจากการกู้คืนพลังงาน แต่ยังมีการรีสตาร์ทบอร์ด
- จากนั้นตัวเลขทั้งหมดจะแสดงบนจอแสดงผลสามจอซึ่งประกอบด้วยการลงทะเบียนกะ 74HC595 จำนวน 12 ตัว
เว็บไคลเอนต์:
- การสื่อสารกับเว็บเซิร์ฟเวอร์จะเกิดขึ้นทุกๆ 5 วินาทีหลังจากโปรโตคอล
- เว็บเซิร์ฟเวอร์เรียกใช้เว็บแอปพลิเคชัน PHP ที่ให้คุณป้อนตัวเลขสี่หลัก 3 ตัวผ่านแบบฟอร์ม HTML
- ข้อมูลจากแบบฟอร์มถูกเก็บไว้ในฐานข้อมูล MySQL
- Arduino ร้องขอให้ดึงข้อมูลจากฐานข้อมูลนี้ผ่านแบบสอบถามไปยังเซิร์ฟเวอร์
- ข้อมูลที่ประมวลผลจะถูกแยกวิเคราะห์โดย Arduino จากนั้นจึงวางแผนโดยใช้ shift register 74HC595
- ข้อมูลยังถูกเก็บไว้ในหน่วยความจำ EEPROM ของ Arduino ซึ่งจะใช้ในกรณีที่การเชื่อมต่อกับเว็บเซิร์ฟเวอร์ล้มเหลว / เมื่อบอร์ด Arduino ถูกรีสตาร์ท ข้อมูลเหล่านี้จะถูกใช้สำหรับการแสดงผลเริ่มต้นของข้อมูลบน shift register
- ข้อมูลจะถูกเขียนทับใน EEPROM เฉพาะเมื่อข้อมูลมีการเปลี่ยนแปลง เซลล์ EEPROM จะถูกบันทึกจากการเขียนทับที่ไม่จำเป็น
ขั้นตอนที่ 2: การเดินสายไฟ & ภาพหน้าจอ


การเชื่อมต่อแบบคาสเคดสำหรับ shift register 74HC595 (สามารถขยายได้อีก x) - ส่งออกจาก TinkerCAD มีภาพหน้าจอจากอินเทอร์เฟซเว็บเซิร์ฟเวอร์ เมื่อได้รับข้อมูลผ่านรูปแบบ HTML ประมวลผล และบันทึกลงในหน่วยความจำ EEPROM
ขั้นตอนที่ 3: 74HC595 + ซอร์สโค้ด
จากแผนภาพจะเห็นได้ชัดเจนว่ามีเพียง 3 สายข้อมูลเท่านั้นที่ใช้ควบคุม shift register:
- เต้ารับข้อมูล - (SER ถึง 74HC595)
- เอาต์พุตนาฬิกา - (SRCLK บน 74HC595)
- สลักทางออก - (RCLK ถึง 74HC595)
Shift register สามารถรวมกันเป็นน้ำตกได้ ในขณะที่อุปกรณ์ต่อพ่วงอื่นๆ สามารถควบคุมได้โดย shift register - ตัวอย่างเช่น รีเลย์สำหรับส่วนประกอบกำลังสวิตชิ่ง นอกจากนี้ยังสามารถควบคุมรีเลย์ 500 ตัวแยกกัน (ด้วยจำนวนรีจิสเตอร์และแหล่งจ่ายไฟที่เพียงพอ) ด้วยเอาต์พุตข้อมูลเดียว
เมื่อควบคุมเอาต์พุตของรีจิสเตอร์ ยังสามารถแก้ไขลำดับไบต์เป็นบิตที่สำคัญที่สุด - MSB FIRST หรือเป็น LSB - บิตที่มีนัยสำคัญน้อยที่สุด เป็นผลให้มันกลับเอาท์พุต ในกรณีหนึ่ง ตัวอย่างเช่น 7 ไดโอดติดสว่าง ในกรณีอื่น 1 ไดโอดขึ้นอยู่กับอินพุตและลำดับไบต์
การใช้งานทั้งสองแบบใช้หน่วยความจำ EEPROM ซึ่งสามารถจัดเก็บข้อมูลได้แม้หลังจากไฟฟ้าขัดข้องหรือหลังจากรีสตาร์ทบอร์ด การใช้หน่วยความจำครั้งที่สองยังเป็นความสามารถในการแสดงข้อมูลที่ทราบล่าสุดในกรณีที่ไม่สามารถสื่อสารกับเว็บเซิร์ฟเวอร์ได้ (ข้อผิดพลาดในการเชื่อมต่อ, เซิร์ฟเวอร์)
หน่วยความจำถูกจำกัดไว้ที่ 10,000 ถึง 100, 000 สำเนา การใช้งานได้รับการออกแบบมาเพื่อให้โหลดหน่วยความจำน้อยที่สุด ข้อมูลจะไม่ถูกเขียนทับเมื่อมีการเปลี่ยนแปลง หากข้อมูลเดียวกันถูกอ่านจากเว็บเซิร์ฟเวอร์ / ไคลเอนต์ ข้อมูลเหล่านั้นจะไม่ถูกเขียนทับในหน่วยความจำ EEPROM
การใช้งานซอฟต์แวร์ (ฝั่ง Arduino) สำหรับ WebClient สามารถทดลองใช้ได้ฟรีที่:
Arduino สื่อสารกับเว็บอินเตอร์เฟสซึ่งเป็นไปได้ที่จะแก้ไขตัวเลขสี่หลัก 3 ตัว:
ขอรหัสสำหรับ Arduino เป็นเว็บเซิร์ฟเวอร์ที่: [email protected]บริจาคเพื่อรับคำแนะนำเพิ่มเติม:
แนะนำ:
การควบคุมการแสดงผล Seven Segment โดยใช้ Arduino และ 74HC595 Shift Register: 6 ขั้นตอน

การควบคุมการแสดงผลเจ็ดส่วนโดยใช้ Arduino และ 74HC595 Shift Register: เฮ้ ว่าไงพวก! Akarsh ที่นี่จาก CETech จอแสดงผล Seven Segment นั้นดูดีและเป็นเครื่องมือที่มีประโยชน์ในการแสดงข้อมูลในรูปของตัวเลข แต่มีข้อเสียคือเมื่อเราควบคุม Seven Segment Display ในความเป็นจริง
DIY Smart LED Dimmer ควบคุมผ่าน Bluetooth: 7 ขั้นตอน

DIY Smart LED Dimmer ควบคุมผ่าน Bluetooth: คำแนะนำนี้จะอธิบายวิธีสร้างเครื่องหรี่ดิจิตอลอัจฉริยะ สวิตช์หรี่ไฟคือสวิตช์ไฟทั่วไปที่ใช้ในบ้าน โรงแรม และอาคารอื่นๆ สวิตช์หรี่ไฟรุ่นเก่าเป็นแบบแมนนวล และโดยทั่วไปจะรวมสวิตช์แบบหมุน
ใช้ 2 Shift Registers (74HC595) เพื่อขับ 16 LEDs: 9 Steps

การใช้ 2 Shift Registers (74HC595) กับไดรฟ์ 16 LEDs: วงจรนี้จะใช้ 2 shift register (74HC595) shift register จะขับเป็นเอาต์พุต 16 LEDs รีจิสเตอร์กะแต่ละตัวจะขับ LED 8 ดวง รีจิสเตอร์กะมีสายเพื่อให้เอาต์พุตรีจิสเตอร์แต่ละอันดูเหมือนซ้ำกัน
จอแสดงผล LED Matrix แบบเลื่อน 48 X 8 โดยใช้ Arduino และ Shift Registers: 6 ขั้นตอน (พร้อมรูปภาพ)

จอแสดงผลเมทริกซ์ LED แบบเลื่อนได้ 48 X 8 โดยใช้ Arduino และ Shift Registers: สวัสดีทุกคน! นี่เป็นคำสั่งแรกของฉันและมันคือทั้งหมดที่เกี่ยวกับการสร้างเมทริกซ์ LED การเลื่อนที่ตั้งโปรแกรมได้ 48 x 8 โดยใช้ Arduino Uno และการลงทะเบียนกะ 74HC595 นี่เป็นโครงการแรกของฉันกับบอร์ดพัฒนา Arduino มันเป็นความท้าทายที่มอบให้กับม
LED Matrix ใช้ Shift Registers: 7 ขั้นตอน (พร้อมรูปภาพ)

LED Matrix โดยใช้ Shift Registers: คำแนะนำนี้มีขึ้นเพื่อเป็นคำอธิบายที่สมบูรณ์กว่าคนอื่น ๆ ที่มีให้ทางออนไลน์ โดยเฉพาะอย่างยิ่ง สิ่งนี้จะให้คำอธิบายเกี่ยวกับฮาร์ดแวร์มากกว่าที่มีอยู่ใน LED Marquee ซึ่งสอนได้โดย led555.Goalsคำแนะนำนี้นำเสนอแนวคิด