Мазмуну:

Нан тактасындагы жылан: 3 кадам (сүрөттөр менен)
Нан тактасындагы жылан: 3 кадам (сүрөттөр менен)

Video: Нан тактасындагы жылан: 3 кадам (сүрөттөр менен)

Video: Нан тактасындагы жылан: 3 кадам (сүрөттөр менен)
Video: ХАМАС Еврейлерді жек көретіні сондықтан😲#Израиль #еврейлер #Хамас #Палестиналықтар #Шайтан #вирус 2024, Ноябрь
Anonim
Нан тактасында жылан
Нан тактасында жылан
Нан тактасында жылан
Нан тактасында жылан
Нан тактасында жылан
Нан тактасында жылан

"Телефонуңузда оюндар барбы?"

"Так эмес."

Киришүү:

Башкаруу оңой, программалоо оңой жана Nokia 6110 тарабынан түбөлүккө калтырылган Snake инженерлердин сүйүктүү долбооруна айланды. Бул LED матрицасынан, ЖКдан, китеп текчесинен жарыктандыруудан, ал тургай бүт имараттардын терезелеринен баштап ишке ашырылган. Биз жыланды кичинекей нан жана OLED экранында ишке ашырабыз. Адамдар, албетте, кичинекей жылан оюнчуларын жасашты, бирок бул атайын ПКБ же ширетүү дизайнын жок кылуу үчүн нан тактасын колдонот.

(Сиз жөн эле телефонуңузга колдонмо жасай аласыз, бирок биз эч нерсе кылбайбыз, анткени алар оңой.)

Алдын ала шарттар:

Микросхемалардын негизги түшүнүгү, кантип нан тактасы жана Arduinoдо программалоону жакшы түшүнүү.

Жабдуулар

  • Arduino Nano
  • 2 абдан жогорку каршылыгы (1kOhm)
  • Кичинекей нан
  • 2 баскычтар
  • 22 AWG катуу негизги зым
  • 128 x 64 OLED

Бул Amazon өнөктөштүк шилтемелери, ошондуктан мен ар бир сатуу менен бир аз комиссия табам. Эгерде сизде бул жабдыктар жок болсо жана менин келечектеги долбоорлорумду колдоону кааласаңыз, бул шилтемелерди ээрчиңиз!:)

1 -кадам: Нан тактасы

Breadboard
Breadboard
Breadboard
Breadboard
Breadboard
Breadboard

Акыркы продуктубузду жасоо үчүн, биз, албетте, программалык камсыздоону чогултуп, долбоорубузду сынап көрүшүбүз керек. Бул долбоордун системалык схемасы абдан жөнөкөй, анткени ал 4 компоненттен турат.

1. Кой:

Компоненттериңизди алып, тактага коюңуз, бардыгы туура келээрин текшериңиз. Кандай зымдарды жана казыктарды кандай максаттарда колдоно турганыңызды элестетип көрүңүз. Сиздин күткөн зымдарыңыз кесилишпешин текшериңиз, анткени бул баш аламандыкка алып келет. Кандай пункттарды туташтыруу керек экенин жазыңыз! Бул жөнөкөй нан болсо да, зымдарды өткөрүү процессинде жана жалпысынан алганда сиздин жашооңузду бир топ жеңилдетет. Биздин жумушчу мейкиндигибиз кичинекей болгондуктан, бул абдан маанилүү кадам.

Эскертүүлөр:

OLED I2C автобусун колдонгондуктан, A4 жана A5 төөнөгүчтөрүн колдонуу керек. Нандын өлчөмү электр жана жер астындагы темир жолго жол бербейт, ошондуктан мен баарын ишке ашыруу үчүн бир нече амалдарды колдондум. Баскычтар үчүн оң чыңалуу D13 жана A2 төөнөгүчтөрү менен камсыздалат. Мен Arduino казыктары токту гана эмес, токту да чөгөрө аларын билдим, ошондуктан A3ты оң баскычка негиз катары колдондум. Нан панелиндеги мейкиндикти максималдаштыруу үчүн, нанонун жарымын тактанын үстүнө илип койдум жана сол жактагы казыктарды көбүк менен колдодум.

2. Аны өчүрүү:

Бир жуп стриптизер жана татыктуу өлчөмдөгү 22 AWG катуу өзөк зымы менен, тетиктериңизди тыкан зым менен бириктириңиз. Жарты туруктуу нан плиталарын жасоо үчүн катуу өзөктү колдонуу өтө маанилүү, анткени сиз аларды секирүүчү зымдардан айырмаланып узундугуна чейин кыркып салсаңыз болот. Зымдарыңызга ашыкча узундук калтырбаганыңызды текшериңиз, бул баш аламан тактага айланат. Ылдый түшүүчү резисторлордун учтарын тактайга төп келгендей кылып кыркыңыз.

(Ошондой эле мен жогоруда кылган нерселерди ээрчип алсаңыз болот.)

2 -кадам: Программа жана тест

Программа жана тест
Программа жана тест

Кийинчерээк башыңыздын оорушун сактап калуу үчүн, OLED жана баскычтар негизги тест программаларын кабыл алуу менен иштешин текшериңиз.

1. План, план, план:

Жөн эле кодго секирүү акылдуу практика эмес. Мага ишен, мен аракет кылдым! Мына ошондуктан сиз программаңыздын кандай иштээрин белгилешиңиз керек. Программанын схемасы - бул сиздин кодуңуздун эмне кылыш керек экенин пландаштыруунун эң сонун жолу жана сизди сөзсүз жолдо кармап турат. Мисалы меники (жогоруда)

2. Код, код, код:

Чынын айтканда, бул долбоор аппараттык көнүгүүгө караганда чоң программалоо көнүгүүсү. Мен колдонгон жалгыз китепкана, колдоого алынган GFX жана Wire китепканаларын эсепке албаганда, Adafruitтин OLED китепканасы болгон.

Adafruitтин OLED китепканасын Arduino IDEнин китепкана менеджери аркылуу орнотуңуз.

Мен жазган ар бир кодду документтештире албайм, бирок бул жерде бир нече кеңеш бар:

Кеңештер:

Комментарийлер:

- Биринчи кезекте, код коюп жатканда тыкан жана пайдалуу комментарийлерди жазыңыз. Келечекте сиз жана сиздин кодду окуган башкалар сизге сөзсүз ыраазычылык билдиришет.

Эстутум:

- Ушул сыяктуу татаал долбоорлор менен SRAM абдан ысык товарга айланат. Adafruit китепканасында 128 x 64 OLED буфери 1 кБны ээлейт, бул ATMega328p эс тутумунун жарымына жакынын түзөт. Ошондуктан акылдуу эстутумду башкаруу мурдагыдан да маанилүү.

- Чоң маалымат структуралары менен, кармалган маалыматтар топтолуп, көп орунду ээлейт. Менин өзгөрмөлөрүмдүн эстутум изин азайтуу үчүн, мен мүмкүн болгондо кичине маалымат түрлөрүн (кыска жана байт сыяктуу) колдондум.

- Саптар көбүнчө SRAMда сакталат, бирок F () функциясын колдонуу аларды PROGMEMге салып, баалуу эс тутумун үнөмдөйт.

Милис:

- Оюн циклинин так убактысына жетүү үчүн millis () функциясын колдонуңуз. Интернетте көптөгөн жакшы сабактар жана мисалдар бар.

Алдын ала аныктоо:

- Коддо туруктуу маанилерди коюунун оңой жолу катары #define препроцессорунун көрсөтмөсүн колдонуңуз.

Тест:

- Кодуңузду сынап көрүңүз. Мүчүлүштүктөрдү жоюу бир топ жеңил болот.

3 -кадам: ырахат алыңыз

Жаңы жылан оюнуңуз менен көңүл ачыңыз!

(Мен жогорудагы видеодо 20 упай менен утканымды билем, утуш шартын менин кодумда жогору койсоңуз болот.)

Кеңейтиле турган нерселер:

  • Портативдүүлүк үчүн батарея
  • Дагы коопсуз баскычтар
  • Андан да кичинекей жылан оюну
  • Дагы оюндар?

Сунушталууда: