మనమందరం పాచికలతో సుపరిచితులు మరియు పాచికలను ఉపయోగించడం ద్వారా తరచుగా LUDO లేదా SANP SIDI (స్నేక్ & నిచ్చెనలు) ఆట ఆడతాము. పాచికలు ఒక స్క్వైర్ రకం ఘన పెట్టె, దాని అన్ని వైపులా 6 వేర్వేరు సంఖ్యలను కలిగి ఉంటుంది. ఆటలను ఆడుతున్నప్పుడు యాదృచ్ఛిక సంఖ్యను పొందడానికి మేము ఉపరితలంపై పాచికలు విసురుతాము. ఈ ప్రాజెక్ట్లో మేము ఆర్డునో యునో బోర్డు ఉపయోగించి డిజిటల్ పాచికలతో ప్రతిరూపం చేయడానికి ప్రయత్నించాము. పాచికలు విసిరే స్థానంలో, 0 నుండి 6 మధ్య యాదృచ్ఛిక సంఖ్యను పొందడానికి ఇక్కడ మనం ఒక బటన్ను నొక్కాలి.
అవసరమైన భాగాలు
- ఆర్డునో UNO
- ఏడు సెగ్మెంట్ డిస్ప్లే (కామన్ యానోడ్)
- పుష్ బటన్లు
- వైర్లను కనెక్ట్ చేస్తోంది
- బ్రెడ్ బోర్డు
- 1 కె రెసిస్టర్
- విద్యుత్ పంపిణి
సర్క్యూట్ రేఖాచిత్రం మరియు వివరణ
పై డిజిటల్ డైస్ సర్క్యూట్లో చూపినట్లుగా, మొత్తం ప్రక్రియను నియంత్రించడానికి ఆర్డునో ఉపయోగించబడుతుంది. సర్క్యూట్లో రెండు పుష్ బటన్లు ఉపయోగించబడతాయి - ఒకటి పాచికలను ప్రారంభించడానికి మరియు మరొకటి పాచికలను రీసెట్ చేయడానికి. ఆర్డునో ఈ రెండు బటన్లను చదివి ఆపరేషన్ చేస్తారు. పాచికల ఫలితాన్ని ప్రదర్శించడానికి ఏడు సెగ్మెంట్ డిస్ప్లే ఉపయోగించబడుతుంది.
Arduino నిరంతరం రాండ్ () ఫంక్షన్ను అమలు చేస్తోంది మరియు దాని విలువను తాత్కాలిక వేరియబుల్లో నిల్వ చేస్తుంది. పాచికల బటన్ నొక్కినప్పుడు నిల్వ చేసిన విలువను లెక్కించి, తగిన పద్ధతిని ఉపయోగించి ఏడు విభాగంలో ప్రదర్శిస్తుంది (వ్యాసం యొక్క ప్రోగ్రామింగ్ భాగాన్ని చూడండి).
ఇక్కడ ఈ పాచికల సర్క్యూట్లో, పాచికల సంఖ్యలను ప్రదర్శించడానికి ఒక సాధారణ యానోడ్ ఏడు సెగ్మెంట్ డిస్ప్లే ఉపయోగించబడుతుంది, ఇది నేరుగా ఆర్డునో డిజిటల్ పిన్ సంఖ్యలు 6, 5, 4, 3, 2, 1, 0 తో అనుసంధానించబడి ఉంది. మరియు ఏడు సెగ్మెంట్ యొక్క సాధారణ యానోడ్ పిన్ +5 వోల్ట్ 220 ఓం రెసిస్టర్తో కనెక్ట్ చేయబడింది. రెండు పుష్ బటన్ కూడా డైస్ బటన్ మరియు రీసెట్ బటన్ అనుసంధానించబడి ఉన్నాయి, ఇవి భూమికి సంబంధించి డిజిటల్ పిన్ 14 (A0) మరియు 15 (A1) తో అనుసంధానించబడి ఉన్నాయి.
కోడ్ వివరణ
ఏడు సెగ్మెంట్ డిస్ప్లేలో యాదృచ్ఛిక డిజిటల్ పాచికల సంఖ్యను ప్రదర్శించడానికి ఈ ప్రాజెక్ట్ యొక్క ప్రోగ్రామింగ్ భాగం చాలా ముఖ్యమైన పాత్ర పోషిస్తుంది. ఏడు సెగ్మెంట్ డిస్ప్లే కోసం ఆర్డునోలో లైబ్రరీ లేదు. కాబట్టి మేము ఏ లైబ్రరీని ఉపయోగించకుండా మొత్తం కోడ్ను సృష్టించాము.
మొదట మేము ఏడు సెగ్మెంట్ డిస్ప్లే కోసం డిజిటల్ పిన్ను ఎంచుకుంటాము.
int పిన్ = {6,5,4,3,2,1,0};
దాని తరువాత మేము 1, 2, 3, 4, 5 మరియు 6 అనే 6 అంకెల పాచికల శ్రేణిని సృష్టిస్తాము.
చార్ అంకెల = {0x02, 0x79, 0x24, 0x30, 0x19, 0x12};
ఇప్పుడు మేము ఆర్డునో పిన్ను అవుట్పుట్గా ఉపయోగించమని దిశానిర్దేశం చేసాము.
(int i = 0; i <7; i ++) pinMode (పిన్, OUTPUT) కోసం శూన్య సెటప్ ();; పిన్మోడ్ (పాచికలు, ఇన్పుట్); పిన్మోడ్ (రీసెట్, INPUT); డిజిటల్ రైట్ (పాచికలు, అధికం); డిజిటల్ రైట్ (రీసెట్, హై);
డిఫాల్ట్గా ఏడు సెగ్మెంట్ డిస్ప్లేలో సున్నా ప్రదర్శించడానికి మేము ఒక కోడ్ను పంపుతాము.
int టెంప్ = 0x40; (int i = 0; i <7; i ++) {int temp1 = temp & 0x01; డిజిటల్ రైట్ (పిన్, టెంప్ 1); టెంప్ = టెంప్ >> 1; }
ఇప్పుడు మనం యాదృచ్ఛిక సంఖ్యను పొందడానికి రాండ్ () ఫంక్షన్ను నడుపుతున్నాము.
int టెంప్ = రాండ్ ();
మరియు మేము పాచికల బటన్ ప్రోగ్రామ్ను నొక్కినప్పుడు మొదట ఈ యాదృచ్ఛిక సంఖ్యను మ్యాప్ చేసి, ఆపై బిట్ వారీగా ఆపరేటర్ ఉపయోగించి ఏడు సెగ్మెంట్ డిస్ప్లేకి సంఖ్యను పంపండి.
if (DigitalRead (పాచికలు) == 0) {int k = temp% 6; టెంప్ = అంకె; వేచి (); (int i = 0; i <7; i ++) {int temp1 = temp & 0x01; డిజిటల్ రైట్ (పిన్, టెంప్ 1); టెంప్ = టెంప్ >> 1; } ఆలస్యం (200); }
రీసెట్ బటన్ కోసం అదే.
ఈ ప్రోగ్రామ్లో మేము ఒకేసారి ఒకే బిట్ను పంపుతాము. ఇక్కడ మేము ప్రతి సెగ్మెంట్కు ఒక్కొక్కటిగా డేటాను పంపడానికి 7 సమయం నడుస్తున్న ఫర్ ఫర్ లూప్ను వర్తింపజేస్తాము.