Агуулгын хүснэгт:
- Алхам 1: Бүх эд ангиудыг цуглуулах
- Алхам 2: OLED дэлгэцийг холбох
- Алхам 3: Баззерыг холбох
- Алхам 4: Бүх тоног төхөөрөмжийн холболт дууссан
- Алхам 5: Номын сан болон дэлгэцийн протоколыг оруулах
- Алхам 6: Сэдвийн дууны аялгуу
- Алхам 7: Эхлэх явцад дууг тоглуулах
- Алхам 8: Зургийг Bitmap болгон хөрвүүлэх
- Алхам 9: Дэлгэцийнхээ дагуу нарийвчлалыг тохируулах
- Алхам 10: Bitmap массив үүсгэх
- Алхам 11: Дүрсийг дарааллаар харуулах
- Алхам 12: Бүхэл бүтэн код:
- Алхам 13: Үр дүн:
Видео: PUBG -ийн сэдэвчилсэн дуу+Anduation with Arduino !: 13 алхам (зурагтай)
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:01
Сайн байцгаана уу, энэхүү зугаатай сургамжид тавтай морил! Та бүгд эрүүл энх байж, эрүүл энх байхыг хүсэн ерөөе. Энэхүү жижиг боловч гайхалтай төсөл нь PUBG сэдэвт дууг тоглож, arduino ашиглан тоглоомын анимаци хийх тухай юм.
Ашигласан бүрэлдэхүүн хэсгүүдийг авахад маш хялбар бөгөөд талхны тавцан дээр угсрахад маш хялбар байдаг. Би энэхүү зааварчилгаагаар барилга, кодчиллын явцыг бүхэлд нь хуваалцах болно.
Төслийн талаар санаа авахын тулд би видеог үзэхийг танд зөвлөж байна:) Хэрэв танд таалагдсан бол видеог like дарж хуваалцаарай. Хэрэв танд миний бүтээл таалагдсан бол миний сувгийг бүртгүүлэх талаар бодож үзээрэй. Баярлалаа!
Тиймээс, хойшлуулалгүйгээр эхлүүлцгээе!
Алхам 1: Бүх эд ангиудыг цуглуулах
Энэхүү барилгын гол хэсэг нь энэхүү төслийн гол цөм болох Arduino Nano -оос бүрдэнэ. Та алдартай Arduino Uno, Arduino Pro Mini, Arduino Mega гэх мэт бусад Arduino хувилбаруудыг ашиглаж болно. Хөдөлгөөнт дүрс, зургийг харуулахын тулд би 128 х 64 пикселийн нарийвчлалтай 0.96 инчийн OLED дэлгэцтэй ажиллахаар шийдсэн. Энэхүү дэлгэц нь I2C протокол бүхий arduino интерфэйс байж болох бөгөөд өгөгдөл, цагны хувьд ердөө хоёр утас шаардагдах бөгөөд ингэснээр холболтын тоог багасгаж, төслийг илүү авсаархан болгоно. PUBG -ийн сэдэвт аялгууг тоглуулахын тулд би 5V -ийн дуут дохиог ашигласан бөгөөд би эерэг зүүгээ arduino -ийн дижитал 6 -р зүүгээр холбож, Arduino -ийн газардуулав.
Эдгээр нь төсөлд шаардлагатай хэсгүүдийн жагсаалт юм.
- Arduino Nano (эсвэл таны сонгосон өөр ардуино самбар)
- 0.96 инчийн OLED дэлгэцийн модуль
- 5V дохиолол
- Холбогч утас
- Талхны самбар
- Arduino програмчлалын кабель
Алхам 2: OLED дэлгэцийг холбох
OLED дэлгэцийг arduino -оос холбохын тулд нийт 4 холболт шаардлагатай.
Arduino -ийн Vcc 5V
Arduino -ийн Gnd Gnd
Arduino -ийн SDA A4
Arduino -ийн SCK A5
Arduino -ийн A4 ба A5 зүү нь аналог оролт, I2C холболтын олон үүргийг гүйцэтгэдэг. Энд бид дэлгэцийн модультай харилцах I2C протоколын тээглүүрийг ашигласан болно.
Энэхүү төсөлд ашигласан Adafruit номын сангийн линк:
Алхам 3: Баззерыг холбох
5V дохиолол нь эерэг ба сөрөг нийлүүлэлтийн терминалтай.
Arduino -ийн эерэг D6 зүү (дижитал зүү 6) (та ямар ч дижитал зүү ашиглаж болно)
Сөрөг зүү Gnd Arduino
Бид дижитал зүү D6 дээр хүссэн аяыг бий болгох бөгөөд үүнд дуугарагч аялгуу тоглуулах болно.
Алхам 4: Бүх тоног төхөөрөмжийн холболт дууссан
OLED дэлгэц болон дуугаралтын бүх шаардлагатай холболтууд дууссан. Одоо төслийн програмчлалын талыг ойлгохын тулд үргэлжлүүлье.
Алхам 5: Номын сан болон дэлгэцийн протоколыг оруулах
Хөтөлбөрийг бүхэлд нь 3 бүрэлдэхүүн хэсэгт хуваасан:
- Үндсэн програм нь дүрсийг харуулах, аялгууг эхлүүлэх, дарааллаас бүрдэнэ
- Хөгжмийн нотуудын жагсаалт болон холбогдох давтамжаас бүрдсэн "pitches.h" файл
- Харагдах зургийн bitmap -ээс бүрдсэн "pictures.h" файл.
Зургийг OLED дэлгэцийн bitmap массив болгон хэрхэн хөрвүүлэх процессыг удахгүй хийх алхамуудын талаар авч үзэх болно.
Би бас кодыг бүхэлд нь энэ зааврын хамт хавсаргах болно.
Алхам 6: Сэдвийн дууны аялгуу
Би интернэтээс PUBG -ийн сэдэвчилсэн дуунаас бүрдсэн үндсэн тэмдэглэлүүдийг хайж, дараа нь аялгууны массивт нэмсэн.
Удаан хугацааны турш тоглож, аялгууны дарааллыг дахин тоглуулснаар би нот тус бүрийг хэр удаан тоглуулах шаардлагатай байгааг харуулсан цаг хугацааны массивыг бий болгосон. Уянгын массив ба үргэлжлэх хугацааны хослол нь дууг тоглуулах талаархи бүрэн мэдээллийг агуулдаг.
Алхам 7: Эхлэх явцад дууг тоглуулах
Би аялгууны дарааллыг бүрдүүлдэг байсан нийт 63 тэмдэглэл байдаг. For давталтыг ашиглан тэмдэглэл бүрийн хооронд урьдчилан тогтоосон түр зогсолт бүхий тэмдэглэл, үргэлжлэх хугацааны массивыг давтаж, бүх дарааллыг нэг удаа тоглодог. хоосон тохиргоонд (). Сонирхолтой нь, энэ төслийн кодуудын аль нь ч arduino кодын void loop () -ийг ашигладаггүй, учир нь би зургийг ганцхан удаа тоглуулж, үзүүлэхийг хүсч байна. Мэдээжийн хэрэг, хэрэв та дарааллыг давтахыг хүсч байвал үүнийг void loop () функцэд оруулах ёстой.
Алхам 8: Зургийг Bitmap болгон хөрвүүлэх
Төслийн сонирхолтой хэсэг бол зургийг пикселийн нягтралын дагуу OLED дэлгэцийн битийн массив болгон хөрвүүлэх үйл явц юм. Үүний тулд би өөрчлөн тохируулсан bitmap үүсгэх боломжийг олгодог онлайн хэрэгслийг олсон.
Энэхүү онлайн програмын линк нь:
Энэхүү програмыг бүтээгчдийн гайхалтай ачаар энэ нь миний ажлыг ихээхэн хөнгөвчилсөн юм.
Холбоос руу орохдоо та эхлээд bitmap үүсгэхийг хүссэн зургаа байршуулах ёстой. Энд анхаарах ёстой нэг зүйл бол өнгөний ялгаа багатай зургуудыг сонгох, илүү сайн үр дүнд хүрэхийн тулд ямар ч градиентгүйгээр цөөн хэдэн хатуу өнгөнүүдтэй наалдаж үзээрэй.
Алхам 9: Дэлгэцийнхээ дагуу нарийвчлалыг тохируулах
Дараагийн алхамд бид дэлгэцийн нарийвчлалыг харгалзан зургийн хэмжээг өөрчлөх ёстой. Манай OLED дэлгэцийн хувьд энэ нь 28 пиксел өргөн, 64 пиксел өндөртэй бөгөөд үүнийг зураг дээр үзүүлсэн шиг тохируулсан болно. Зургийг нэлээд тодорхой болгохын тулд гэрэлтүүлгийн босгыг тохируулна уу (энд тод өнгө бүхий зургийг ашиглах давуу тал бий болно, өнгөний градиент их байх тусам тод өнгийн босго алдагдах тусам монохром дэлгэц дээрх зургийн чанар муудах болно.).
Дараагийн алхам бол дүрсийг дэлгэцэн дээр тохируулж, пропорцийг хэвээр нь үлдээж, сонголтууд нь байгаа тэгш хэмийг тохируулах явдал юм. Хүссэн зургийн үр дүнг авахын тулд та эдгээр сонголтыг судалж үзэх боломжтой. Лавлахын тулд та гайхалтай урьдчилан харах сонголтыг авах болно!
Алхам 10: Bitmap массив үүсгэх
Зургийн параметрүүдийг тохируулсны дараа дараагийн алхамд Arduino кодыг гаралтын форматаар сонгоод үүсгэх товчийг дарж хүссэн bitmap массивыг аваарай!
Тэнд! Та өөрийн зургийг хүссэн bitmap массив руу амжилттай хөрвүүллээ. Би энэ процессыг нийт 7 зураг хийж, хадгалсан.
Алхам 11: Дүрсийг дарааллаар харуулах
Зургийг харуулахын тулд би Arduino millis () функцийг ашиглан draw () функцийг дуудаж, үндсэндээ дэлгэцийг цэвэрлэх командыг багц болгож, bitmap массивыг OLED -д зурж, дэлгэцийг эхлүүлэв. Гол логик нь 3.5 секунд тутамд зургийг өөрчилж, дараагийн зургийг харуулдаг. 3.5 секунд бол өвөрмөц тоо биш, хэрэв би бүх аялгууны үргэлжлэх хугацааг 7 дүрс болгон хуваах юм бол дэлгэц бүрт ойролцоогоор 3.5 секунд зарцуулдаг болохыг олж мэдсэн. Та үүнд илүү олон зураг нэмж, хэрэв хүсвэл зураг тус бүрийн дэлгэцийн хугацааг багасгах боломжтой.
Кодын хэсэг нь millis () функц дээр үндэслэн функцуудыг хэрхэн дуудаж байгааг тайлбарладаг.
Зургийн bitmap массивыг бүхэлд нь "pictures.h" файлд хадгалдаг
Алхам 12: Бүхэл бүтэн код:
Энд би тоглож, туршиж үзэхийн тулд кодоо бүхэлд нь хуваалцаж байна.
Бүх зүйл зүгээр юм шиг санагдсаны дараа самбар дээр байршуулах цаг болжээ:)
Алхам 13: Үр дүн:
Таны харж байгаагаар зургууд үнэхээр гайхалтай болсон! Мөн аялгуу ч бас ийм болсон! Та жагсаал бүхэлдээ байгаа видеог үзсэн байх гэж найдаж байна.
Энэхүү Arduino -ийн PUBG хувилбар нь бүх тоглоом, цахим сонирхогчдод зориулсан сонирхолтой төсөл болно гэж найдаж байна.
Санал хүсэлтээ сэтгэгдлээр хуваалцах, санал хүсэлтээ хуваалцахаас гадна миний ажиллаж буй OLED цувралын нэг хэсэг болохын тулд илүү олон контент авахыг хүсвэл миний сувгийг захиалаарай. Хэрэв та энэхүү хөгжилтэй төслийг бүтээсэн бол надад мэдэгдээрэй:)
Дараагийн удаа хүртэл.
Зөвлөмж болгож буй:
DIY 37 Leds Arduino рулет тоглоом: 3 алхам (зурагтай)
DIY 37 Leds Arduino рулет тоглоом: Рулет бол жижиг дугуй гэсэн утгатай франц үгний нэрээр нэрлэгдсэн казиногийн тоглоом юм
Ковидын аюулгүйн дуулга 1 -р хэсэг: Tinkercad хэлхээний танилцуулга !: 20 алхам (зурагтай)
Ковидын аюулгүйн дуулга 1 -р хэсэг: Tinkercad хэлхээний танилцуулга! Сурах хамгийн сайн аргуудын нэг бол хийх явдал юм. Тиймээс, бид эхлээд өөрсдийнхөө төслийг боловсруулах болно: th
BOSEBerry Pi интернет радио: 4 алхам (зурагтай)
BOSEBerry Pi Интернет радио: Би радио сонсох дуртай! Би гэртээ DAB радио ашиглаж байсан боловч хүлээн авалт нь жаахан эвгүй, дуу тасарсан хэвээр байгаа тул би өөрөө интернет радио бүтээхээр шийдсэн. Би байшингийнхаа эргэн тойронд хүчтэй wifi дохио, дижитал ахтай
Уизли' 4 гартай байршлын цаг: 11 алхам (зурагтай)
Уизли' 4 гартай байршлын цаг: Тиймээс Raspberry Pi -ийг хэсэг хугацаанд өшиглөж байсан тул үүнийг хамгийн сайн ашиглах боломжийг олгох сайхан төсөл олохыг хүссэн юм. Би ppeters0502 -ийн энэхүү гайхалтай зааварчилгаа бүхий өөрийн хувийн Уизли байршлын цагийг олж хараад
ESP8266 ба ESP32 DIY ашигладаг мэргэжлийн цаг уурын станц: 9 алхам (зурагтай)
ESP8266 ба ESP32 DIY ашигладаг мэргэжлийн цаг уурын станц: LineaMeteoStazione бол Sensirion -ийн мэргэжлийн мэдрэгч, Дэвис багажны зарим бүрэлдэхүүн хэсэг (Rain Gauge, Anemometer) -тай холбогдож болох цаг агаарын бүрэн станц юм.Төсөл нь DIY цаг уурын станцад зориулагдсан боловч зөвхөн шаардлагатай