Სარჩევი:

PUBG თემა სიმღერა+ანიმაცია არდუინოსთან ერთად !: 13 ნაბიჯი (სურათებით)
PUBG თემა სიმღერა+ანიმაცია არდუინოსთან ერთად !: 13 ნაბიჯი (სურათებით)

ვიდეო: PUBG თემა სიმღერა+ანიმაცია არდუინოსთან ერთად !: 13 ნაბიჯი (სურათებით)

ვიდეო: PUBG თემა სიმღერა+ანიმაცია არდუინოსთან ერთად !: 13 ნაბიჯი (სურათებით)
ვიდეო: სბმ ანიმაციების ნაკრები ყველა ეპიზოდი (გადათარგმნა და გახმოვანება by ShotaVlogger) 2024, ნოემბერი
Anonim
Image
Image
ყველა ნაწილის შეგროვება
ყველა ნაწილის შეგროვება

გამარჯობა და კეთილი იყოს თქვენი მობრძანება ამ სახალისო სასწავლო ინსტრუქციაში! ვიმედოვნებ, რომ ყველანი კარგად ხართ და ჯანმრთელები ხართ. ეს პატარა, მაგრამ საოცარი პროექტი არის PUBG თემის სიმღერის დაკვრაზე და თუნდაც თამაშის ანიმაციების შექმნაზე არდუინოს გამოყენებით.

გამოყენებული კომპონენტები ძალიან ადვილად ხელმისაწვდომია და ძალიან ადვილად შეიკრიბება პურის დაფაზე. მე გაგიზიარებთ შენობის და კოდირების მთელ პროცესს ამ სასწავლო ინსტრუქციაში, ბოლომდე დადექით!

მე გირჩევთ უყუროთ ვიდეოს, რომ მიიღოთ იდეა პროექტის შესახებ:) თუ მოგეწონათ მაშინ მოიწონეთ და გააზიარეთ ვიდეო. განიხილეთ ჩემი არხის გამოწერა, თუ გსიამოვნებთ ჩემი აშენება. მადლობა!

ასე რომ, ყოველგვარი შეფერხების გარეშე, დავიწყოთ!

ნაბიჯი 1: შეაგროვეთ ყველა ნაწილი

ყველა ნაწილის შეგროვება
ყველა ნაწილის შეგროვება

მშენებლობა ძირითადად შედგება არდუინო ნანოსგან, რომელიც ამ პროექტის მთავარი ბირთვია. თქვენ შეგიძლიათ გამოიყენოთ Arduino– ს ნებისმიერი სხვა ვარიანტი, როგორიცაა პოპულარული Arduino Uno, Arduino Pro Mini, Arduino Mega და ა.შ. ანიმაციებისა და სურათების ჩვენების მიზნით, გადავწყვიტე გამოვიყენო 0.96 დიუმიანი OLED დისპლეი, რეზოლუციით 128 x 64 პიქსელით. ეს ეკრანი შეიძლება იყოს arduino– სთან ინტერფეისი I2C პროტოკოლით, რომელიც მოითხოვს მონაცემებს და საათს მხოლოდ ორ მავთულს, რითაც ამცირებს კავშირების რაოდენობას და გახდის პროექტს უფრო კომპაქტურს. PUBG თემის მელოდიის დაკვრისთვის გამოვიყენე 5V ზუზერი, რომლის პოზიტიური პინი დავუკავშირე არდუინოს ციფრულ პინ 6 -ს და მიწა მიდის არდუინოს მიწასთან.

ეს არის პროექტისათვის საჭირო ნაწილების სია:

  1. არდუინო ნანო (ან არდუინოს ნებისმიერი სხვა დაფა თქვენი არჩევანით)
  2. 0.96 ინჩი OLED ჩვენების მოდული
  3. 5V ზუზერი
  4. ჯუმბერის მავთულები
  5. პურის დაფა
  6. Arduino პროგრამირების კაბელი

ნაბიჯი 2: OLED ეკრანის დაკავშირება

OLED ეკრანის დაკავშირება
OLED ეკრანის დაკავშირება
OLED ეკრანის დაკავშირება
OLED ეკრანის დაკავშირება
OLED ეკრანის დაკავშირება
OLED ეკრანის დაკავშირება

სულ 4 კავშირია საჭირო იმისათვის, რომ OLED დისპლეი იყოს დაკავშირებული arduino– დან:

Vcc 5V არდუინო

არდუინოს გნდ გნდ

არდაინოს SDA A4

არდუინოს SCK A5

არდუინოს A4 და A5 ქინძისთავები ემსახურება ანალოგური შეყვანის მრავალ დანიშნულებას, ასევე I2C კომუნიკაციისთვის. აქ ჩვენ გამოვიყენეთ ქინძისთავები I2C პროტოკოლისთვის ჩვენების მოდულთან დასაკავშირებლად.

ამ პროექტში გამოყენებული ადაფრუტის ბიბლიოთეკის ბმული:

ნაბიჯი 3: ბუზერის დაკავშირება

ბუზერის დაკავშირება
ბუზერის დაკავშირება
ბუზერის დაკავშირება
ბუზერის დაკავშირება

5V ზუმერს აქვს დადებითი და უარყოფითი მიწოდების ტერმინალი.

Arduino– ს დადებითი pin D6 (ციფრული pin 6) (შეგიძლიათ გამოიყენოთ arduino– ს ნებისმიერი ციფრული პინი)

უარყოფითი pin Gnd of Arduino

ჩვენ ვაპირებთ შევქმნათ სასურველი ტონი ციფრულ პინზე D6, რომელზეც ზუზუნი დაუკრავს მელოდიას.

ნაბიჯი 4: ყველა აპარატურული კავშირი დასრულებულია

ყველა აპარატურული კავშირი დასრულებულია
ყველა აპარატურული კავშირი დასრულებულია
ყველა აპარატურული კავშირი დასრულებულია
ყველა აპარატურული კავშირი დასრულებულია

OLED ეკრანისა და ზუზერის ყველა საჭირო კავშირი დასრულებულია. ახლა მოდით გავაგრძელოთ პროექტის პროგრამირების ასპექტის გაგება.

ნაბიჯი 5: ბიბლიოთეკის ჩათვლით და ჩვენების პროტოკოლების ინიციალიზაცია

ბიბლიოთეკის ჩათვლით და ჩვენების პროტოკოლების ინიციალიზაცია
ბიბლიოთეკის ჩათვლით და ჩვენების პროტოკოლების ინიციალიზაცია

მთელი პროგრამა დაყოფილია 3 კომპონენტად:

  1. მთავარი პროგრამა მოიცავს ინიციალიზაციას და გამოსახულების ჩვენებისა და მელოდიის თანმიმდევრობას
  2. "pitches.h" ფაილი, რომელიც შედგება მუსიკალური ნოტების სიისა და მასთან დაკავშირებული სიხშირისგან
  3. "pictures.h" ფაილი, რომელიც შედგება გამოსახული გამოსახულების ბიტმაპებისაგან.

პროცესი, თუ როგორ უნდა გადავიყვანოთ სურათი ბიტმაპის მასივში OLED დისპლეისთვის, განხილულია უახლოეს ნაბიჯებში.

მე ასევე დავამატებ მთელ კოდს ამ ინსტრუქციასთან ერთად, რომ გამოიყენოთ:)

ნაბიჯი 6: თემატური სიმღერის მელოდია

მელოდიის თემა სიმღერა
მელოდიის თემა სიმღერა
მელოდიის თემა სიმღერა
მელოდიის თემა სიმღერა

მე ინტერნეტში ვეძებდი ძირითად ნოტებს, რომელიც შეიცავს PUBG თემის სიმღერას და შემდეგ დავამატე ისინი მელოდიის მასივს.

მნიშვნელოვანი დროის დახარჯვით მელოდიის თანმიმდევრობის დაკვრაზე და გამეორებაზე, მე შევქმენი დროის ხანგრძლივობის მასივი, რომელიც ეხება იმას, თუ რამდენ ხანს სჭირდება თითოეული ნოტის დაკვრა. მელოდიის მასივისა და ხანგრძლივობის მასივის კომბინაცია შეიცავს სრულ ინფორმაციას სიმღერის დასაკრავად.

ნაბიჯი 7: სიმღერის დაკვრა გაშვების დროს

სიმღერის დაკვრა გაშვების დროს
სიმღერის დაკვრა გაშვების დროს

სულ 63 ჩანაწერია, რომელსაც მე მელოდიის თანმიმდევრობის შესაქმნელად ვიყენებ. მარყუჟის for გამოყენებით და ნოტებისა და ხანგრძლივობის მასივის გამეორებით წინასწარ შეწყვეტილი თითოეულ ნოტს შორის, მთელი თანმიმდევრობა უკრავს ერთხელ, ვინაიდან კოდის ეს ნაჭერი დევს void setup- ში (). საინტერესოა, რომ ამ პროექტის არცერთი კოდი არ იყენებს არდუინოს კოდის ბათილ მარყუჟს (), რადგან მე ვაპირებ სურათების დაკვრას და ჩვენებას მხოლოდ ერთხელ. რა თქმა უნდა, თუ გსურთ განმეორებითი თანმიმდევრობა, მაშინ ის უნდა ჩადოთ void loop () ფუნქციაში.

ნაბიჯი 8: სურათების გადაყვანა ბიტმაპებზე

სურათების გადაყვანა ბიტმაპებზე
სურათების გადაყვანა ბიტმაპებზე

ახლა, პროექტის საინტერესო ნაწილია გამოსახულების გადაქცევა ბიტმაპის მასივში OLED დისპლეისთვის მისი პიქსელის სიმკვრივის მიხედვით. ამისათვის ვიპოვე პრეფექტური ონლაინ ინსტრუმენტი, რომელიც საშუალებას გვაძლევს შევქმნათ პერსონალური ბიტმაპები.

ამ ონლაინ აპლიკაციის ბმული არის:

ამ აპლიკაციის საოცარი შემქმნელების წყალობით, ეს ჩემს მუშაობას ბევრად ამარტივებს.

ბმულზე გადასვლისას თქვენ ჯერ უნდა ატვირთოთ სურათი, რომლის შექმნაც გსურთ bitmap. აქ ერთი რამ უნდა აღინიშნოს, რომ თქვენ უნდა შეეცადოთ შეარჩიოთ სურათები, რომლებსაც არ გააჩნიათ ბევრი ფერის კონტრასტი, ეცადოთ დაიჭიროთ რამდენიმე მყარი ფერის გამოსახულება, ყოველგვარი გრადიენტის გარეშე უკეთესი შედეგის მისაღებად

ნაბიჯი 9: რეზოლუციის მორგება თქვენი ეკრანის მიხედვით

რეზოლუციის მორგება თქვენი ეკრანის მიხედვით
რეზოლუციის მორგება თქვენი ეკრანის მიხედვით

მომდევნო ეტაპზე ჩვენ უნდა შევცვალოთ გამოსახულების ზომა ეკრანის გარჩევადობის მიხედვით. ჩვენი OLED ეკრანისთვის, ეს არის 28 პიქსელი სიგანე და 64 პიქსელი სიმაღლე, რომელიც მე შევასწორე, როგორც ნაჩვენებია სურათზე. შეცვალეთ სიკაშკაშის ბარიერი, რათა დარწმუნდეთ, რომ გამოსახულება მნიშვნელოვნად ნათელია (სწორედ აქ იკვეთება მყარი ფერებით გამოსახულებების გამოყენების უპირატესობა, რაც უფრო მეტს მიაღწევს ფერის გრადიენტები, მონოქრომული ეკრანის გამოსახულების ხარისხი გაუარესდება, რადგან ის არეულობს სიკაშკაშის ზღურბლს).

შემდეგი ნაბიჯი არის ეკრანის გამოსახულების მორგება პროპორციების ხელუხლებლად და სიმეტრიის მორგება, რომლის ვარიანტებიც უკვე არსებობს. თქვენ შეგიძლიათ შეისწავლოთ ეს პარამეტრები სასურველი გამოსახულების მისაღებად. ცნობისთვის, თქვენ ასევე მიიღეთ გასაოცარი წინასწარი გადახედვის ვარიანტი!

ნაბიჯი 10: ბიტმაპის მასივის გენერირება

Bitmap მასივის გენერირება
Bitmap მასივის გენერირება

სურათის პარამეტრების მორგების შემდეგ, შემდეგ ეტაპზე უბრალოდ შეარჩიეთ Arduino კოდი, როგორც გამომავალი ფორმატი და დააწკაპუნეთ გენერირებაზე, რომ მიიღოთ სასურველი ბიტმაპის მასივი!

იქ! თქვენ წარმატებით გადააკეთეთ თქვენი სურათი სასურველ ბიტმაპის მასივში. მე გავაკეთე ეს პროცესი სულ 7 სურათისთვის და შევინახე.

ნაბიჯი 11: სურათების ჩვენება თანმიმდევრობით

სურათების ჩვენება მიმდევრობის სახით
სურათების ჩვენება მიმდევრობის სახით
სურათების ჩვენება მიმდევრობის სახით
სურათების ჩვენება მიმდევრობის სახით
სურათების ჩვენება მიმდევრობის სახით
სურათების ჩვენება მიმდევრობის სახით

სურათების ჩვენებისათვის მე გამოვიყენე Arduino millis () ფუნქცია, რომ გამოვიძახო draw () ფუნქცია, რომელიც ძირითადად არის ბრძანებების ნაკრები ეკრანის გასასუფთავებლად, ბიტმაპის მასივის გამოსახვა OLED– ზე და ეკრანის ინიციალიზაცია. მთავარი ლოგიკა ის არის, რომ ყოველი 3.5 წამის შემდეგ, სურათი იცვლება და ნაჩვენებია შემდეგი სურათი. ასე რომ, 3.5 წამი არ არის უნიკალური რიცხვი, მე უბრალოდ მივხვდი, რომ თუ მელოდიის მთელ ხანგრძლივობას გავყოფ 7 სურათზე, მე მივიღე დაახლოებით 3.5 წამი თითოეული ჩვენებისთვის. თქვენ შეგიძლიათ დაამატოთ მეტი სურათი ამას და სურვილისამებრ შეამციროთ თითოეული სურათის ჩვენების დრო.

კოდის ფრაგმენტები განმარტავს, თუ როგორ ეწოდება ფუნქციები millis () ფუნქციის საფუძველზე.

სურათების მთლიანი ბიტმაპის მასივები ინახება "pictures.h" ფაილში

ნაბიჯი 12: მთელი კოდი:

აქ მე გაგიზიარებთ მთელ კოდს ყველასთვის, რომ ითამაშოთ და ექსპერიმენტი ჩაატაროთ!

როგორც კი ყველაფერი კარგად ჩანს დროა ატვირთოთ იგი დაფაზე:)

ნაბიჯი 13: შედეგები:

Შედეგები
Შედეგები
Შედეგები
Შედეგები
Შედეგები
Შედეგები
Შედეგები
Შედეგები

როგორც ხედავთ სურათები შესანიშნავი იყო! და ასე მოიქცა მელოდიაც! ვიმედოვნებ, თქვენ ნახეთ ვიდეო, რომელშიც მთელი დემონსტრაციაა წარმოდგენილი.

ვიმედოვნებ, რომ Arduino– ს PUBG ვერსია არის საინტერესო პროექტი ყველა თამაშისა და ელექტრონული მოყვარულთათვის.

გთხოვთ თავისუფლად გაგვიზიაროთ თქვენი გამოხმაურება კომენტარებში და გაუზიარეთ ნებისმიერი წინადადება. ასევე, განიხილეთ ჩემი არხის გამოწერა უფრო მეტი შინაარსისთვის, რადგან ეს არის OLED სერიის ნაწილი, რომელზეც ვმუშაობ. გამაგებინე თუ ააშენებ ამ სახალისო პროექტს:)

შემდეგ ჯერზე.

გირჩევთ: