Мазмұны:

Қолмен Arduino Pong консолі: 6 қадам (суреттермен)
Қолмен Arduino Pong консолі: 6 қадам (суреттермен)

Бейне: Қолмен Arduino Pong консолі: 6 қадам (суреттермен)

Бейне: Қолмен Arduino Pong консолі: 6 қадам (суреттермен)
Бейне: Начало работы с QLC+ Управление цветомузыкой с компьютера. Как управлять светом. 2024, Маусым
Anonim
Қолмен жұмыс істейтін Arduino Pong консолі
Қолмен жұмыс істейтін Arduino Pong консолі

DFRobot жақында маған арнайы Arduino Nano тақтасын және OLED қолдануды сұрады. Алдымен мен ақылды велосипед жасағым келді, мен оны толығымен жасадым. Бірақ, өкінішке орай, нано қажетті масштабты іске қосуға және сақтауға тым әлсіз болды. Сондықтан мен алдыңғы жобаларымның бірін, понг ойынын басқаратын неопиксель матрицасын қайта қарауды шештім. Мен оны портативті етіп жасағым келді, ал 1,7 дюймдік OLED тамаша дисплей жасайды.

Бөлшектер тізімі:

  • Ардуино нано
  • OLED
  • Динамик

1 -қадам: бейне

Image
Image

2 -қадам: Ойынның дизайны

Ойынның дизайны
Ойынның дизайны

Бұл понг ойыны үшін мен оны қарапайым етіп сақтағым келді, бұл нокомпьютермен басқарылатын қалақты немесе доптың керемет шағылысу алгоритмдерін білдіреді. Негізінде, пайдаланушы жоғары немесе төмен қозғала алатын жалғыз қалақ бар, ал доптың қалақпен соқтығысуы оның х осінің векторының айналуына әкеледі. Доп тиген сайын ойнайтын дыбыс шығады. Ойын құрылғысы қосылған кезде, экранға ойынның атауы мен нұсқаулары шығады. Сонымен қатар, менің анам жоғарғы тақырыпты басқанша фонда ілінетін шағын тақырыпты ән шығарды.

3 -қадам: Ойын құрылғысын жобалау

Ойын құрылғысын жобалау
Ойын құрылғысын жобалау
Ойын құрылғысын жобалау
Ойын құрылғысын жобалау
Ойын құрылғысын жобалау
Ойын құрылғысын жобалау
Ойын құрылғысын жобалау
Ойын құрылғысын жобалау

Менің CAD бағдарламасы-Fusion 360, сондықтан мен оны понг ойын құрылғысын жасау үшін қолдануды шештім. Мен қолданылған әрбір компонентті: OLED, Arduino Nano және динамикті жобалаудан бастадым, осылайша мен әр компоненттің корпустың ішіне қай жерде және қалай сәйкес келетінін дәл көре аламын. Содан кейін мен корпустың артқы жағына нано мен ПХД, ал үстіне OLED қойдым. Келесі кезекте динамик пен түймелерді қайда қою керек деген сұрақ тұрды. Мен 3W динамигі экранның астына түсе алады деп шештім (оған жоғарыдан қарап), сонымен қатар дыбыс өшірілмеуі үшін динамиктің үстіне «гриль» қою қажет болды. Соңында мен басқару элементтерін қосу үшін сол жаққа екі түйме қостым.

4 -қадам: құрылғыны құру

Құрылғыны құрастыру
Құрылғыны құрастыру
Құрылғыны құрастыру
Құрылғыны құрастыру
Құрылғыны құрастыру
Құрылғыны құрастыру

Мен төменгі бөлігінен, жоғарғы жартысынан және 2 түймеден тұратын әр бөлікті 3D басып шығарудан бастадым. Содан кейін мен әйелдің басын 4х6 см -ге дәнекерлеп, наноға жалғадым. Бұл OLED -ді оңай алып тастауға мүмкіндік береді, сонымен қатар оны Arduino Nano -дан жоғары көтереді. Сымдар туралы ақпаратты схемадан қараңыз. Содан кейін мен екі түймені, сондай -ақ қуат үшін қарапайым микро USB ажыратқыш тақтасын қостым. Сондай -ақ, динамик бекітіліп, оны дұрыс күйге қойды. My Fusion 360 дизайны OLED, динамикті ұстап тұруға және құрылғының екі жартысын қосуға арналған 3 мм бұрандалы бұрандаларға мүмкіндік береді. Бірақ, мен оларды нақтылауым керек болды, сондықтан мен бұрғылау қондырғысымен 8 тесік шығардым: динамик үшін 2, экран үшін 2 және астында 4. Файлдар үшін Thingiverse сілтемесіне кіруге болады.

5 -қадам: Ойынды бағдарламалау

Қарапайым интерфейсті қолдану бағдарламаның шағын болуына өте маңызды болды. Мен бірнеше кітапханаларды қосудан бастадым: Adafruit_GFX, Adafruit_SSD1351 және Arduino Timer кітапханасы. Содан кейін мен түйреуіштер мен түстерді, мысалы, OLED түйреуіштері мен 16 биттік түс анықтамаларын анықтадым. Менің кодымда ойынның қалай өтетінін өзгертудің 4 әдісі бар, мысалы, қалақтың өлшемін өзгерту және доптың жылдам қозғалуы. Содан кейін әр айнымалы анықталатын бөлім бар, оның ішінде балл мен әр түрлі координаттар бар. Құрылғы доптың суретін қосқанда және экранда кейбір мәтін пайда болады, сонымен бірге кодта бұрын анықталған кішкене тақырыптық ән бар. Ойын басталғаннан кейін екі таймер жасалады, олардың бірі қалақты жаңартады, екіншісі допты жаңартады. Доптың позициясы жаңартылған сайын оның координаттары экран шекарасынан өтпейтініне немесе қалаққа тиіп тұрғанына көз жеткізіледі. Ол секірген сайын оның x немесе y осі төңкеріліп, кішкене үн шығады. Ойынның қалай өтетінін көру үшін осы жазбаның басындағы бейнені қараңыз.

6 -қадам: Понг ойнау

Понг ойнау!
Понг ойнау!
Понг ойнау!
Понг ойнау!
Понг ойнау!
Понг ойнау!
Понг ойнау!
Понг ойнау!

Ойынның атауы - мүмкін болатын ең төменгі ұпайды алу. Уақыт шектеулері жоқ, сондықтан бұл өте жағымды және тіпті транс-индукция. Қалақты жоғары немесе төмен жылжыту үшін екі түйменің біреуін басу жеткілікті. Arduino EEPROM көмегімен ең жоғары баллды сақтау әдісін қосуға болады.

Ұсынылған: