สารบัญ:
วีดีโอ: นาฬิกาจับเวลา Arduino ที่ใช้งานง่าย: 4 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
ค้นหาเว็บสำหรับนาฬิกาจับเวลา Arduino คุณอาจจะเพิ่งทำถ้าคุณอยู่ที่นี่ จากประสบการณ์ส่วนตัว ฉันสามารถบอกคุณได้ว่านาฬิกาจับเวลาบนอินเทอร์เน็ตอาจซับซ้อนเกินไป (ในโค้ด สำหรับผู้เริ่มต้น) หรือง่ายเกินไป และไม่สามารถใช้งานได้จริง เช่นเดียวกับนาฬิกาที่นับวินาทีโดยไม่ต้องรีเซ็ต
คุณก็คิดเช่นกันใช่มั้ย เดาสิว่า. ฉันทำได้แล้ว และยิ่งไปกว่านั้น ฉันรับข้อมูลจากฟังก์ชัน millis() โดยตรง ซึ่งเป็นตัวเลขที่ไม่มีที่สิ้นสุด (จนถึง 49 วันหรืออะไรก็ตาม) ส่วนที่ดีที่สุด? เป็นแค่บรรทัดเดียว
การรีเซ็ตเป็นส่วนที่ยากของนาฬิกาจับเวลา สำหรับโปรแกรมเมอร์ระดับกลาง หากคุณยังไม่ได้ทำ ให้ลองทำด้วยตัวเองโดยใช้วินาที นาที และชั่วโมงร่วมกัน คุณจะได้สิ่งที่ฉันพูดถึง
สำหรับผู้เริ่มต้น อ่านต่อไปและเพลิดเพลินไปกับความอัจฉริยะในจิตใจของฉัน
แค่ล้อเล่น แต่วิธีแก้ปัญหาที่ฉันคิดค่อนข้างเรียบร้อย นี่คือสิ่งที่:
ขั้นตอนที่ 1: การแก้ปัญหา
ดังนั้นปัญหากำลังรีเซ็ต สิ่งที่เราต้องการคือรอบของตัวเลขที่ต่อเนื่องและซ้ำซาก จากผลลัพธ์ที่ไม่รู้จบของตัวเลขต่อเนื่อง (มิลลิวินาที) - โดยทั่วไปแล้วจะนับมิลลิวินาที หรือที่จริงแล้วคือ 1.024 มิลลิวินาที แต่อะไรก็ตาม)
สิ่งแรกที่นึกถึงคือการใช้ความแตกต่าง เช่น time1 -time2 และ delay ลืมมันซะ. ต้องใช้โค้ดอย่างน้อย 6 บรรทัด และคำสั่ง if เพื่อบูต
นี่คือวิธีการทำ เรามีขีดจำกัด (59) เราต้องการให้ทุกอย่างตั้งแต่ 0 ถึง 59 ซ้ำแล้วซ้ำอีก ยังไง?
จะเกิดอะไรขึ้นถ้า… เราเอาเศษที่เหลือ… ของฟังก์ชันมิลลิวินาทีหารด้วย 59…. บิงโก!
ดังนั้นควรเป็นดังนี้:
(60 [เป็นค่าเริ่มต้นเพราะขีดจำกัดคือ 59] + millis() / 1000 [1,000 มิลลิวินาทีเป็นวินาที]) % 60
ตกลง เล็มมาอธิบาย (%) หรือโมดูลัส ก็คือตัวดำเนินการอย่าง (+) ที่หาเศษเหลือ ชอบ 9 % 2 = 1
ดังนั้น:
- ส่วนที่เหลือของ (60 + 0) % 60 = 0
- ส่วนที่เหลือของ (60 + 1) % 60 =1
- ส่วนที่เหลือ (60 + 58) % 60 = 58
- ส่วนที่เหลือ (60 + 59) % 60 = 59
- ส่วนที่เหลือ (60 + 60) % 60 = 60
- ส่วนที่เหลือ (60 + 61) % 60 = 1
ดู!
ตอนนี้สำหรับชิ้นส่วน
ขั้นตอนที่ 2: ชิ้นส่วน
ไม่มากเลย
- Arduino ใด ๆ
-
จอแสดงผลใดๆ (ฉันใช้ OLED 0.96 แต่คุณสามารถใช้สิ่งที่คุณมีได้ เพียงตรวจสอบให้แน่ใจว่าได้ใส่ตัวแปรที่เหมาะสมลงในฟังก์ชันการแสดงผลของจอแสดงผลของคุณ)
แค่นั้นแหละ.
ขั้นตอนที่ 3: รหัส
เอาล่ะ มีความคิดเห็นค่อนข้างชัดเจน ดังนั้นจึงไม่น่าจะมีปัญหาอะไร ไลบรารีและการเริ่มต้นสำหรับ OLED 0.96 อยู่ในรหัส แทนที่ด้วยจอแสดงผลของคุณเองถ้ามันแตกต่างกัน
// 0.96 ไลบรารี OLED
#รวม
#รวม
#รวม
#รวม
// 0.96 OLED Init
#define OLED_RESET 4
Adafruit_SSD1306 จอแสดงผล (OLED_RESET);
int วินาที;
int นาที;
ชั่วโมง int;
การตั้งค่าเป็นโมฆะ () {
// OLED Init. ขนาด 0.96 เพิ่มเติม
display.begin(SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay(); display.setTextSize(2); display.setTextColor(สีขาว); }
วงเป็นโมฆะ () {
วินาที = (60 + มิลลิวินาที () / 1,000) % 60;
นาที = (60 + มิลลิวินาที () / 60000) % 60; ชั่วโมง = (25 + มิลลิวินาที () / 36000000) % 25;
display.clearDisplay();
display.setCursor(0, 22); // พิมพ์จำนวนชั่วโมงตั้งแต่รีเซ็ต display.print(hours); display.print("h:");
// พิมพ์จำนวน miutes ตั้งแต่รีเซ็ต
display.print(นาที);
display.print("ม:");
// พิมพ์จำนวนวินาทีตั้งแต่รีเซ็ต display.print(วินาที); display.print("s");
display.setCursor(0, 0);
display.print("นาฬิกาจับเวลา"); display.drawLine(0, 18, 128, 18, สีขาว); display.display();
}
ขั้นตอนที่ 4: ในขั้นตอนสุดท้าย…
แค่นั้นแหละ! ตอนนี้ไปทำสิ่งที่คุณต้องการกับมัน หมดเวลาไข่หรือครอบครองพื้นที่ใกล้เคียงของคุณ
ไชโย อรชุน
แนะนำ:
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: 5 ขั้นตอน
การออกแบบเกมในการสะบัดใน 5 ขั้นตอน: การตวัดเป็นวิธีง่ายๆ ในการสร้างเกม โดยเฉพาะอย่างยิ่งเกมปริศนา นิยายภาพ หรือเกมผจญภัย
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
นาฬิกาจับเวลา Arduino โดยใช้ I2C LCD: 5 ขั้นตอน
Arduino Stopwatch โดยใช้ I2C LCD: ในโครงการนี้ ฉันจะสอนให้คุณใช้จอ LCD และ Arduino เป็นนาฬิกาจับเวลาแบบโต้ตอบ เมื่อโปรเจ็กต์ของคุณเสร็จสิ้นด้วยรหัสที่ให้มา โค้ดดังกล่าวควรมีลักษณะเหมือนรูปภาพด้านบน ไปที่ขั้นตอนถัดไปเพื่อเรียนรู้ว่าจะเริ่มต้นจากตรงไหน
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino
VHDL นาฬิกาจับเวลา: 8 ขั้นตอน (พร้อมรูปภาพ)
VHDL Stopwatch: นี่คือการสอนเกี่ยวกับวิธีการสร้างนาฬิกาจับเวลาโดยใช้ VHDL และแผงวงจร FPGA เช่น บอร์ด Basy3 Atrix-7 นาฬิกาจับเวลาสามารถนับได้ตั้งแต่ 00.00 วินาที ถึง 99.99 วินาที มันใช้สองปุ่ม ปุ่มหนึ่งสำหรับปุ่มเริ่ม/หยุด และอีกปุ่มสำหรับ