Arduino Mario Clock: 3 ขั้นตอน

Arduino Mario Clock: 3 ขั้นตอน

สารบัญ:

Anonim

มันเป็นนาฬิกาปลุกตั้งโต๊ะดนตรีที่มีธีมของเกมมาริโอที่รู้จักกันดี จริงๆแล้วฉันชอบที่จะตื่นขึ้นมาด้วยธีมมาริโอแทนที่จะเป็นมือถือของฉัน นอกจากนี้ไฟ LED (หลอดสี) ยังทำให้กะพริบสวยงามยิ่งขึ้น

คุณสมบัติ:

- การแสดงเวลา, วันที่, อุณหภูมิ

- ภาพและเพลงของมาริโอในธีมเริ่มต้นและเวลาปลุก

- ปรับเวลาวันที่ปลุก

ชิ้นส่วนที่ใช้:

- 1x Arduino ProMini 5v

- 1x Nokia 5110 LCD

- 1x โมดูล DS1307 (นาฬิกาเรียลไทม์)

- ลำโพง 1x / Buzzer

- เซ็นเซอร์อุณหภูมิ DS18b20 1x

- 1x กระดานอิเล็กทรอนิกส์

- 4x LED (สีที่ต่างกัน)

- ปุ่มกด 4x

- ตัวต้านทาน 4x 220 (สำหรับ LED)

- ตัวต้านทาน 5x 1K (4x สำหรับปุ่ม, 1x สำหรับเซ็นเซอร์อุณหภูมิ)

- 1x แท่งกาวร้อน (หลอด) ซึ่งตัดเป็น 4 ชิ้น 2x6 ซม. และ 2x8 ซม

- แหวนโลหะและกระบอกสูบ 8x (ฉันใช้ลูกปัดเฟอร์ไรต์ที่กู้จากเครื่องพิมพ์เก่าของฉัน)

- 1x กล่องพลาสติก

- แบตเตอรี่ขนาดเล็ก 5x หรือ 4x AA แบตเตอรี่

- เครื่องมือ: ปืนกาวร้อนหัวแร้งคีมสายไฟบาง …

วัสดุ:

ขั้นตอนที่ 1: สร้างกล่องนาฬิกาตั้งโต๊ะ

หากคุณต้องการที่จะใช้มันเป็นนาฬิกาตั้งโต๊ะจริงเพื่อหากล่องสวย ฉันใช้หัวแร้งละลายกล่องและทำให้เป็นรูสำหรับปุ่มกดและจอแอลซีดี

ขั้นตอนที่ 2: สร้างวงจร

ติดตั้งปุ่มกดและตัวต้านทานบนบอร์ด ใส่บอร์ดในกล่องด้วยกาวร้อน เชื่อมต่อไฟ LED ใต้หลอดกาว ใช้เหล็กประสานเพื่อสร้างรูโพรบภายในท่อ ติดตั้งชิ้นส่วนเช่นเซ็นเซอร์อุณหภูมิ rtc แบตเตอรี่และอื่น ๆ ภายในกล่องด้วยกาวร้อน

ขั้นตอนที่ 3: รหัส Arduino

ฉันสร้างรูปสองสามภาพ (หน้าจอสแปลชมาริโอ, กระโดดมาริโอ, ไอคอนอุณหภูมิ, ไอคอนเตือนภัย) ด้วย MSPaint ซึ่งสามารถแปลงเป็นข้อมูลไบนารีผ่าน LCDAssistant ติดนิสิตทุกตัว

ฉันคิดว่ารหัสนั้นเรียบง่ายและเรียบง่าย แต่คำแนะนำของรหัสต่อไปนี้มีประโยชน์

ชั้นเรียน:

- NokiaFa5110: คลาสไดรเวอร์ Nokia LCD

- ประโยชน์: รูปภาพบิตแมป

- DS1307RTC, เวลา: ใช้สำหรับโมดูลเวลาวันที่

- Wire, OneWire, DallasTemperature: ใช้สำหรับเซ็นเซอร์อุณหภูมิ

- EEPROM, avr / pgmspace: เพื่อใช้หน่วยความจำ EEPROM

- Narcoleptic: คลาสที่ใช้งานง่ายเพื่อลดการใช้แบตเตอรี่ผ่านความล่าช้า

คำแนะนำ:

- ตัวแปรตัวพิมพ์ใหญ่และตัวพิมพ์ใหญ่ที่ใช้เพื่อจัดการเมนูและสถานะโปรแกรมที่แตกต่างกัน

- หน่วยความจำ EEPROM ใช้เพื่อบันทึกตัวแปรวันที่และเวลาที่ปรับแล้ว

- ฉันพยายามรีเฟรช LCD บางส่วนเมื่อเวลาวันที่หรืออุณหภูมิเปลี่ยนแปลง จอแอลซีดีเป็นส่วนที่ใช้แบตเตอรี่มากที่สุด

- คลาส Narcoleptic ทำให้ง่ายต่อการลดการใช้งานแบตเตอรี่บอร์ด Arduino เมื่อไม่มีงานทำ (ล่าช้า)