Satura rādītājs:

Arduino kauliņi galda spēlēm: 4 soļi
Arduino kauliņi galda spēlēm: 4 soļi

Video: Arduino kauliņi galda spēlēm: 4 soļi

Video: Arduino kauliņi galda spēlēm: 4 soļi
Video: Don't Do This At Home 2024, Jūlijs
Anonim

Seko vairāk autoram:

Elektroniskie kauliņi ar UTSOURCE
Elektroniskie kauliņi ar UTSOURCE
Elektroniskie kauliņi ar UTSOURCE
Elektroniskie kauliņi ar UTSOURCE
Ūdens līmeņa slēdzis, izmantojot D882
Ūdens līmeņa slēdzis, izmantojot D882
Ūdens līmeņa slēdzis, izmantojot D882
Ūdens līmeņa slēdzis, izmantojot D882
Apkārtējais reālā laika pulkstenis
Apkārtējais reālā laika pulkstenis
Apkārtējais reālā laika pulkstenis
Apkārtējais reālā laika pulkstenis

Par: YouTuber, Drone Manufaturer Vairāk par RoboCircuits_com »

Jūs, iespējams, izmantojāt šos kauliņus, spēlējot LUDO un citas galda spēles. Bet, būdams elektronikas entuziasts, man šī tendence ir jāmaina.

Tāpēc es nolēmu izveidot elektroniskus kauliņus. Es izmantoju Arduino saviem mērķiem.

1. solis: DIY Arduino

Šo arduino esmu izgatavojis es, izmantojot mikrokontrolleri atmega 328p. PCB šim nolūkam tiek pasūtīts vietnē "jlcpcb.com", jo tie nodrošina vislabākās klases PCB par zemām cenām. Tad es pielodēju visas detaļas un beidzot ieguvu šo jauki izskatīgo Arduino UNO.

Visas shēmas un faili ir sniegti manas tīmekļa vietnes rakstā -

2. solis: projekta izstrāde

Labi!!!!

pietiek ar Arduino. Tagad izveidosim projektu. Nejaušām vērtībām es izmantoju izlases funkciju arduino ide, lai, nospiežot pogu, iegūtu vērtības no 1 līdz 6. Tāpēc noskatieties šo video, lai uzzinātu, kā šis projekts tiek veidots.

3. darbība: kods

/* Šo kodu ir izstrādājis RoboCircuits

Abonējiet mani vietnē YouTube https://youtube.com/robocircuits vai apmeklējiet vietni robocircuits.com Mums vienmēr ir jāiekļauj bibliotēka*/

#include "LedControl.h"

/* Tagad mums ir nepieciešama LedControl, ar kuru strādāt. ***** Šie pin numuri, iespējams, nedarbosies ar jūsu aparatūru ***** pin 12 ir pievienots DataIn pin 11 ir savienots ar CLK pin 10 ir pievienots LOAD Mums ir tikai viens MAX72XX. */

LedControl lc = LedControl (12, 11, 10, 1);

/ * mēs vienmēr mazliet gaidām starp displeja atjauninājumiem */ neparakstīts ilgs delaytime = 500; sestais baits [8] = {B00000000, B11011011, B11011011, B00000000, B00000000, B11011011, B11011011, B00000000}; pieci baiti [8] = {B00000000, B01100110, B01100110, B00011000, B00011000, B01100110, B01100110, B00000000}; ceturtais baits [8] = {B00000000, B01100110, B01100110, B00000000, B00000000, B01100110, B01100110, B00000000}; trešais baits [8] = {B11000000, B11000000, B00000000, B00011000, B00011000, B00000000, B00000011, B00000011}; otrais baits [8] = {B00000000, B00000000, B00000000, B01100110, B01100110, B00000000, B00000000, B00000000}; viens baits [8] = {B00000000, B00000000, B00000000, B00011000, B00011000, B00000000, B00000000, B00000000};

void setup () { / * MAX72XX ieslēgšanas brīdī ir enerģijas taupīšanas režīmā, mums jāveic modināšanas zvans * / lc.shutdown (0, false); / * Iestatiet spilgtumu uz vidējām vērtībām */ lc.setIntensity (0, 8); / * un notīriet displeju */ lc.clearDisplay (0); }

/* Šī metode parādīs rakstzīmes (lai redzētu visas rakstzīmes, ir nepieciešami vismaz 7x7 gaismas diodes)* /void one1 () { /* šeit ir dati par rakstzīmēm* / /*, tagad parādot tos pa vienam kavēšanās */ lc.setRow (0, 0, viens [0]); lc.setRow (0, 1, viens [1]); lc.setRow (0, 2, viens [2]); lc.setRow (0, 3, viens [3]); lc.setRow (0, 4, viens [4]); lc.setRow (0, 5, viens [5]); lc.setRow (0, 6, viens [6]); lc.setRow (0, 7, viens [7]); kavēšanās (kavēšanās laiks); } void two2 () { / * šeit ir dati par rakstzīmēm * / / * tagad parādiet tos pa vienam ar nelielu aizkavi * / lc.setRow (0, 0, divi [0]); lc.setRow (0, 1, divi [1]); lc.setRow (0, 2, divi [2]); lc.setRow (0, 3, divi [3]); lc.setRow (0, 4, divi [4]); lc.setRow (0, 5, divi [5]); lc.setRow (0, 6, divi [6]); lc.setRow (0, 7, divi [7]); kavēšanās (kavēšanās laiks); } void three3 () { / * šeit ir dati par rakstzīmēm * / / * tagad parādiet tos pa vienam ar nelielu aizkavi * / lc.setRow (0, 0, trīs [0]); lc.setRow (0, 1, trīs [1]); lc.setRow (0, 2, trīs [2]); lc.setRow (0, 3, trīs [3]); lc.setRow (0, 4, trīs [4]); lc.setRow (0, 5, trīs [5]); lc.setRow (0, 6, trīs [6]); lc.setRow (0, 7, trīs [7]); kavēšanās (kavēšanās laiks); } void four4 () { / * šeit ir dati par rakstzīmēm * / / * tagad parādiet tos četri pa četriem ar nelielu aizkavi * / lc.setRow (0, 0, four [0]); lc.setRow (0, 1, četri [1]); lc.setRow (0, 2, četri [2]); lc.setRow (0, 3, četri [3]); lc.setRow (0, 4, četri [4]); lc.setRow (0, 5, četri [5]); lc.setRow (0, 6, četri [6]); lc.setRow (0, 7, četri [7]); kavēšanās (kavēšanās laiks); } void five5 () { / * šeit ir dati par rakstzīmēm * / / * tagad parādiet tos pieci pieci ar nelielu aizkavi * / lc.setRow (0, 0, pieci [0]); lc.setRow (0, 1, pieci [1]); lc.setRow (0, 2, pieci [2]); lc.setRow (0, 3, pieci [3]); lc.setRow (0, 4, pieci [4]); lc.setRow (0, 5, pieci [5]); lc.setRow (0, 6, pieci [6]); lc.setRow (0, 7, pieci [7]);

kavēšanās (kavēšanās laiks); } void six6 () { / * šeit ir dati par rakstzīmēm * / / * tagad parādiet tos sešus līdz sešus ar nelielu aizkavi * / lc.setRow (0, 0, seši [0]); lc.setRow (0, 1, seši [1]); lc.setRow (0, 2, seši [2]); lc.setRow (0, 3, seši [3]); lc.setRow (0, 4, seši [4]); lc.setRow (0, 5, seši [5]); lc.setRow (0, 6, seši [6]); lc.setRow (0, 7, seši [7]); kavēšanās (kavēšanās laiks); }

void loop () {int x; ja (analogRead (A4) == 1000) {x = nejaušs (1, 6); } slēdzis (x) {gadījums 1: viens1 (); pārtraukums; 2. gadījums: divi2 (); pārtraukums; gadījums 3: trīs3 (); pārtraukums; 4. gadījums: četri4 (); pārtraukums; 5. gadījums: pieci5 (); pārtraukums; 6. gadījums: seši6 (); pārtraukums;}}

4. darbība. Patīk kopīgot

Abonējiet mūs pakalpojumā YouTube -

Tāpat kā mums Facebook -

Apmeklējiet -

Ieteicams: