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

โปรเจ็กต์นี้เริ่มต้นชีวิตด้วยการออกกำลังกายเพื่อทำอะไรบางอย่างด้วยการแสดงเซกเมนต์ 7 หลัก 4 หลัก
สิ่งที่ฉันคิดได้คือความสามารถในการป้อนตัวเลข 4 หลักรวมกัน แต่เมื่อเสร็จแล้ว มันค่อนข้างน่าเบื่อ ฉันสร้างมันโดยใช้ Arduino UNO มันใช้งานได้ แต่ไม่ได้ทำอะไรอย่างอื่น
จากนั้นฉันก็มีความคิดว่าควรมีปุ่มสำหรับยอมรับหมายเลขที่เลือก และอาจมีปุ่มอื่นเพื่อเปลี่ยนชุดค่าผสม และอาจมี LED แสดงสถานะเมื่อใดก็ได้ แม้ว่าจะฟังดูเหมือนเป็นแผน แต่ก็หมายความว่าฉันจะไม่มีหมุดบน UNO แล้ว อาจมีวิธีมัลติเพล็กซ์ยูนิตนี้ แต่ฉันไม่แน่ใจว่าจะเริ่มจากตรงไหน ดังนั้นฉันจึงไปถึง Arduino Mega
ตอนนี้ฉันใช้บอร์ดที่ใหญ่ขึ้นและมีพินให้เล่นมากขึ้น ฉันยังตัดสินใจเพิ่มความสามารถ Wi-Fi เพื่อสื่อสารกับ Arduino ตัวอื่นซึ่งจะควบคุมสวิตช์บางประเภทได้จริง
ขั้นตอนที่ 1: ข้อกำหนดและรายการชิ้นส่วน

หลังจากคิดทั้งหมดแล้ว ตอนนี้ฉันมีรายการข้อกำหนด:
- เพื่อให้สามารถป้อนตัวเลข 4 หลักได้
- เพื่อเริ่มต้นด้วยชุดค่าผสมเริ่มต้นที่ฮาร์ดโค้ด
- เพื่อให้สามารถเปลี่ยนชุดค่าผสมและจัดเก็บชุดค่าผสมใหม่ใน EEPROM ของ Arduino
- แสดงสถานะของล็อคด้วย LED สีแดงสำหรับล็อคและ LED สีเขียวสำหรับเปิด
- แสดงสถานะเมื่อมีการเปลี่ยนชุดค่าผสมด้วยไฟ LED สีฟ้า
- เมื่อปลดล็อกสถานะแล้ว ให้คงอยู่ชั่วขณะหนึ่งแล้วเปลี่ยนกลับเป็นสถานะล็อก
- ส่งสถานะล็อค/ปลดล็อคไปยัง Arduino อื่น
- แสดงสถานะเดียวกันกับ LED สีแดงและสีเขียวบน Arduino ที่รับ
- เพื่อวัตถุประสงค์ในการสาธิต ให้ใช้เซอร์โวเพื่อทำหน้าที่เป็นกลไกล็อคตามสถานะที่ได้รับ
จากข้อกำหนด ตอนนี้ฉันสามารถสร้างรายการชิ้นส่วนได้:
เครื่องส่งสัญญาณ:
- Arduino เมก้า
- เขียงหั่นขนม
- จอแสดงผล 4 หลัก 7 ส่วน
- สวิตช์ชั่วขณะ 2 X พร้อมฝาปิด
- 1 X RGB LED.
- ตัวต้านทาน 9 X 220ohm 8 สำหรับจอแสดงผลและ 1 สำหรับ RGB LED
- ตัวต้านทาน 2 X 10kohm ดึงตัวต้านทานลงสำหรับ 2 ปุ่ม (ที่จริงฉันใช้ 9.1kohm เพราะนั่นคือสิ่งที่ฉันมี)
- 1 X 10k โพเทนชิออมิเตอร์
- 1 X NRF24L01
- [อุปกรณ์เสริม] 1 X YL-105 breakout board สำหรับ NRF24L01. ช่วยให้เชื่อมต่อ 5v และเดินสายได้ง่ายขึ้น สายจัมเปอร์
ผู้รับ:
- Arduino UNO
- เขียงหั่นขนม
- 1 X RGB LED.
- ตัวต้านทาน 1 X 220ohm สำหรับไฟแอลอีดี
- 1 X เซอร์โว ฉันใช้ SG90 เพื่อการสาธิตเท่านั้น
- 1 X NRF24L01
- อุปกรณ์เสริม] 1 X YL-105 breakout board สำหรับ NRF24L01. ช่วยให้เชื่อมต่อ 5v และเดินสายได้ง่ายขึ้น
- สายจัมเปอร์
ขั้นตอนที่ 2: จอแสดงผล


ฉันใช้จอแสดงผล 4 หลัก 7 เซ็กเมนต์
ทดสอบกับ SMA420564 และ SM420562K (พินเหมือนกัน)
หมุด 1 และ 12 ถูกทำเครื่องหมาย
การจัดเรียงพินจากบนลงล่าง 12, 11, 10, 9, 8, 7 1, 2, 3, 4, 5, 6
หมุด 12, 9, 8, 6 เปิดหรือปิดหลัก 1 ถึง 4 จากซ้ายไปขวา
ขั้นตอนที่ 3: การเดินสาย Arduino Mega:

แสดงการจัดเรียงพิน Arduino
- 1 ถึงพิน 6 ผ่านตัวต้านทาน 220ohm (E)
- 2 ถึงพิน 5 ผ่านตัวต้านทาน 220ohm (D)
- 3 ถึงพิน 9 ผ่านตัวต้านทาน 220ohm (DP) ไม่ได้ใช้ที่นี่
- 4 ถึงพิน 4 ผ่านตัวต้านทาน 220ohm (C)
- 5 ถึงพิน 8 ผ่านตัวต้านทาน 220ohm (G)
- 6 ถึงพิน 33 (หลัก 4)
- 7 ถึงพิน 3 ผ่านตัวต้านทาน 220ohm (B)
- 8 ถึงพิน 32 (หลัก 3)
- 9 เพื่อตรึง 31 (หลัก 2)
- 10 ถึงพิน 7 ผ่านตัวต้านทาน 220ohm (F)
- 11 ถึงพิน 2 ผ่านตัวต้านทาน 220ohm (A)
- 12 ถึงพิน 30 (หลัก 1)
โพเทนชิออมิเตอร์ 10kohm เพื่อเปลี่ยนตัวเลขบนตัวเลขที่แสดง
- พินด้านนอกถึง5v
- พินตรงกลางไปที่ A0
- หมุดด้านนอกอื่น ๆ สำหรับ GND
ปุ่มยอมรับหมายเลข
- เพื่อตรึง 36
- และปักหมุด 36 ผ่านตัวต้านทานแบบดึงลง 10kohm ไปที่GND
เปลี่ยนปุ่มหมายเลขรวมกัน
- เพื่อตรึง 37
- และตรึง 37 ผ่านตัวต้านทานแบบดึงลง 10kohm ไปที่GND
RGB LED (แคโทดทั่วไป)
- แคโทดถึง GND ผ่านตัวต้านทาน 220ohm
- สีแดงเพื่อหมุด40
- สีเขียวเพื่อหมุด41
- สีน้ำเงินกับหมุด42
NRF24L01 พร้อมกระดานฝ่าวงล้อม:
- MISO เพื่อพิน 50 (บังคับผ่านพินเฉพาะ)
- MOSI เพื่อพิน 51 (บังคับผ่านพินเฉพาะ)
- SCK เพื่อพิน 52 (บังคับผ่านพินเฉพาะ)
- CE ถึงพิน 44 (หมายเลขพินเสริม แต่กำหนดไว้ในร่าง)
- CSN ไปยังพิน 45 (หมายเลขพินเสริม แต่กำหนดไว้ในแบบร่าง)
- Vcc เป็น Arduino 5v (หรือ 3.3v หากไม่ได้ใช้บอร์ดฝ่าวงล้อม)
- GND เป็น Arduino GND
ขั้นตอนที่ 4: การเดินสาย Arduino UNO:

RGB LED (แคโทดทั่วไป)
- แคโทดถึง GND ผ่านตัวต้านทาน 220ohm
- แดงต่อขา2 เขียวต่อขา3
- สีฟ้า (ไม่ได้ใช้ที่นี่)
เซอร์โว:
- สีแดงเป็น Arduino 5v หรือแหล่งจ่ายไฟแยกต่างหากหากใช้
- สีน้ำตาลถึง Arduino GND และแยกแหล่งจ่ายหากใช้
- ส้มต่อหมุด6
NRF24L01 พร้อมกระดานฝ่าวงล้อม:
MISO เพื่อตรึง 12 (บังคับผ่านพินเฉพาะ)
MOSI เพื่อพิน 11 (บังคับผ่านพินเฉพาะ)
SCK เพื่อพิน 13 (บังคับผ่านพินเฉพาะ)
CE ถึงพิน 7 (หมายเลขพินเสริม แต่กำหนดไว้ในร่าง)
CSN ถึงพิน 8 (หมายเลขพินเสริม แต่กำหนดไว้ในแบบร่าง)
Vcc เป็น Arduino 5v (หรือ 3.3v หากไม่ได้ใช้บอร์ดฝ่าวงล้อม)
GND เป็น Arduino GND
ขั้นตอนที่ 5: มันทำงานอย่างไร





เมื่อเขียงหั่นขนมทั้งสองเสร็จสมบูรณ์และอัปโหลดภาพสเก็ตช์ที่เหมาะสมแล้ว เราสามารถทดสอบได้
โดยเปิดเครื่องทั้งสองบอร์ด
ไฟ LED สีแดงควรแสดงบนทั้งสองแผง
หน้าจอจะแสดงตัวเลขในหลักแรก ตัวเลขนี้จะขึ้นอยู่กับตำแหน่งที่โพเทนชิออมิเตอร์ตั้งไว้ในปัจจุบัน
หมุนโพเทนชิออมิเตอร์เพื่อให้ได้ตัวเลขที่ต้องการ
เมื่อพบหมายเลขแล้วให้กดปุ่มยอมรับ ในกรณีของฉันมันอยู่ทางซ้ายของโพเทนชิออมิเตอร์
ทำเช่นเดียวกันกับตัวเลขอีกสามตัวที่เหลือ
หากชุดค่าผสมที่ป้อนถูกต้อง คำว่า OPEn จะปรากฏขึ้น ไฟ LED สีเขียวจะสว่างบนทั้งสองบอร์ด และเซอร์โวจะหมุน 180 องศา
จอแสดงผลจะว่างเปล่าและไฟ LED สีเขียวจะติดสว่างนานขึ้นประมาณ 5 วินาที
เมื่อเวลาปลดล็อกหมดลง ไฟ LED ทั้งสองดวงจะเป็นสีแดง และเซอร์โวจะหันกลับ 180 องศาเพื่อเริ่มต้น
หากชุดค่าผสมที่ป้อนไม่ถูกต้อง คำว่า OOPS จะปรากฏขึ้นและไฟ LED สีแดงจะติดสว่าง
มีชุดค่าผสมเริ่มต้นที่ฮาร์ดโค้ดอยู่ในแบบร่างของ 1 1 1 1
หากต้องการเปลี่ยนชุดค่าผสม คุณต้องป้อนชุดค่าผสมที่ถูกต้องก่อน
เมื่อคำว่า OPEn หายไป คุณมีเวลาประมาณ 5 วินาทีในการกดปุ่มอีกปุ่มหนึ่ง
เมื่อคุณป้อนลำดับชุดค่าผสมการเปลี่ยนแปลง ไฟ LED ของกระดานหลักจะเป็นสีน้ำเงิน ในขณะที่ไฟดวงอื่นยังคงเป็นสีเขียวและเปิดอยู่
ป้อนชุดค่าผสมใหม่ในลักษณะเดียวกับเมื่อก่อน
เมื่อยอมรับชุดค่าผสมใหม่แล้ว (เมื่อกดปุ่มสุดท้าย) ชุดค่าผสมจะถูกเก็บไว้ใน EEPROM
Arduinos ทั้งสองจะเข้าสู่โหมดล็อค
ป้อนชุดค่าผสมใหม่ของคุณและจะปลดล็อกตามที่คาดไว้
เมื่อชุดค่าผสมได้รับการเปลี่ยนแปลงและจัดเก็บไว้ใน EEPROM แล้ว ค่าดีฟอลต์ของฮาร์ดโค้ดคือ 1 1 1 1 จะถูกละเว้น
ขั้นตอนที่ 6: เสร็จสิ้นทั้งหมด
ฉันสร้างสิ่งนี้โดยใช้ NRF24L01 พื้นฐานพร้อมเสาอากาศในตัวและจัดการการสื่อสารที่ดีผ่านผนังด้านหนึ่งประมาณ 15 ฟุต
เนื่องจากเขียงหั่นขนม Arduino Mega ค่อนข้างยุ่งกับสายไฟ ฉันจึงใช้จัมเปอร์โดยตรงในบางที่ เนื่องจากมีหลายบอร์ดในบอร์ดเดียว ทำให้ยากต่อการติดตามรูปภาพ
อย่างไรก็ตาม ฉันคิดว่าฉันได้อธิบายทุกอย่างเกี่ยวกับพินสำหรับพินแล้ว และแม้ว่าคุณจะเป็นมือใหม่ คุณควรจะสามารถสร้างโปรเจ็กต์เล็กๆ นี้ได้เพียงแค่ใช้ลวดหรือพินทีละอัน
ภาพร่างทั้งสองได้รับการแสดงความคิดเห็นอย่างเต็มที่เพื่อให้อ่านง่าย และพร้อมให้ดาวน์โหลดที่นี่
ภาพสเก็ตช์สำหรับ Arduino Mega นั้นค่อนข้างใหญ่ ประมาณ 400 บรรทัด แต่แบ่งออกเป็นส่วนๆ ที่จัดการได้ ดังนั้นควรติดตามอย่างง่ายดาย
แนะนำ:
4 Digit 7 Segment Display 14 Pins พร้อม Arduino: 3 ขั้นตอน

4 Digit 7 Segment Display 14 Pins พร้อม Arduino: เป็นความคิดที่ดีเสมอที่จะทดสอบว่าอุปกรณ์ทำงานอย่างถูกต้องหรือไม่ว่าส่วนประกอบนั้นมีพินจำนวนมาก ในโครงการนี้ ฉันได้ทดสอบการแสดงผล 4 หลัก 7 ส่วน 14 พินของฉันแล้ว ทั้ง 7 ส่วนจะแสดง 0 ถึง 9 ในเวลาเดียวกัน
All Band Receiver พร้อม SI4732 / SI4735 (FM / RDS, AM และ SSB) พร้อม Arduino: 3 ขั้นตอน

All Band Receiver พร้อม SI4732 / SI4735 (FM / RDS, AM และ SSB) พร้อม Arduino: เป็นโปรเจ็กต์เครื่องรับย่านความถี่ทั้งหมด ใช้ห้องสมุด Arduino Si4734 ห้องสมุดนี้มีตัวอย่างมากกว่า 20 ตัวอย่าง คุณสามารถฟัง FM ด้วย RDS สถานี AM (MW) ในพื้นที่ SW และสถานีวิทยุสมัครเล่น (SSB) เอกสารทั้งหมดที่นี่
14 Segment 2 Digit LED Display: 5 ขั้นตอน

14 Segment 2 Digit LED Display: เรื่องราว ในช่วงหลายปีที่ผ่านมา ฉันพยายามเรียนรู้วิธีการทำงานของอุปกรณ์อิเล็กทรอนิกส์ โดยสิ่งนี้ฉันหมายถึงวิธีทำให้พวกเขาทำงานกับ Arduino หรืออุปกรณ์ควบคุมใด ๆ ซึ่งรวมถึงจอแสดงผล เซ็นเซอร์ หรืออย่างอื่น ที่ส่งกลับค่าบางอย่าง
PWM พร้อม ESP32 - Dimming LED พร้อม PWM บน ESP 32 พร้อม Arduino IDE: 6 ขั้นตอน

PWM พร้อม ESP32 | Dimming LED พร้อม PWM บน ESP 32 พร้อม Arduino IDE: ในคำแนะนำนี้เราจะดูวิธีสร้างสัญญาณ PWM ด้วย ESP32 โดยใช้ Arduino IDE & โดยทั่วไปแล้ว PWM จะใช้เพื่อสร้างเอาต์พุตแอนะล็อกจาก MCU ใดๆ และเอาต์พุตแอนะล็อกนั้นอาจเป็นอะไรก็ได้ระหว่าง 0V ถึง 3.3V (ในกรณีของ esp32) & จาก
Digital Combination Lock!: 7 ขั้นตอน (พร้อมรูปภาพ)

รหัสล็อคแบบดิจิตอล!: ฉันเคยสงสัยอยู่เสมอว่าระบบล็อคแบบอิเล็กทรอนิกส์ทำงานอย่างไร ดังนั้นเมื่อฉันเรียนจบหลักสูตรอิเล็กทรอนิกส์ดิจิทัลขั้นพื้นฐาน ฉันจึงตัดสินใจสร้างมันขึ้นมาเอง และฉันจะช่วยคุณสร้างของคุณเอง! คุณสามารถเชื่อมต่อกับอะไรก็ได้ตั้งแต่ 1v ถึง 400v (หรือ m