- అవసరమైన పదార్థాలు:
- సర్క్యూట్ రేఖాచిత్రం:
- ఆర్డునో కాలిక్యులేటర్ ప్రోగ్రామ్:
- ఆర్డునో కాలిక్యులేటర్ యొక్క అనుకరణ:
- ఆర్డునో కాలిక్యులేటర్ యొక్క పని:
ప్రోగ్రామింగ్ ఎల్లప్పుడూ సరదాగా ఉంటుంది మరియు మీరు ఎంబెడెడ్ ప్రోగ్రామింగ్తో ప్రారంభిస్తుంటే ఆర్డునో అద్భుతమైన వేదిక. ఈ ట్యుటోరియల్లో ఆర్డునోతో మన స్వంత కాలిక్యులేటర్ను నిర్మిస్తాం. కీప్యాడ్ (4 × 4 కీప్యాడ్) ద్వారా విలువలను పంపవచ్చు మరియు ఫలితాన్ని ఎల్సిడి తెరపై చూడవచ్చు (16 × 2 డాట్-మ్యాట్రిక్స్). ఈ కాలిక్యులేటర్ మొత్తం సంఖ్యలతో సంకలనం, వ్యవకలనం, గుణకారం మరియు విభజన వంటి సాధారణ కార్యకలాపాలను చేయగలదు. మీరు భావనను అర్థం చేసుకున్న తర్వాత, ఆర్డునో యొక్క అంతర్నిర్మిత ఫంక్షన్లతో శాస్త్రీయ విధులను కూడా అమలు చేయవచ్చు.
ఈ ప్రాజెక్ట్ చివరలో మీరు ఆర్డునోతో 16x2 ఎల్సిడి మరియు కీప్యాడ్ను ఎలా ఉపయోగించాలో మీకు తెలుస్తుంది మరియు సులభంగా అందుబాటులో ఉన్న లైబ్రరీలను ఉపయోగించి వాటి కోసం ప్రోగ్రామ్ చేయడం ఎంత సులభం. ఒక నిర్దిష్ట పనిని నెరవేర్చడానికి మీ ఆర్డునోను ఎలా ప్రోగ్రామ్ చేయాలో కూడా మీరు అర్థం చేసుకుంటారు.
అవసరమైన పదార్థాలు:
- ఆర్డునో యునో (ఏదైనా వెర్షన్ పని చేస్తుంది)
- 16 × 2 ఎల్సిడి డిస్ప్లే
- 4 × 4 కీప్యాడ్
- 9 వి బ్యాటరీ
- బ్రెడ్బోర్డ్ మరియు కనెక్ట్ వైర్లు
సర్క్యూట్ రేఖాచిత్రం:
ఈ ఆర్డునో కాలిక్యులేటర్ ప్రాజెక్ట్ యొక్క పూర్తి సర్క్యూట్ రేఖాచిత్రం పైన ఇవ్వబడింది. సర్క్యూట్ రేఖాచిత్రంలో చూపిన + 5 వి మరియు గ్రౌండ్ కనెక్షన్ను ఆర్డునో యొక్క 5 వి మరియు గ్రౌండ్ పిన్ నుండి పొందవచ్చు. Arduino ను మీ ల్యాప్టాప్ నుండి లేదా DC జాక్ ద్వారా 12V అడాప్టర్ లేదా 9V బ్యాటరీని ఉపయోగించి శక్తినివ్వవచ్చు.
మేము ఎల్సిడిని ఆర్డునోతో 4-బిట్ మోడ్లో నిర్వహిస్తున్నాము కాబట్టి ఎల్సిడి యొక్క చివరి నాలుగు డేటా బిట్లు మాత్రమే ఆర్డునోతో అనుసంధానించబడి ఉన్నాయి. కీబోర్డ్లో 8 అవుట్పుట్ పిన్లు ఉంటాయి, వీటిని పైన చూపిన విధంగా పిన్ 0 నుండి పిన్ 7 వరకు కనెక్ట్ చేయాలి. Arduino తో మీ కనెక్షన్ను ధృవీకరించడానికి మీరు ఈ క్రింది కనెక్షన్ పట్టికను ఉపయోగించవచ్చు, మీరు Arduino తో 4x4 కీప్యాడ్ ఇంటర్ఫేసింగ్ను కూడా తనిఖీ చేయవచ్చు.
ఆర్డునో పిన్ పేరు: |
సంబంధం కలిగిఉన్నది: |
డి 0 |
కీబోర్డ్ యొక్క 1 స్టంప్ పిన్ |
డి 1 |
కీబోర్డ్ యొక్క 2 వ పిన్ |
డి 2 |
కీబోర్డ్ యొక్క 3 వ పిన్ |
డి 3 |
కీబోర్డ్ యొక్క 4 వ పిన్ |
డి 4 |
కీబోర్డ్ యొక్క 5 వ పిన్ |
డి 5 |
కీబోర్డ్ యొక్క 6 వ పిన్ |
డి 6 |
కీబోర్డ్ యొక్క 7 వ పిన్ |
డి 7 |
కీబోర్డ్ యొక్క 8 వ పిన్ |
డి 8 |
ఎల్సిడి ఎంచుకున్న పిన్ను నమోదు చేయండి (పిన్ 4) |
డి 9 |
పిన్ ఎల్సిడి (పిన్ 6) ను ప్రారంభించండి |
డి 10 |
డేటా పిన్ 4 (పిన్ 11) |
డి 11 |
డేటా పిన్ 4 (పిన్ 11) |
డి 12 |
డేటా పిన్ 4 (పిన్ 11) |
డి 13 |
డేటా పిన్ 4 (పిన్ 11) |
+ 5 వి |
LCD యొక్క Vdd పిన్తో కనెక్ట్ చేయబడింది (పిన్ 2) |
గ్రౌండ్ |
LCD యొక్క Vss, Vee మరియు RW పిన్తో అనుసంధానించబడింది (పిన్ 1,3 మరియు 5) |
పిన్ 0 మరియు పిన్ 1 కి అనుసంధానించబడిన ఏదైనా ఉంటే ప్రోగ్రామ్ను అప్లోడ్ చేసేటప్పుడు కొన్ని ఆర్డునో బోర్డులు లోపం చూపవచ్చు, కాబట్టి మీరు ఏదైనా అనుభవిస్తే ప్రోగ్రామ్ను అప్లోడ్ చేసేటప్పుడు కీప్యాడ్ను తొలగించండి.
మీ కనెక్షన్లు పూర్తయిన తర్వాత మీ హార్డ్వేర్ ఈ విధంగా కనిపిస్తుంది
ఆర్డునో కాలిక్యులేటర్ ప్రోగ్రామ్:
పూర్తి Arduino ప్రోగ్రామ్ను ఈ ప్రాజెక్ట్ కోసం ఈ ప్రాజెక్ట్ చివరలో ఇవ్వబడుతుంది. కోడ్ చిన్న అర్ధవంతమైన భాగాలుగా విభజించబడింది మరియు క్రింద వివరించబడింది.
ఇంతకు ముందే చెప్పినట్లుగా, లైబ్రరీలను ఉపయోగించి ఆర్డునోతో ఎల్సిడి మరియు కీప్యాడ్ను ఇంటర్ఫేస్ చేయబోతున్నాం. కాబట్టి మొదట వాటిని మా Arduino IDE కి చేర్చుదాము. LCD కోసం లైబ్రరీ ఇప్పటికే మీ Arduino లో అప్రమేయంగా చేర్చబడింది కాబట్టి మేము దాని గురించి ఆందోళన చెందాల్సిన అవసరం లేదు. కీప్యాడ్ లైబ్రరీ కోసం గితుబ్ నుండి డౌన్లోడ్ చేయడానికి లింక్పై క్లిక్ చేయండి. మీరు ఒక జిప్ ఫైల్ను పొందుతారు, ఆపై స్కెచ్ -> లైబ్రరీని చేర్చండి ->.ZIP ఫైల్ను జోడించి, డౌన్లోడ్ చేసిన ఈ ఫైల్కు స్థానాన్ని సూచించండి. పూర్తయిన తర్వాత మనమంతా ప్రోగ్రామింగ్ కోసం సిద్ధంగా ఉన్నాము.
కీప్యాడ్ను ఉపయోగించడం కోసం మేము లైబ్రరీని ఉపయోగించినప్పటికీ, కీప్యాడ్ గురించి ఆర్డునోకు కొన్ని వివరాలను (క్రింద చూపించాం) పేర్కొనాలి. వేరియబుల్ ROWS మరియు COLS మా కీప్యాడ్లో ఎన్ని వరుసలు మరియు నిలువు వరుసలను కలిగి ఉన్నాయో తెలియజేస్తుంది మరియు కీబోర్డ్లో కీలు ఉన్న క్రమాన్ని కీ మ్యాప్ చూపిస్తుంది. ఈ ప్రాజెక్ట్లో నేను ఉపయోగిస్తున్న కీప్యాడ్ కీ మ్యాప్కు దిగువ ఉన్నట్లుగా కనిపిస్తుంది.
కీప్యాడ్ వేరియబుల్ అర్రే రోపిన్స్ మరియు కోల్పిన్లను ఉపయోగించి ఏ పిన్లకు కనెక్ట్ చేయబడిందో మనం క్రింద పేర్కొన్నాము.
const బైట్ ROWS = 4; // నాలుగు వరుసలు కాన్ బైట్ COLS = 4; // మూడు నిలువు వరుసలు // కీమాప్ చార్ కీలను నిర్వచించండి = {{'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, { '7', '8', '9', 'సి'}, {'*', '0', '#', 'డి'}}; బైట్ rowPins = {0, 1, 2, 3}; // కీప్యాడ్ ROW0, ROW1, ROW2 మరియు ROW3 లను ఈ ఆర్డునో పిన్లకు కనెక్ట్ చేయండి. బైట్ కోల్పిన్స్ = {4, 5, 6, 7}; // ఈ ఆర్డునో పిన్లకు కీప్యాడ్ COL0, COL1 మరియు COL2 ను కనెక్ట్ చేయండి.
మేము ఏ రకమైన కీప్యాడ్ను ఉపయోగిస్తున్నామో మరియు అది ఎలా కనెక్ట్ చేయబడిందో పేర్కొన్న తర్వాత, కింది పంక్తిని ఉపయోగించి ఆ వివరాలను ఉపయోగించి కీప్యాడ్ను సృష్టించవచ్చు.
కీప్యాడ్ kpd = కీప్యాడ్ (makeKeymap (కీలు), rowPins, colPins, ROWS, COLS); // కీప్యాడ్ను సృష్టించండి
అదేవిధంగా ఎల్సిడి యొక్క ఆర్డునో యొక్క పిన్స్ ఏకి అనుసంధానించబడిందో కూడా మనం చెప్పాలి. మా సర్క్యూట్ రేఖాచిత్రం ప్రకారం నిర్వచనాలు క్రింద ఉంటాయి
const int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // LCD అనుసంధానించబడిన పిన్స్ లిక్విడ్ క్రిస్టల్ lcd (rs, en, d4, d5, d6, d7); // LCD ని సృష్టించండి
సెటప్ ఫంక్షన్ లోపల, మేము ప్రాజెక్ట్ పేరును ప్రదర్శిస్తాము, ఆపై ప్రధాన ప్రాజెక్ట్ ఉన్న చోట లూప్కు వెళ్తాము.
ప్రాథమికంగా, కీప్యాడ్లో ఏదైనా టైప్ చేయబడుతుందో లేదో మనం తనిఖీ చేయాలి, టైప్ చేస్తే మనం టైప్ చేసినదాన్ని గుర్తించి, ఆపై “=” నొక్కినప్పుడు దానిని వేరియబుల్గా మార్చాలి, ఫలితాన్ని లెక్కించాలి మరియు చివరికి దానిని ప్రదర్శించాలి LCD లో. క్రింద చూపిన విధంగా లూప్ ఫంక్షన్ లోపల ఇది ఖచ్చితంగా జరుగుతుంది
key = kpd.getKey (); // నొక్కిన కీ విలువను చార్లో నిల్వ చేస్తే (కీ! = NO_KEY) డిటెక్ట్బటన్లు (); if (result == true) లెక్కించు ఫలితం (); డిస్ప్లే ఫలితం ();
ప్రతి ఫంక్షన్ లోపల ఏమి జరుగుతుందో వ్యాఖ్య పంక్తులను ఉపయోగించి వివరించబడుతుంది, దిగువ పూర్తి కోడ్ ద్వారా వెళ్ళండి, వాస్తవానికి ఎలా పనిచేస్తుందో అర్థం చేసుకోవడానికి దానితో ఫిడేల్ చేయండి. మీకు ఒక నిర్దిష్ట పంక్తిపై ఏదైనా సందేహం ఉంటే, వ్యాఖ్య విభాగం లేదా ఫోరమ్లను ఉపయోగించడానికి సంకోచించకండి.
ఆర్డునో కాలిక్యులేటర్ యొక్క అనుకరణ:
ప్రోటీయస్ సాఫ్ట్వేర్ను ఉపయోగించి ప్రాజెక్ట్ను అనుకరించడానికి కూడా మేము ప్రయత్నించవచ్చు. ప్రోటీస్కు స్వంతంగా ఆర్డునో భాగం లేదు, కానీ సులభంగా డౌన్లోడ్ చేసుకొని దాని లైబ్రరీకి జోడించవచ్చు. మీరు ప్రోటీస్పై ఆర్డునో భాగాన్ని కలిగి ఉంటే, సర్క్యూట్ రేఖాచిత్రంలో చూపిన విధంగా కనెక్షన్ చేయడానికి ఆల్ఫాన్యూమరిక్ ఎల్సిడి మరియు కీప్యాడ్ను జోడించండి.
అప్పుడు ఇక్కడ నుండి హెక్స్ ఫైల్ను డౌన్లోడ్ చేసి, ప్రోటీయస్లోని బోర్డుపై డబుల్ క్లిక్ చేయడం ద్వారా ఆర్డునోకు జోడించి, డౌన్లోడ్ చేసిన ఈ హెక్స్ ఫైల్కు “ప్రోగ్రామ్ ఫైల్” ను సూచించండి. అనుకరణ యొక్క స్నాప్ షాట్ క్రింద చూపబడింది, పూర్తి పని క్రింది వీడియోలో చూపబడింది.
గమనిక: ఇచ్చిన హెక్స్ ఫైల్ క్రింద ఇవ్వబడిన ప్రోగ్రామ్ యొక్క అసలైనది కాదు. అనుకరణ కీప్యాడ్ యొక్క కీ మ్యాప్ మరియు వాస్తవ హార్డ్వేర్ కీప్యాడ్ భిన్నంగా ఉన్నందున ఇది సవరించబడింది.
ఆర్డునో కాలిక్యులేటర్ యొక్క పని:
సర్క్యూట్ రేఖాచిత్రం ప్రకారం కనెక్షన్లను చేయండి మరియు దిగువ కోడ్ను అప్లోడ్ చేయండి. ఇది లోపం చూపిస్తే, పైన ఇచ్చిన సూచనల ప్రకారం మీరు లైబ్రరీని జోడించారని నిర్ధారించుకోండి. మీ హార్డ్వేర్తో సమస్య ఉందో లేదో తనిఖీ చేయడానికి మీరు అనుకరణను కూడా ప్రయత్నించవచ్చు. ప్రతిదీ అనుకున్నట్లుగానే జరిగితే, మీ హార్డ్వేర్ ఈ విధంగా LCD తో ప్రదర్శించబడుతుంది
ఇక్కడ ఉపయోగించిన కీప్యాడ్లో సరైన గుర్తులు లేనందున నేను క్రింద జాబితా చేసిన విధంగా ఆల్ఫాబెట్స్ను ఆపరేటర్లుగా భావించాను
కీప్యాడ్లో అక్షరం |
అని భావించారు |
“ఎ” |
చేరిక (+) |
“బి” |
వ్యవకలనం (-) |
“సి” |
గుణకారం (*) |
“డి” |
విభజన (/) |
“*” |
క్లియర్ (సి) |
“#” |
సమానం (=) |
ప్రతి బటన్ వాస్తవానికి ప్రాతినిధ్యం వహిస్తున్న దానిపై వ్రాయడానికి మీరు మార్కర్ను ఉపయోగించవచ్చు.
అది పూర్తయిన తర్వాత, మీరు నేరుగా కాలిక్యులేటర్ను ఉపయోగించడం ప్రారంభించవచ్చు. సంఖ్యను టైప్ చేస్తుంది మరియు రెండవ పంక్తిలో కనిపిస్తుంది ఒపెరాండ్ నొక్కండి మరియు మీ రెండవ సంఖ్యను టైప్ చేసి చివరకు మీ ఫలితాన్ని పొందడానికి “#” కీని నొక్కండి. మీరు ఈ టచ్స్క్రీన్ ఆధారిత ఆర్డునో కాలిక్యులేటర్ను నిర్మించడానికి కూడా ప్రయత్నించవచ్చు.