สารบัญ:
- เสบียง
- ขั้นตอนที่ 1: เชื่อมต่อวงจร
- ขั้นตอนที่ 2: การเตรียม Buzzer Part
- ขั้นตอนที่ 3: การเตรียมแผงไฟ LED
- ขั้นตอนที่ 4: การเตรียมสวิตช์ (ปุ่มกดจริง)
- ขั้นตอนที่ 5: เตรียม LED Strip
- ขั้นตอนที่ 6: การเตรียมเซ็นเซอร์ความจุ
- ขั้นตอนที่ 7: การเตรียมพาวเวอร์ซัพพลาย
- ขั้นตอนที่ 8: เชื่อมต่อเข้ากับ Arduino
- ขั้นตอนที่ 9: สิ่งที่แนบมา
- ขั้นตอนที่ 10: เวลาการเขียนโปรแกรม
- ขั้นตอนที่ 11: กลไกการแก้ไข
- ขั้นตอนที่ 12: วิธีใช้ฟังก์ชันทั้งหมด
- ขั้นตอนที่ 13: บทสรุป
- ขั้นตอนที่ 14: อัปเดต: หลังจากใช้งานหนึ่งสัปดาห์
วีดีโอ: DIY Arduino Binary Alarm Clock: 14 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:04
มันเป็นนาฬิกาไบนารีคลาสสิกอีกครั้ง! แต่คราวนี้มาพร้อมฟังก์ชั่นเพิ่มเติมที่มากยิ่งขึ้น! ในคำแนะนำนี้ ฉันจะแสดงวิธีสร้างนาฬิกาปลุกไบนารีด้วย Arduino ที่ไม่เพียงแต่แสดงเวลาเท่านั้น แต่ยังแสดงวันที่ เดือน แม้กระทั่งด้วยฟังก์ชันจับเวลาและนาฬิกาปลุกที่สามารถใช้เป็นโคมไฟข้างเตียงได้! เพื่อไม่ให้เป็นการเสียเวลา มาเริ่มกันเลย!
หมายเหตุ: โปรเจ็กต์นี้ไม่ได้ใช้โมดูล RTC ดังนั้นความแม่นยำจึงขึ้นอยู่กับบอร์ดที่คุณใช้ ฉันได้รวมกลไกการแก้ไขที่จะแก้ไขการเลื่อนลอยของเวลาในช่วงระยะเวลาหนึ่ง แต่คุณจะต้องทำการทดลองเพื่อหาค่าที่ถูกต้องสำหรับช่วงเวลาหนึ่ง (เพิ่มเติมเกี่ยวกับเรื่องนี้ด้านล่าง) และถึงแม้จะมีกลไกการแก้ไข มันก็ยังคงลอยอยู่ เป็นเวลานาน (เมื่อเทียบกับไม่มี) หากใครสนใจอย่าลังเลที่จะใช้โมดูล RTC ในโครงการนี้
เสบียง
LED 5 มม. (สีใดก็ได้ ฉันใช้ LED สีขาว 13 ดวงโดยมีไฟ LED RGB หนึ่งดวงเป็นตัวบ่งชี้) --- 14 ชิ้น
Arduino Nano (ตัวอื่นอาจใช้ได้) --- 1 ชิ้น
ไมโครสวิตช์ --- 1 ชิ้น
แผ่นอลูมิเนียมฟอยล์ชิ้นเล็ก
แผงยึด (สำหรับตู้ แต่ออกแบบเองได้)
กระดาษสีขาว (หรือสีอื่น ๆ)
ฟิล์มพลาสติกบางแผ่น (อันที่ใช้ทำปกหนังสือ)
มัดสายไฟ
Buzzer --- 1pc
ทรานซิสเตอร์ NPN --- 1pc
ตัวต้านทาน 6k8 --- 14 ชิ้น, 500R --- 1 ชิ้น, 20R (10Rx2) --- 1 ชิ้น, 4k7 --- 1 ชิ้น
แหล่งจ่ายไฟสำหรับโครงการ (ฉันใช้แบตเตอรี่ li-on)
แถบ LED 5050 และสวิตช์สไลด์ (อุปกรณ์เสริม)
ขั้นตอนที่ 1: เชื่อมต่อวงจร
ฉันจะแบ่งขั้นตอนนี้ออกเป็น:
1) ส่วนออด
2) แผงไฟ LED
3) สวิตช์ (ปุ่มกด)
4) แถบ LED
5) เซ็นเซอร์ความจุ
6) แหล่งจ่ายไฟ
7) เชื่อมต่อทั้งหมดเข้ากับ Arduino
ส่วนใหญ่แล้ว นี่เป็นเพียงขั้นตอน "ทำตามแผนผัง" เพื่อตรวจสอบแผนผังด้านบนหรือดาวน์โหลดและพิมพ์!
ขั้นตอนที่ 2: การเตรียม Buzzer Part
หากคุณเคยใช้ Buzzer กับ Arduino มาก่อน คุณจะรู้ว่าถ้าเราเชื่อมต่อโดยตรงกับ Arduino มันจะไม่ดังพอ ดังนั้นเราจึงต้องการเครื่องขยายเสียง ในการสร้างแอมพลิฟายเออร์ เราจำเป็นต้องมีทรานซิสเตอร์ NPN (โดยพื้นฐานแล้ว NPN ใดๆ ก็ใช้ได้ ฉันใช้ S9013 เพราะได้มาจากโปรเจ็กต์เก่า) และตัวต้านทานบางตัวเพื่อจำกัดกระแส ในการเริ่มต้น ให้ระบุตัวสะสม ตัวส่ง และฐานของทรานซิสเตอร์ก่อน googling เล็กน้อยในแผ่นข้อมูลจะใช้ได้สำหรับสิ่งนี้ จากนั้นประสานตัวสะสมของทรานซิสเตอร์เข้ากับขั้วลบของออด ที่ขั้วบวกของออด เราแค่บัดกรีลวดหนึ่งเส้นเข้ากับมัน เพื่อที่เราจะสามารถบัดกรีมันกับ Arduino ได้ในภายหลัง หลังจากนี้ ประสานตัวต้านทาน 500R (หรือค่าตัวต้านทานที่คล้ายกัน) กับฐานของทรานซิสเตอร์และจากตัวต้านทาน บัดกรีลวดอีกชิ้นหนึ่งเพื่อใช้ในอนาคต ในที่สุด ประสานตัวต้านทาน 10R สองตัวในอนุกรมกับอีซีแอลของทรานซิสเตอร์ และเชื่อมต่อสายอื่นจากตัวต้านทาน
จริงๆ อ้างถึงแผนผัง
p/s: ฉันยังไม่ทราบวิธีเลือกตัวต้านทานสำหรับทรานซิสเตอร์ในขณะที่เขียนสิ่งนี้ ค่าที่ฉันใช้ถูกเลือกโดยสังเกตุ
ขั้นตอนที่ 3: การเตรียมแผงไฟ LED
เสียบไฟ LED และตัวต้านทานเข้ากับบอร์ดสร้างต้นแบบแล้วประสาน แค่นั้นแหละ. ทำตามแผนผัง ในกรณีที่คุณสนใจระยะห่างที่ฉันใช้ แยก 3 รูสำหรับแต่ละคอลัมน์ และแยกสองรูสำหรับแต่ละแถว (ดูภาพ) และไฟแสดงสถานะ LED? ฉันเสียบมันแบบสุ่ม
หลังจากบัดกรี LED และตัวต้านทานเข้ากับบอร์ดแล้ว ให้เชื่อมต่อขั้วบวกทั้งหมดของ LED เข้าด้วยกัน จากนั้นบัดกรีสายไฟทีละตัวกับตัวต้านทานแต่ละตัวที่ขั้วลบของ LED เพื่อให้เราสามารถประสานพวกมันกับ Arduino ได้ในภายหลัง
หมายเหตุ: คุณอาจสับสนในขั้นตอนนี้ จำไว้ว่าแทนที่จะเชื่อมต่อกราวด์ทั้งหมดเข้าด้วยกัน เราเชื่อมต่อขั้วบวกทั้งหมดเข้าด้วยกันและขั้วลบกับพินแต่ละตัวบน Arduino ดังนั้นเราจึงใช้พิน Arduino GPIO เป็นกราวด์ไม่ใช่ Vcc ในกรณีที่คุณเสียบย้อนกลับโดยไม่ได้ตั้งใจ ไม่ต้องกังวล คุณสามารถแก้ไขค่า HIGH เป็น LOW และ LOW เป็น HIGH ได้ในฟังก์ชัน ledcontrol
ขั้นตอนที่ 4: การเตรียมสวิตช์ (ปุ่มกดจริง)
สำหรับสวิตช์ (ฉันจะเรียกมันว่าสวิตช์เพราะฉันใช้ไมโครสวิตช์ แต่คุณรู้ว่ามันเป็นปุ่มกด) เราจำเป็นต้องมีตัวต้านทานแบบดึงลง 4k7 และแน่นอนว่าสวิตช์นั้นเอง อ้อ อย่าลืมเตรียมสายไฟด้วยล่ะ เริ่มต้นด้วยการบัดกรีตัวต้านทานและชิ้นส่วนของลวดเข้ากับกราวด์ทั่วไป (COM) ของไมโครสวิตช์ จากนั้นบัดกรีลวดอีกชิ้นหนึ่งเข้ากับไมโครสวิตช์ที่เปิดตามปกติ (NO) สุดท้าย ต่อลวดอีกเส้นเข้ากับตัวต้านทาน ยึดด้วยกาวร้อน
มุมความรู้: ทำไมเราต้องมีตัวต้านทานแบบดึงลง?
"หากคุณถอดพิน I/O ดิจิทัลออกจากทุกอย่าง ไฟ LED อาจกะพริบผิดปกติ เนื่องจากอินพุต "ลอย" นั่นคือจะส่งกลับค่า HIGH หรือ LOW แบบสุ่ม นั่นเป็นสาเหตุที่คุณต้องการดึงขึ้นหรือ ตัวต้านทานแบบดึงลงในวงจร" -- ที่มา: เว็บไซต์ Arduino
ขั้นตอนที่ 5: เตรียม LED Strip
แถบ LED ใช้สำหรับโคมไฟข้างเตียง ซึ่งเป็นอุปกรณ์เสริม เพียงเชื่อมต่อแถบ LED และสวิตช์สไลด์เข้าด้วยกันเป็นชุด ไม่มีอะไรพิเศษ
ขั้นตอนที่ 6: การเตรียมเซ็นเซอร์ความจุ
โอเค ตามรูปเลยครับ โดยพื้นฐานแล้วเราจะติดลวดเข้ากับแผ่นอลูมิเนียมฟอยล์ชิ้นเล็กๆ (เนื่องจากฟอยล์อลูมิเนียมไม่สามารถบัดกรีได้) จากนั้นติดเทปบนแผ่นยึดชิ้นเล็กๆ โปรดอย่าลืมว่าอย่าติดเทปอลูมิเนียมฟอยล์จนหมด ปล่อยให้บางส่วนสัมผัสโดยตรง
ขั้นตอนที่ 7: การเตรียมพาวเวอร์ซัพพลาย
เนื่องจากฉันใช้แบตเตอรี่ Li-on เป็นแหล่งจ่ายไฟ ฉันจึงต้องการโมดูล TP4056 สำหรับการชาร์จและการป้องกัน และตัวแปลงบูสต์เพื่อแปลงแรงดันไฟฟ้าเป็น 9v หากคุณตัดสินใจใช้อะแดปเตอร์ติดผนัง 9V คุณอาจต้องใช้แจ็ค DC หรือเพียงแค่เชื่อมต่อโดยตรง โปรดทราบว่าค่าตัวต้านทานสำหรับแอมพลิฟายเออร์นั้นออกแบบมาสำหรับ 9V และหากคุณต้องการใช้แรงดันไฟฟ้าอื่น คุณอาจต้องเปลี่ยนตัวต้านทาน
ขั้นตอนที่ 8: เชื่อมต่อเข้ากับ Arduino
ทำตามแผน! ทำตามแผน! ทำตามแผน!
อย่าเสียบหมุดผิด มิฉะนั้นจะมีสิ่งแปลกปลอม
ขั้นตอนที่ 9: สิ่งที่แนบมา
ขนาดการออกแบบของฉันคือ 6.5 ซม.* 6.5 ซม.*8 ซม. จึงค่อนข้างเทอะทะ ประกอบด้วยหน้าต่างด้านหน้าสำหรับจอแสดงผล LED และหน้าต่างด้านบนสำหรับโคมไฟข้างเตียง สำหรับการออกแบบของฉัน โปรดดูรูปภาพ
ขั้นตอนที่ 10: เวลาการเขียนโปรแกรม
ดาวน์โหลดสเก็ตช์ของฉันด้านล่างและอัปโหลดไปยัง Arduino ของคุณ หากคุณไม่ทราบวิธีการทำสิ่งนี้ อย่ากังวลที่จะทำโปรเจ็กต์นี้! ไม่ล้อเล่น นี่คือบทช่วยสอนที่ดี: อัปโหลดภาพร่างไปยัง arduino
จากนั้นเปิดมอนิเตอร์แบบอนุกรมและคุณควรเห็นเวลาปัจจุบัน หากต้องการตั้งเวลา ให้ทำดังนี้
ในการตั้งชั่วโมง: h, XX -- โดยที่ xx คือชั่วโมงปัจจุบัน
ในการตั้งนาที: min, XX -- xx คือนาทีปัจจุบัน
วิธีตั้งค่าวินาที: s, XX
การตั้งวันที่: d, XX
ในการตั้งเดือน: จันทร์ XX
เมื่อดำเนินการตามความคิดเห็นข้างต้น ความคิดเห็นดังกล่าวควรคืนค่าที่คุณเพิ่งตั้งไว้ (ตัวอย่างเช่น เมื่อคุณตั้งค่าชั่วโมงด้วย h, 15 ควรคืนค่า Hour: 15 ในมอนิเตอร์แบบอนุกรม
สำหรับเซนเซอร์ความจุ คุณอาจต้องปรับเทียบก่อนจึงจะทำงานได้ ในการดำเนินการนี้ ให้กดไมโครสวิตช์สองครั้ง แล้วดูที่จอภาพแบบอนุกรม มันควรจะออกพวงของตัวเลข ตอนนี้วางนิ้วของคุณบนเซ็นเซอร์ความจุ และดู จดช่วงของตัวเลข ถัดไป แก้ไขตัวแปร "captrigger" สมมุติว่าคุณได้ 20-30 เมื่อกด แล้วตั้งค่า captrigger เป็น 20
ร่างนี้ใช้ไลบรารี ADCTouch ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งไว้
ขั้นตอนที่ 11: กลไกการแก้ไข
ระยะเวลาสำหรับกลไกการแก้ไขในโค้ดของฉันถูกกำหนดเป็นช่วงเวลาที่ถูกต้องสำหรับฉัน หากเวลายังไม่ถูกต้องคุณต้องเปลี่ยนค่าของตัวแปร "corrdur"
corrdur ตอนนี้มีค่าเริ่มต้นเป็น 0 ในการอัปเดตล่าสุด
ค่าของ corrdur หมายความว่าต้องใช้เวลากี่มิลลิวินาทีในการทำให้ช้าลงหนึ่งวินาที
หากต้องการทราบค่าของ corrdur ให้ใช้สูตร:
2000/(y-x)/x)
โดยที่ x=ระยะเวลาจริงของเวลาที่ผ่านไป และ y=ระยะเวลาที่ผ่านไปของนาฬิกา ทั้งเป็นวินาที
ในการหาค่าของ x และ y คุณต้องทำการทดลองเล็กน้อย
ตั้งเวลาของนาฬิกาเป็นเวลาจริงและบันทึกเวลาเริ่มต้น (เวลาเริ่มต้นจริงและเวลาเริ่มต้นของนาฬิกาควรเหมือนกัน) หลังจากนั้นสักครู่ (สองสามชั่วโมง) บันทึกเวลาจริงสุดท้ายและนาฬิกาครั้งสุดท้าย
x=เวลาเริ่มต้นจริงสุดท้าย-เวลาเริ่มต้น และ y=เวลาเริ่มต้นครั้งสุดท้าย-นาฬิกาครั้งสุดท้าย
จากนั้นเปลี่ยนค่าของ corrdur ในโค้ดและอัปโหลดไปยัง Arduino อีกครั้ง
จากนั้นทำการทดสอบซ้ำและคราวนี้สูตรเปลี่ยนเป็น:
2000/((2/z)+(y-x/x))
โดยที่ x และ y เหมือนกับเมื่อก่อน ในขณะที่ z คือค่า corrdur ปัจจุบัน
อัปโหลดอีกครั้งและทำการทดสอบซ้ำแล้วซ้ำอีกจนกว่าจะแม่นยำเพียงพอสำหรับคุณ
ในกรณีที่นาฬิกาของคุณยังคงเร่งความเร็วแม้ว่า corrdur จะถูกตั้งค่าเป็น 0 (หมายถึงไม่มีกลไกแก้ไข) คุณต้องเปลี่ยนวินาที ++ เป็นวินาที - ในส่วนกลไกการแก้ไขของรหัส (ฉันแสดงความคิดเห็นไว้) ตั้งค่า corrdur เป็น 0 แล้วหาเลขที่ มิลลิวินาที ใช้เวลาในการเร่งหนึ่งวินาที
ขั้นตอนที่ 12: วิธีใช้ฟังก์ชันทั้งหมด
คุณสามารถเปลี่ยนโหมดได้โดยกดไมโครสวิตช์
ในโหมดแรกจะแสดงเวลา หากไฟแสดงสถานะกะพริบ 1 ครั้งต่อวินาที สัญญาณเตือนจะปิด หาก 2 ครั้งต่อวินาที นาฬิกาปลุกจะเปิดขึ้น คุณสามารถเลื่อนการปลุกเป็นเวลา 10 นาทีในโหมดแรกได้โดยการกดเซ็นเซอร์ความจุ
ในโหมดที่สองจะแสดงวันที่ กดเซ็นเซอร์ความจุไม่ทำอะไรเลย
ในโหมดที่สาม คุณสามารถตั้งเวลาได้ การกดเซ็นเซอร์ความจุจะเปิดตัวจับเวลาและคุณจะเห็นไฟแสดงสถานะเริ่มกะพริบ เซ็นเซอร์ความจุยังใช้เพื่อตั้งเวลาจับเวลา ช่วงของตัวจับเวลาคือ 1 นาทีถึง 59 นาที
ในโหมดที่สี่ คุณสามารถตั้งเวลาปลุกโดยใช้เซ็นเซอร์ความจุ
ในโหมดที่ห้า คุณสามารถตั้งเวลาปลุกโดยใช้เซ็นเซอร์ความจุ
ในโหมดที่หก การกดเซ็นเซอร์ความจุจะรีเซ็ตนาทีเป็น 30 และวินาทีเป็น 0 โดยไม่เปลี่ยนชั่วโมง หมายความว่าตราบใดที่นาฬิกาของคุณไม่เคลื่อนที่เกิน 30 นาที คุณสามารถปรับเทียบใหม่ได้โดยใช้โหมดนี้
โหมดที่เจ็ดคือโหมดไม่ทำอะไรเลยในกรณีที่เซ็นเซอร์ความจุผิดพลาดเมื่อชาร์จ
อ้อ ถ้าต้องการปิดนาฬิกาปลุก ก็กดไมโครสวิตช์ (อัปเดตล่าสุดเพื่อรวม ALARM SNOOZE)
แล้วการอ่านนาฬิกาล่ะ? มันเป็นเรื่องง่าย! การอ่านนาฬิกาไบนารี -- Wikihow คุณอาจรู้สึกแปลก ๆ ในตอนแรก แต่คุณจะชินกับมัน!
ขั้นตอนที่ 13: บทสรุป
เหตุผลที่ฉันเริ่มโครงการนี้ ตอนแรกมันเป็นเพราะฉันมีนาฬิกาดิจิตอลเก่าวางอยู่รอบๆ และฉันต้องการเปลี่ยนมันเป็นนาฬิกาปลุก เสียดายนาฬิกาเรือนเก่าพัง ฉันก็เลยคิดว่าทำไมไม่สร้างมันขึ้นมาโดยใช้ Arduino? ด้วยการค้นหาโดย Google เล็กน้อย ฉันพบโปรเจ็กต์นาฬิกาไบนารีนี้ที่ไม่มี RTC ในคำสั่ง Cello62 อย่างไรก็ตาม มันไม่มีฟีเจอร์นาฬิกาปลุกที่ฉันต้องการ ดังนั้นฉันจึงนำโค้ดมาแก้ไขด้วยตัวเอง และโครงการนี้ถือกำเนิดขึ้น นอกจากนี้ เมื่อเร็ว ๆ นี้ ฉันเห็นการแข่งขันนาฬิกาทำงานแบบสอนได้ซึ่งทำให้ฉันมีแรงจูงใจในการทำเช่นนี้มากขึ้น อย่างไรก็ตาม นี่เป็นโครงการแรกของฉันที่ใช้ Arduino ดังนั้นจึงมีการปรับปรุงที่เป็นไปได้มากมาย
การปรับปรุงในอนาคต:
1) ใช้RTC
2) ตั้งปลุกหรือเวลาหรือตัวจับเวลาแบบไร้สาย!
3) คุณสมบัติใดก็ตามที่ฉันนึกถึง
ขั้นตอนที่ 14: อัปเดต: หลังจากใช้งานหนึ่งสัปดาห์
นอกเหนือจากปัญหาที่เห็นได้ชัด - เวลาล่องลอย ต่อไปที่ฉันจะพูดคือการใช้พลังงาน ก่อนอื่นฉันเพิ่มแรงดันไฟฟ้าเป็น 9v ซึ่งจะถูกลดระดับลงโดยตัวควบคุมเชิงเส้นใน Arduino ตัวควบคุมเชิงเส้นไม่มีประสิทธิภาพมาก นาฬิกามีอายุเพียงวันเดียวเท่านั้น นั่นหมายความว่าฉันต้องชาร์จมันทุกวัน นั่นไม่ใช่ข้อตกลงที่ใหญ่ที่สุด จนกว่าคุณจะรู้ว่าระบบทั้งหมดมีประสิทธิภาพเพียง 50% เท่านั้น เนื่องจากแบตเตอรี่ของฉันมีความจุ 2000mAh ฉันจึงสามารถคำนวณพลังงานที่เสียไปได้ทุกวัน
พลังงานที่เสียไป=(7.4Wh*10%)+(7.4Wh*90%*50%)=4.07Whต่อวัน
นั่นคือ 1.486kWh ต่อปี! ที่ใช้ต้มได้ เอ่อ 283g ของน้ำ (จาก 25 C ถึง 100 C)? แต่อย่างไรก็ตาม ฉันจะปรับปรุงประสิทธิภาพของนาฬิกา วิธีการทำเช่นนี้คืออย่าใช้ตัวควบคุมเชิงเส้นเลย นั่นหมายความว่าเราต้องปรับบูสต์คอนเวอร์เตอร์เพื่อเอาท์พุต 5V โดยตรงไปยังพิน 5V บน Arduino ต่อไป เพื่อลดการใช้พลังงานให้เหลือน้อยที่สุด ฉันต้องถอด LED สองตัวบนบอร์ดออก (พิน 13 และกำลังไฟ) เนื่องจากจะเสีย 0.95Wh ต่อวัน น่าเสียดายที่ฉันเป็นมือใหม่ในการบัดกรี SMD ดังนั้นวิธีเดียวที่ฉันจะทำสิ่งนี้ได้คือการตัดรางบนกระดาน หลังจากนี้ฉันต้องถอดตัวต้านทานอีซีแอลที่ออดและโคมไฟข้างเตียงออก (แถบ LED ไม่ทำงานที่ 5V) แต่นั่นหมายความว่าคุณต้องละทิ้งคุณสมบัติที่น่าทึ่งนั้นหรือไม่? เลขที่! คุณมีสองทางเลือกที่นี่: ใช้ไดโอด LED 5 มม. ปกติ หรือใช้แถบ LED 5V แต่สำหรับฉัน ฉันรู้สึกเหนื่อยกับการทำโปรเจ็กต์นี้ตลอดทั้งสัปดาห์ที่แล้ว ดังนั้นฉันจึงตัดสินใจยกเลิกฟีเจอร์นี้ อย่างไรก็ตาม เดิมทีฉันใช้สวิตช์สำหรับคุณสมบัติแสงเพื่อเปิดหรือปิดแผงนาฬิกาเพื่อประหยัดพลังงานเพิ่มเติม แต่ไฟ LED จะกะพริบเมื่อฉันปิด ข้อผิดพลาดกลายเป็นคุณสมบัติ? ไม่รู้ครับ (ใครรู้ช่วยบอกผมที)
เมื่อแก้ไขเสร็จแล้ว นาฬิกาก็อยู่ได้นานกว่า 2 วัน!
ต่อไปฉันมีปัญหาน้อยกว่ากับนาฬิกา ในระหว่างการชาร์จ เซ็นเซอร์ความจุจะบ้า ดังนั้นฉันจึงเพิ่มโหมดอื่นที่ไม่ทำอะไรเลย
สำหรับเวลาที่เลื่อนลอย เนื่องจากไม่สะดวกที่จะเสียบปลั๊กคอมพิวเตอร์ทุกวันเพื่อรีเซ็ต ฉันได้เพิ่มโหมดอื่นที่จะตั้งค่านาทีเป็น 30 และวินาทีเป็น 0 นั่นหมายความว่าคุณสามารถรีเซ็ตได้ในเวลาครึ่งชั่วโมงใด ๆ !
แนะนำ:
Micro Binary Clock: 10 ขั้นตอน (พร้อมรูปภาพ)
Micro Binary Clock: ก่อนหน้านี้ได้สร้าง Instructable (Binary DVM) ซึ่งใช้ประโยชน์จากพื้นที่แสดงผลที่ จำกัด โดยใช้ไบนารี มันเป็นเพียงขั้นตอนเล็ก ๆ ที่เคยสร้างโมดูลรหัสหลักสำหรับการแปลงทศนิยมเป็นไบนารีเพื่อสร้างนาฬิกาไบนารี
True Binary Clock พร้อม NTP Sync: 4 ขั้นตอน
นาฬิกาไบนารีจริงพร้อมการซิงค์ NTP: นาฬิกาไบนารีจริงแสดงเวลาของวันเป็นผลรวมของเศษส่วนไบนารีของเต็มวัน เมื่อเทียบกับ "นาฬิกาไบนารี" ที่แสดงเวลาเป็นตัวเลขทศนิยมที่เข้ารหัสแบบไบนารีซึ่งสอดคล้องกับชั่วโมง/นาที/วินาที ประเพณี
Binary Clock V1.0: 5 ขั้นตอน
Binary Clock V1.0: ทุกคนชอบนาฬิกาไบนารี โดยเฉพาะผู้ผลิตเนิร์ดอย่างฉัน ในคำแนะนำนี้ ฉันจะแสดงให้คุณเห็นถึงวิธีสร้างนาฬิกาไบนารีของคุณเองโดยใช้โมดูลแบบออฟไลน์และแบบ Perfboard ฉันไม่พอใจกับการออกแบบไบนารีสำเร็จรูป c
Arduino Binary Clock - พิมพ์ 3 มิติ: 5 ขั้นตอน (พร้อมรูปภาพ)
Arduino Binary Clock - 3D Printed: ฉันได้ดูนาฬิกาไบนารีสำหรับโต๊ะทำงานของฉันมาระยะหนึ่งแล้ว แต่ก็ค่อนข้างแพงและ / หรือไม่มีคุณสมบัติมากมาย ดังนั้นฉันจึงตัดสินใจว่าจะทำแทน จุดหนึ่งที่ต้องพิจารณาเมื่อทำนาฬิกา Arduino / Atmega328
LED Binary Clock: 6 ขั้นตอน (พร้อมรูปภาพ)
LED Binary Clock: นี่เป็นรุ่นที่สองของนาฬิกาไบนารี LED ที่ใช้ PIC ของฉัน เวอร์ชันดั้งเดิมเป็นโปรเจ็กต์ PIC แรกที่ฉันพยายาม ใช้ PIC16F84A เพื่อทำทั้งการบอกเวลาและควบคุมเมทริกซ์การแสดงผล น่าเสียดายที่ไม่มีเวลาเพียงพอและ