Мазмуну:

Arduino Sorta Sudoku Оюну: 3 кадам (Сүрөттөр менен)
Arduino Sorta Sudoku Оюну: 3 кадам (Сүрөттөр менен)

Video: Arduino Sorta Sudoku Оюну: 3 кадам (Сүрөттөр менен)

Video: Arduino Sorta Sudoku Оюну: 3 кадам (Сүрөттөр менен)
Video: Aurora C#, surveying our system and first ship designs 2024, Ноябрь
Anonim
Arduino Sorta Sudoku Оюн
Arduino Sorta Sudoku Оюн

Көптөгөн адамдар судокуну жана неберелерин оюнду жакшы көрүшөт, ошондуктан мен портативдүү "Sorta Sudoku" оюнун жасоону чечтим. Менин версиямда оюн 4х4 сетка, бирок бир гана сан берилет. Идея калган сандарды эң аз аракет менен болжоо. Бул жөнөкөй оюн, бирок сиз 15тин эң сонун упайына умтулсаңыз, бул кандайдыр бир көз карандылыкты жаратышы мүмкүн. Оюнга ийгиликтин элементи да, логика да, мен буга чейин көргөн эң жакшы баа да керек. 16. Караңыз, анткени ал тургай Эгерде сиз оюнду курууга кызыкдар болбосоңуз, анда сиз өзүңүздүн долбоорлоруңуздун биринде колдоно турган программалык камсыздоонун кээ бир элементтери болушу мүмкүн.

1 -кадам: Аппараттык

Аппараттык
Аппараттык
Аппараттык
Аппараттык
Аппараттык
Аппараттык

Аппаратура дээрлик ар кандай Arduino версиясына негизделиши мүмкүн. Мен прототипти Nano аркылуу жасадым, андан кийин кодду ATMega328 чипине өрттөдүм. Бул нанодо колдонулган ошол эле чип, бирок аны өз алдынча колдонуу компакт түзүлүшкө жана аз энергия керектөөгө мүмкүндүк берет. Көрүнүп тургандай, мен схеманы ЖК модулунда piggybacks кичинекей нан тактасына курдум. Башка бир жагы, нано тышкы кристаллдын жардамы менен 16 МГцте иштейт, бирок мен ATMega328 чипи үчүн 8 МГц камтылган осцилляторду колдонууну чечтим. Бул бөлүктөрдү жана кубатты үнөмдөйт.

2004 -жылкы LCD интерфейстери Arduino үчүн 1602 ЖК сыяктуу эле. Кызыктуу айырмачылык дисплей жайгашкан жерлердин дарегинде. Албетте, айырма бар, анткени экөөнүн ордуна төрт сап бар, бирок 2004 -жылы үчүнчү сап - биринчи саптын, төртүнчү сап - экинчи саптын уландысы. Башкача айтканда, эгер сизде ЖКга бир катар символдорду жөнөткөн тест программасы болсо, 21 -белгиси үчүнчү саптын башында көрүнөт жана 41 -белги биринчи саптын башталышына чейин кайра оролот. Программалык камсыздоо бул айырманы ЖК даректерин издөө столу менен чечет.

Оюнга киргизүү - бул үйдө 4x4 которуу матрицасы. Ар бир которгуч дисплейдеги эквиваленттүү жерге түз туура келет. Ошондой эле кубат которгуч жана баштапкы абалга келтирүүчү бар. Баштапкы абалга келтирүү эски оюнду тазалап, жаңы оюн жаратат.

Мен версиямды батарейка менен камсыз кылууну чечтим, ошондуктан жалпы 18650 Li-ion, 3.6 вольттуу батареяны колдондум. Бул USB толтурууга мүмкүндүк берүү үчүн кичинекей тактаны жана LCD жана ATMega чипи үчүн батареянын чыңалуусун 5 вольтко чейин жогорулатуу үчүн дагы бир кичинекей тактаны кошуумду талап кылды. Сүрөттөр мен колдонгон модулдарды көрсөтөт, бирок экөөнүн тең функцияларын тең аткаруучу модулдар бар.

2 -кадам: Программалык камсыздоо

Программалык камсыздоо Nano жана ATMega328 чиптери үчүн бирдей. Жалгыз айырмачылык программалоо ыкмасында. Мен LCD программасынын жана клавиатура матрицасын декоддоочу программанын өзүмдүн barebones версиясын колдоном. Бул долбоор үчүн өзүнчө "кошуу" файлдары.

"Кокус" жана "randomSeed" буйруктары оюнду түзүүгө жардам берүү үчүн колдонулат. Мен ар бир кубатта ар кандай ырааттуулуктун пайда болушун камсыз кылуу үчүн "үрөндүн" EEPROMуна үнөмдөөнү коштум. Табышмактын саптары 24 элементтен турган издөө массивинен алынган. Алгачкы үч сап столдон туш келди тандалган, тандалган линия мурунку сапка карама -каршы келбеши үчүн текшерилет. Акыркы сап кол менен толтурулат, анткени ошол учурда бир гана мүмкүн болгон үлгү болот. Андан кийин бул клавиатура матрицасын сканерлөө жана баскычтарды санга айландыруу гана.

Санды табуу үчүн тиешелүү которгучту кайра -кайра басыңыз. Ар бир басуу көрсөтүлгөн санды көбөйтөт. Эгерде сиз каалаган номерди ашып кетсеңиз, басууну улантыңыз. Эгерде сиз которгучту бир секундага коё берсеңиз, анда ал акыркы көрсөтүлгөн номерди бекитет. Эгерде номер туура эмес болсо, ал номерди тазалайт жана кайра аракет кылсаңыз болот. Ар бир божомол көрсөтүлгөн эсептегичти көбөйтөт жана сан туура божомолдонгондон кийин, ал матрицаны алмаштыруу натыйжалуу өчүрүлөт.

3 -кадам: көрсөтөт

Дисплейлер
Дисплейлер
Дисплейлер
Дисплейлер
Дисплейлер
Дисплейлер

Бул жерде ар кандай дисплейлердин сүрөттөрү бар.

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