Სარჩევი:

კიდევ ერთი საათი: 4 ნაბიჯი
კიდევ ერთი საათი: 4 ნაბიჯი

ვიდეო: კიდევ ერთი საათი: 4 ნაბიჯი

ვიდეო: კიდევ ერთი საათი: 4 ნაბიჯი
ვიდეო: ზუკა ხუციშვილი, ლუკა და გიო ჭოხონელიძეები -„ლოთიანი“/ მიმღერე 2024, ივლისი
Anonim
კიდევ ერთი საათი
კიდევ ერთი საათი

როგორც ჩანს ჩემი წინა ატვირთვებიდან, მე მივიღე 7 სეგმენტის ჩვენების დაფა ძველი მასით აღჭურვილობისგან.

ჩემმა წინა მცდელობამ გამოიყენა Arduino რეალურ დროში საათის მოდულით.

ეს ინსტრუქცია იყენებს ESP8266 D1 Mini, რომელიც დაკავშირებულია NTP სერვერთან!

კოდი დაფუძნებულია ESP8266WiFi ბიბლიოთეკის მაგალითზე.

მე არ ვაპირებ დეტალურად შევიდე 7 სეგმენტის ჩვენების გაყვანილობასთან დაკავშირებით, რადგან ქსელში ათობით მაგალითია. მე მაქვს 2 დაფა, ვიყენებ MAX7219 დეკოდერის დრაივერის ჩიპს, ეს მხოლოდ 3 ქინძისთავს მოითხოვს 8 x 7 სეგმენტის ეკრანის გასაკონტროლებლად.

მე ასევე მსურდა თარიღის ჩვენება, ამიტომ საჭირო იყო კიდევ 3 ქინძისთავი!

კიდევ 7 უპუტი მჭირდებოდა დღის საჩვენებლად! გამომავალი ქინძისთავების ნაკლებობის თავიდან ასაცილებლად მე ავირჩიე Neo Pixel დისპლეი, 1 პინი, 7 გამომავალი!

ნაბიჯი 1: აპარატურა

აპარატურა
აპარატურა
აპარატურა
აპარატურა
აპარატურა
აპარატურა

ნაწილები საჭიროა

12 x 7 სეგმენტის ეკრანი (ჩემს შემთხვევაში მე გამიმართლა, რომ მქონდა რამოდენიმე ძველი მასის დაფა, რამაც გადაარჩინა საშინელი გაყვანილობა.

1 x ESP8266 D1 Mini ან ნებისმიერი ESP8266 7 ან მეტი ციფრული გამოსვლით

2 x MAX7129 (ისევ, მე გამიმართლა, რომ მქონდა მასით აღჭურვილობის ჩვენების დაფები)

1 x სწორი NeoPixel ეკრანი

2 x დონის ცვლადი

1 x 5v კვების ბლოკი

ნაბიჯი 2: დღის ჩვენება

DAY ჩვენება
DAY ჩვენება
DAY ჩვენება
DAY ჩვენება

ამისათვის მე გამოვიყენე ძველი საკრედიტო ბარათის ნაწილი ბაზისთვის, ზოგიერთი სქელი ბარათი (ჩემს შემთხვევაში 300 გსმ ფოტო ქაღალდი) და ზოგიერთი ორმხრივი სამონტაჟო ლენტი.

მისი მხოლოდ 2 ზოლი ფირზეა დაჭრილი ხელნაკეთი დანით. მანძილი არის მანძილი LED- ებს შორის NeoPixel დაფაზე.

ბარათის თხელი ზოლები გამოიყენება არხის შესაქმნელად ყოველდღე.

დღის სახელები იბეჭდება გამჭვირვალე ფირზე Dymo ეტიკეტის მწარმოებელთან ერთად.

ნაბიჯი 3: დაკავშირება და პროგრამული უზრუნველყოფა

ESP8266 პროდუქციის ასორტიმენტი შესანიშნავია ამის გამო

ა) ისინი ჭუჭყიანი იაფია

ბ) მათ სჭირდებათ ძალიან ცოტა გარე კომპონენტი

მე მჭირდებოდა 5 ვ დისპლეისთვის და 3 ვ ESP– სთვის, ასე რომ მე გამოვიყენე რამდენიმე დონის გადამრთველი 5 ვ დენის წყაროსთან.

MAX7219– ს სჭირდება მხოლოდ 3 ქინძისთავი 8 ეკრანის გასაკონტროლებლად, ეს არის 1 (Din), 12 (Load / CS) და 13 (საათი).

ისინი დაკავშირებულია დონის ცვლის საშუალებით.

კოდი ასეთია:

// შეყვანა: DIN pin, CLK pin, LOAD pin. ჩიპების რაოდენობაLedControl mydisplay = LedControl (3, 2, 1, 1)

LedControl datedisp = LedControl (7, 6, 5, 1);

ჩიპების რაოდენობა დადგენილია 1 -ით, რადგან მე 2 ეკრანს განვიხილავ როგორც ცალკეულ ელემენტებს, ვიდრე DOUT- ის გამოყენებას და მათ კასკადს.

NeoPixel უკავშირდება ციფრულ გამომავალს 4

#განსაზღვრეთ PIN 4

#განსაზღვრეთ NUMPIXELS 7 (იგნორირება 8 LED- დან 1)

არსებობს რამდენიმე #, რომელთაგან ყველა შეგიძლიათ იხილოთ GitHub– ზე.

საჭიროა როუტერის SSID და PASSWORD შეყვანა და NTP სერვერის არჩევა, (მე Google– ში უფასო NTP სერვერები დავარეგისტრირე).

ნაბიჯი 4: ჩართეთ ჩართვა

ჩართვისას NeoPixel- ის LED- ები ტალღდება, შემდეგ კი 7 სეგმენტის ეკრანი აჩვენებს ალტერნატიულ 'c' & '8' სანამ როუტერთან კავშირი არ მოხდება.

თუ ყველა სეგმენტი აჩვენებს კონტექსტს c8 ეს ნიშნავს რომ NTP სერვერთან კავშირი არ არის დამყარებული, გადატვირთვამ უნდა გადაჭრას ეს.

კავშირის დამყარების შემდეგ გამოჩნდება დრო და თარიღი, დღე აღინიშნება ლურჯი LED- ით.

გირჩევთ: