የ Arduino ኮድ ለመጫን ቁልፍ የ LED ን ለማብራት እና ለማጥፋት
ይህ አጋዥ ስልጠና ኤልኢዲን ለመቆጣጠር የግፊት ቁልፍን እንዴት መጠቀም እንደሚቻል ይመራዎታል፣ ቁልፉ ሲጫን ኤልኢዲውን ያብራል እና ሲለቀቅ ያጠፋል። ይህ ቀላል ፕሮጀክት ከአርዱኖ ፕሮግራሚንግ እና መሰረታዊ የኤሌክትሮኒክስ ክፍሎች ጋር ተግባራዊ ልምድ ለማግኘት ለሚፈልጉ ፍጹም ጀማሪዎች ተስማሚ ነው።
በዚህ መመሪያ ውስጥ፣ አስፈላጊዎቹን የሃርድዌር ክፍሎች፣ የሽቦ መገጣጠሚያ መመሪያዎች እና ፕሮጀክትዎን ወደ ህይወት ለማምጣት የሚያስፈልገውን የአርዱኖ ኮድ እንሸፍናለን። ይህንን በተግባር ማየት ከፈለጉ፣ ለእይታ ማብራሪያ ቪዲዮውን መመልከትዎን ያረጋግጡ (በቪዲዮው ላይ በ00:00)።
ሃርድዌር ተብራርቷል
ለዚህ ፕሮጀክት የሚያስፈልጉ ዋና ዋና ክፍሎች ኤልኢዲ፣ የግፊት ቁልፍ፣ ተከላካይ እና የአርዱኖ ቦርድ ያካትታሉ። ኤልኢዲ (ብርሃን አመንጪ ዳዮድ) ሁለት እግሮች አሉት፡ ረጅሙ አኖድ (አዎንታዊ) ሲሆን አጭሩ ደግሞ ካቶድ (አሉታዊ) ነው። የግፊት ቁልፍ ሁለት ወይም አራት ፒኖች ሊኖሩት ይችላል፣ ይህም በአንድ ጫና ሁለት ሽቦዎችን ወይም አንድ ሽቦን ብቻ እንዲያገናኝ ያስችለዋል።

ተከላካዩ፣ በተለምዶ 680 ኦም የሆነ፣ በኤልኢዲው ውስጥ የሚፈሰውን ጅረት ለመገደብ እንዳይቃጠል ለመከላከል ያገለግላል። የግፊት ቁልፉ ሲጫን፣ በአርዱኖው ላይ ያለውን የግቤት ፒን ከመሬት ጋር ያገናኛል፣ ይህም ሁኔታውን እንድናነብ እና ኤልኢዲውን በዚሁ መሰረት እንድንቆጣጠር ያስችለናል።
የዳታሼት ዝርዝሮች
| አምራች | ጄኔሪክ |
|---|---|
| የክፍል ቁጥር | ኤልኢዲ፣ የግፊት ቁልፍ፣ ተከላካይ |
| የኤልኢዲ ፎርዋርድ ቮልቴጅ | 2.0-3.3 ቪ (በተለምዶ) |
| የኤልኢዲ ፎርዋርድ ጅረት | 20 ሚኤ (ከፍተኛ) |
| የተከላካይ ዋጋ | 680 Ω |
| የግፊት ቁልፍ ቮልቴጅ ደረጃ | 12 ቪ (ከፍተኛ) |
- ለኤልኢዲው ጅረት የሚገድብ ተከላካይ ይጠቀሙ (በተለምዶ 680 ኦም)።
- ኤልኢዲውን ሲያገናኙ ትክክለኛውን የፖላሪቲ አቅጣጫ ያረጋግጡ።
- ሁኔታውን በትክክል ለማንበብ የግፊት ቁልፉን ከመሬት ጋር ያገናኙ።
- የውጭ ተከላካዮችን አስፈላጊነት ለማስወገድ የግቤት ፑል-አፕ ተከላካዮችን ይጠቀሙ።
- አርዱኖውን ከማብራትዎ በፊት ግንኙነቶችዎን ይሞክሩ።
የሽቦ መገጣጠሚያ መመሪያዎች

ወረዳውን ለማገናኘት፣ የኤልኢዲውን ረጅም እግር (አኖድ) ከብሬድቦርዱ ጋር ያገናኙ እና ከዚያ በሆላ ቢጫ ሽቦ በመጠቀም በአርዱኖው ላይ ካለው ፒን 10 ጋር ያገናኙት። አጭሩ እግር (ካቶድ) ከ680-ኦም ተከላካይ አንድ ጫፍ ጋር መገናኘት አለበት፣ የተከላካዩ ሌላኛው ጫፍ ደግሞ በብሬድቦርዱ ላይ ካለው የመሬት ሀዲድ ጋር ይገናኛል።
ለግፊት ቁልፉ፣ አንድ ፒን ከመሬት ጋር ተያይዞ ወደ ብሬድቦርዱ ያስገቡት። የግፊት ቁልፉን ሌላ ፒን በብርቱካናማ ሽቦ በመጠቀም በአርዱኖው ላይ ካለው ፒን 2 ጋር ያገናኙ። በመጨረሻም፣ የአርዱኖው የመሬት እና 5ቪ ፒኖች ክፍሎቹን ለማብራት በብሬድቦርዱ ላይ ካሉት የመሬት እና አዎንታዊ ሀዲዶች ጋር መገናኘታቸውን ያረጋግጡ።
የኮድ ምሳሌዎች እና ማብራሪያ
የአርዱኖ ኮድ ሁለት ዋና ዋና ተግባራትን ያካትታል፡ setup() እና loop()። በsetup() ተግባር ውስጥ፣ ለቁልፉ እና ለኤልኢዲው የፒን ሁነታዎችን እንገልጻለን። አግባብነት ያለው ክፍል እነሆ፡
void setup() {
pinMode(2, INPUT_PULLUP);// ፒን ሁለትን ለግፊት ቁልፍ እንደ ግቤት ይግለጹ
pinMode(10, OUTPUT);// ፒን 10ን እንደ ውፅዓት ይግለጹ
}
በloop() ተግባር ውስጥ፣ የቁልፉን ሁኔታ ያለማቋረጥ እናነባለን እና ኤልኢዲውን በዚሁ መሰረት እንቆጣጠራለን። የሚከተለው ክፍል የቁልፉን ሁኔታ እንዴት እንደምናነብ ያሳያል፡
void loop() {
int pushed = digitalRead(2);// ፒን 2ን ያንብቡ እና ውጤቱን በ"pushed" ተለዋዋጭ ውስጥ ያስቀምጡ
if(pushed == LOW){
digitalWrite(10, HIGH);// ፒን 10ን HIGH ያድርጉ (5ቪ ይስጡት)
}else{
digitalWrite(10, LOW);// ፒን 10ን ወደ LOW ወይም ዜሮ ቮልት ያዘጋጁ
}
}
ይህ ኮድ ቁልፉ ከተጫነ (LOW ሁኔታ) ያረጋግጣል እና ወደ ፒን 10 HIGH ሲግናል በመላክ ኤልኢዲውን ያበራል። ቁልፉ ሲለቀቅ፣ ፒን 10ን ወደ LOW ያዘጋጃል፣ ኤልኢዲውን ያጠፋል። ሙሉ ኮዱ ለማጣቀሻዎ ከጽሁፉ በታች ተጭኗል።
ማሳያ / ምን እንደሚጠበቅ
ቁልፉን ሲገፉ፣ ኤልኢዲው ማብራት አለበት፣ እና ሲለቀቁ፣ ኤልኢዲው መጥፋት አለበት። ይህ ቀላል መስተጋብር ዲጂታል ግቤት እና ውፅዓት በአርዱኖ ፕሮግራሚንግ ውስጥ እንዴት እንደሚሰሩ ያሳያል። የተለመዱ ችግሮች የተሳሳተ ሽቦ መገጣጠም ወይም ከኤልኢዲው ጋር ጅረት የሚገድብ ተከላካይ አለመጠቀም ያካትታሉ፣ ይህም ሊያበላሸው ይችላል (በቪዲዮው ላይ በ04:00)።
የቪዲዮ ጊዜ ምልክቶች
- 00:00 - መግቢያ እና የፕሮጀክት አጠቃላይ እይታ
- 01:30 - የሃርድዌር ክፍሎች ማብራሪያ
- 03:00 - የሽቦ መገጣጠሚያ መመሪያዎች
- 05:00 - የኮድ ማብራሪያ
- 06:30 - ማሳያ
/*
* This is the Arduino code for a push button to turn an LED ON and OFF.
* The output pin 10 is connected to a relay.
* Watch video instructions on YouTube: http://youtu.be/2WwedCRwmgA
* get code and wiring https://robojax.com/RJT21
*
* Written by Ahmad Shamshiri for Robojax Video, www.Robojax.com
* Permission granted to share this code, given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
Be careful working with AC; it is dangerous. Disconnect from AC power when working and wear protective gloves when touching AC components.
* https://robojax.com
*
*/
void setup() {
pinMode(2, INPUT_PULLUP);// define pin two as input for push button
pinMode(10, OUTPUT);// define pin 10 as output
}
void loop() {
int pushed= digitalRead(2);// read pin 2 and put the result in the "pushed" variable
if(pushed== LOW){
digitalWrite(10, HIGH);// if pushed is equal LOW, turn the pin 10 HIGH (give it 5v)
}else{
digitalWrite(10, LOW);// else set pin 10 to low or zero volt
}
}
ምንጮች እና ምንጮች
አሁን ምንም ምንጮች የለም።
ፋይሎች📁
አንድ ፋይል የለም።