Мазмұны:

Arduino Sorta Sudoku ойыны: 3 қадам (суреттермен)
Arduino Sorta Sudoku ойыны: 3 қадам (суреттермен)

Бейне: Arduino Sorta Sudoku ойыны: 3 қадам (суреттермен)

Бейне: Arduino Sorta Sudoku ойыны: 3 қадам (суреттермен)
Бейне: The Simplest Ruleset In Sudoku 2024, Қараша
Anonim
Arduino Sorta Sudoku ойыны
Arduino Sorta Sudoku ойыны

Көптеген адамдар Судоку мен немерелеріне ойын ойнағанды ұнатады, сондықтан мен портативті «Сорту Судоку» ойынын жасауды шештім. Менің нұсқамда ойын 4х4 торлы, бірақ тек бір сан берілген. Идея - қалған сандарды аз әрекетте табу. Бұл қарапайым ойын, бірақ сіз 15 ұпай жинасаңыз, бұл тәуелділікті тудыруы мүмкін. Ойын сәттілік элементін де, логиканы да, мен осы уақытқа дейін көрген ең жақсы ұпайды да қажет етеді. 16 қараңыз. Егер сіз ойын құруға қызығушылық танытпасаңыз, онда сіз өзіңіздің жеке жобаларыңыздың бірінде қолдануға болатын бағдарламалық жасақтаманың кейбір элементтері болуы мүмкін.

1 -қадам: Жабдық

Аппараттық құрал
Аппараттық құрал
Аппараттық құрал
Аппараттық құрал
Аппараттық құрал
Аппараттық құрал

Жабдық Arduino -ның кез келген нұсқасына негізделуі мүмкін. Мен прототипті Nano көмегімен жасадым, содан кейін кодты ATMega328 чипіне жаздым. Бұл нанода қолданылатын чип, бірақ оны өздігінен пайдалану ықшам конструкцияға және қуатты аз тұтынуға мүмкіндік береді. Көріп отырғаныңыздай, мен тізбекті СКД модулінде шошақтай болатын кішкене тақтаға салдым. Нано сыртқы кристалды қолдана отырып 16 МГц жиілігінде жұмыс істейді, бірақ мен ATMega328 чипі үшін кіріктірілген 8 МГц осцилляторды қолдануды таңдадым. Бұл бөлшектер мен қуатты үнемдейді.

2004 жылғы СКД Arduino интерфейсі 1602 СКД сияқты. Көрсету орындарының адрестелуінде қызықты айырмашылық бар. Әлбетте, айырмашылық бар, себебі екі жолдың орнына төрт жол бар, бірақ 2004 жылы үшінші жол - бірінші жолдың, төртінші жол - екінші жолдың жалғасы. Басқаша айтқанда, егер сізде СКД -ге символдар қатарын жіберетін тест бағдарламасы болса, 21 -ші таңба үшінші жолдың басында пайда болады, ал 41 -ші таңба бірінші жолдың басына оралады. Бағдарламалық қамтамасыз ету бұл айырмашылықты СКД мекен -жайын іздеу кестесімен өңдейді.

Ойынға арналған кіріс - бұл 4х4 өлшемді үйде жасалған матрица. Әрбір қосқыш дисплейдегі эквивалентті орынға тікелей сәйкес келеді. Сонымен қатар қуат қосқышы мен қалпына келтіру қосқышы бар. Қалпына келтіру қосқышы ескі ойыннан тазартады және жаңа ойын жасайды.

Мен өзімнің аккумуляторымды қуаттандыруды шештім, сондықтан мен жалпы 18650 Li-ion, 3,6 вольтты батареяны қолдандым. Бұл USB -ді қайта зарядтауға мүмкіндік беретін шағын тақтаны және СКД мен ATMega чипі үшін аккумулятордың кернеуін 5 вольтке дейін жоғарылататын басқа тақтаны қосуды талап етті. Суреттер мен қолданған модульдерді көрсетеді, бірақ екі функцияны орындайтын модульдер бар.

2 -қадам: Бағдарламалық қамтамасыз ету

Бағдарламалық қамтамасыз ету Nano үшін де, ATMega328 чипі үшін де бірдей. Айырмашылық тек бағдарламалау әдісінде. Мен СКБ бағдарламалық жасақтамасының және пернетақта матрицасының декодтау бағдарламалық жасақтамасының бос нұсқаларын қолданамын. Бұл жобаға арналған бөлек «қосу» файлдары.

«Кездейсоқ» және «randomSeed» командалары ойынды құруға көмектеседі. Мен әр қосылымда әр түрлі реттілік пайда болуын қамтамасыз ету үшін «тұқымның» EEPROM -ге үнемдеуді қостым. Пазлға арналған сызықтар 24 элементті іздеу массивінен алынған. Алғашқы үш жол кестеден кездейсоқ түрде таңдалады, таңдалған жолдың алдыңғы жолға қайшы келмейтінін тексереді. Соңғы жол қолмен толтырылады, себебі сол кезде мүмкін болатын бір ғана үлгі болады. Осыдан кейін пернетақта матрицасын сканерлеу және пернелерді басуды санға түрлендіру ғана қалады.

Санды білу үшін сәйкес қосқышты қайталап басыңыз. Әр басу көрсетілген санды көбейтеді. Егер сіз қалаған нөмірден асып түссеңіз, басуды жалғастырыңыз. Егер сіз коммутаторды бір секундқа босатсаңыз, ол соңғы көрсетілген нөмірде құлыпталады. Егер нөмір қате болса, ол нөмірді өшіреді және қайталап көруге болады. Әрбір болжам есептегішті көбейтеді және сан дұрыс есептелгеннен кейін матрицалық қосқыш тиімді түрде ажыратылады.

3 -қадам: көрсетеді

Көрсетулер
Көрсетулер
Көрсетулер
Көрсетулер
Көрсетулер
Көрсетулер

Міне, әр түрлі дисплейлердің суреттері.

Ұсынылған: