کوډ ولټوئ

د ۹۸-۶ درس: د آردوینو سره د سي سا LED لوبه

د ۹۸-۶ درس: د آردوینو سره د سي سا LED لوبه

د سیسا LED پروژه یو کلاسیک پیلوونکی تمرین دی چې د آردوینو پروګرام کولو کې یو له خورا مهم مفکورو څخه درس ورکوي: د دوو محصولاتو په وخت شوي ترتیب سره بدلول. یوازې د دوو LEDs، دوو مقاومتونو، او یو څو جمپر تارونو په کارولو سره، تاسو به یو سرکټ جوړ کړئ چې پکې یو شنه LED او یو سور LED په نوبت سره روښانه کیږي، د لوبې ډګر د سیسا د پورته او ښکته حرکت نقل کوي. دا یو ساده جوړښت دی، مګر دا د اصلي ودانیزو بلاکونو معرفي کوي — د پین تعریفونه، د وخت ثابتونه، او ترتیبي digitalWrite() غوښتنې — چې تقریبا په هر آردوینو سکیچ کې ښکاري چې تاسو به یې لیکئ.

two LEDs with resistor on breadboard connected to Arduino
two LEDs with resistor on breadboard connected to Arduino

ځکه چې د سیسا نمونه واقعیا یوازې "یو شی روښانه کړه، بند یې کړه، بل شی روښانه کړه، بند یې کړه، تکرار یې کړه" ده، ورته جوړښت په لسګونو عملي کارونو کې پراخیږي. دلته څو نظرونه دي چې ستاسو تصور ته جرقه ورکړي:

  • بدلیدونکي اشاره کوونکي څراغونه — د کنټرول پینل کې د "خوندي / خبرتیا" جوړه چې شاته او مخ ته بدلیږي.
  • د ریل پټلۍ کراسینګ سمولیشن — دوه څراغونه چې په نوبت سره ځلیږي لکه څنګه چې یو ریل ګاډی نږدې کیږي.
  • دوه لین لارښود نښه — د "دې لارې لاړ شه / هغې لارې لاړ شه" د تیر ښودنه د لارې یا پارکینګ ځای لپاره.
  • د رخصتیو سینګار — سور او شنه LEDs د جشن ځلیدونکي اثر لپاره ځایونه بدلوي.
  • د زده کړې بنسټ — دلته د وخت او ترتیب مهارتونه هغه ورته دي چې تاسو به وروسته د ترافیک څراغونو، د تګ څراغونو، او څو-LED انیمیشنونو لپاره وکاروئ.

د سیسا اثر څنګه کار کوي

یو LED یو ډایوډ دی چې رڼا خپروي، او د هغې سمبول یو مثلث دی چې یوې کرښې ته اشاره کوي. هواره کرښه کاتوډ (منفي) ده، او د مثلث شا انوډ (مثبت) ده. په فزیکي LED کې، اوږده پښه انوډ ده او لنډه، هواره اړخه پښه کاتوډ ده. جریان له انوډ څخه کاتوډ ته بهیږي، نو انوډ ستاسو د آردوینو پین ته نښلول کیږي او کاتوډ د یو مقاومت له لارې ځمکې ته نښلول کیږي (په ویډیو کې د 02:29 په وخت).

مقاومت مهم دی. یو معمولي کوچنی LED غواړي نږدې 2 V د هغې په اوږدو کې او نږدې 10 mA جریان. که ستاسو آردوینو 5 V چمتو کوي، پاتې 3 V باید د مقاومت لخوا کم شي. د اوهم قانون په کارولو سره، R = V / I = 3 V / 0.01 A = 300 Ω. له نږدې 300 Ω څخه تر 1000 Ω پورې هر څه به کار وکړي — لوړ ارزښتونه یوازې LED کم رڼا کوي (په ویډیو کې د 03:49 په وخت).

د سیسا لپاره، دوه LEDs په ورته ډول تار شوي دي: هر انوډ خپل آردوینو پین ته ځي، او هر کاتوډ د خپل مقاومت له لارې یو شریک ځمکې ریل ته ځي. د دوی ترمنځ یوازینی توپیر دا دی چې دوی کوم پین ته نښلول شوي دي.

هډوانه او اجزا

  • 1 × آردوینو بورډ (Uno، Nano، Mega، یا ورته)
  • 2 × LEDs — یو سور، یو شنه (هر دوه رنګونه کار کوي)
  • 2 × مقاومتونه، 300 Ω تر 1000 Ω (220 Ω یا 330 Ω معمول انتخابونه دي)
  • 1 × بریډبورډ
  • جمپر تارونه (DuPont تارونه)
  • د پروګرام کولو او بریښنا لپاره USB کیبل

دا ټول دي — هیڅ پش بټن، هیڅ پوټینشیومیټر، هیڅ سینسر نلري. دا په قصد سره ترټولو لږ ممکن د پرزو لیست دی ترڅو تاسو په بشپړ ډول د کوډ منطق باندې تمرکز وکړئ.

د تارونو لارښود

Arduino schematic for two LEDs see saw
Arduino schematic for two LEDs see saw
Arduino wiring for two LEDs see saw
Arduino wiring for two LEDs see saw

تارونه سیمیټریک دي او تعقیب یې اسانه دي. دواړه LEDs په بریډبورډ کې دننه کړئ. د شنې LED انوډ (اوږده پښه) آردوینو پین 2 سره وصل کړئ او د سور LED انوډ آردوینو پین 3 سره وصل کړئ. هر کاتوډ (لنډه پښه) د خپل مقاومت یوې پای ته نښلول کیږي، او د دواړو مقاومتونو بله پای یو شریک ریل سره یوځای کیږي چې د آردوینو GND پین ته ځي (په ویډیو کې د 27:45 په وخت).

ځکه چې دواړه LEDs ورته ځمکې ریل شریکوي، یوازې یو ځمکې تار د بریډبورډ څخه آردوینو ته بیرته اړین دی. دوه سیګنال تارونه — یو پین 2 ته، یو پین 3 ته — یوازینۍ اړیکې دي چې د دوو LEDs ترمنځ بدلیږي.

د کوډ تشریح

سکیچ په قصد سره لنډ دی نو هر کرښه معنی لري. دلته هغه برخې دي چې تاسو به واقعیا غواړئ تنظیم کړئ:

د پین تعریفونه

const int greenLEDPin = 2;//define a pin for green LED
const int redLEDPin = 3;//define a pin for red LED

دا دوه ثابتونه آردوینو ته وایي چې LEDs کوم پینونو سره نښلول شوي دي. که تاسو خپل LEDs مختلف پینونو ته تار کړي وي — لکه پین 8 او پین 9 — دا یوازینی ځای دی چې تاسو ورته اړتیا لرئ بدل کړئ. د const کلیمه معنی لري چې ارزښت د پروګرام د ژوند لپاره ثابت دی او وروسته په ناڅاپي ډول نشي لیکل کیدی.

د وخت ثابت

const int ON_TIME = 500;

دا یو واحد ارزښت کنټرولوي چې هر LED څومره وخت روښانه پاتې کیږي، په ملی ثانیو کې. د 500 ډیفالټ معنی دا ده چې هر LED د نیمې ثانیې لپاره روښانه وي، نو د شین-بیا-سور بشپړ دوره یوه ثانیه نیسي. دا 200 ته راټیټ کړئ د چټکې ځلیدو لپاره، یا دا 1000 ته لوړ کړئ د ورو، په قصدي ډول یوه ثانیه په هر LED ریتم لپاره (په ویډیو کې په 30:17). ځکه چې دواړه LEDs دا ثابت شریکوي، دوی تل په همغږۍ کې پاتې کیږي — ټوپک متوازن پاتې کیږي.

ترتیبات

د setup() دننه، دوه پینونه د pinMode() سره د outputs په توګه اعلان شوي، او سیریل مانیټر په 9600 baud کې پیل کیږي ترڅو تاسو وکولی شئ د LED حالت پیغامونه وګورئ چې تیریږي. دا یو ځل پرمخ ځي، کله چې بورډ بریښنا اخلي.

لوپ

د loop() فنکشن هغه ځای دی چې ټوپک پیښیږي. دا په ترتیب سره څلور کړنې ترسره کوي: شین LED روښانه کړئ، د ON_TIME ملی ثانیو انتظار وکړئ، دا بند کړئ، بیا د سور LED لپاره ورته وکړئ. کله چې لوپ پای ته ورسیږي، دا په اتوماتيک ډول له پورتنۍ برخې څخه بیا پیل کیږي — دا ټول "ټوپک" چلند دی. د حالت متغیر او د کتنې لپاره هیڅ شرط نشته، ځکه چې بڼه په بشپړ ډول ترتیبي ده.

ژوندی پروژه او مظاهره

یوځل چې کوډ پورته شي، تاسو به وګورئ چې شین LED د نیمې ثانیې لپاره روښانه کیږي، بیا سور LED، بیا شین، بې پایه. د سیریل مانیټر پرانیستل (Tools → Serial Monitor، یا Ctrl+Shift+M) "Green LED ON" او "Red LED ON" ښیي چې د بڼې د چلیدو په ترڅ کې چاپ شوي، کوم چې د دې تصدیق کولو لپاره یوه اسانه لاره ده چې وخت ستاسو د ټاکلو سره سمون لري.

هڅه وکړئ ON_TIME 200 ته بدل کړئ او بیا پورته کړئ — LEDs به د پام وړ ګړندي بدل شي. دا 1000 ته تنظیم کړئ او ټوپک به یو ورو، په قصدي ډول بدلون شي. تاسو کولی شئ Arduino له USB څخه جلا کړئ او دا د بیټرۍ یا 5 V اډاپټر څخه بریښنا ورکړئ؛ سکیچ په ورته ډول چلیږي ځکه چې دا لا دمخه د بورډ په حافظه کې ذخیره شوی دی.

د دې ویډیو اړوند پروژې

فصلونه

  • [00:00] د 10 Arduino LED پروژو کتنه
  • [01:22] د Arduino ګام په ګام کورس معرفي کول
  • [02:29] د LEDs پوهیدل: سمبول، انوډ، او کیتوډ
  • [03:49] د Ohm قانون سره د LED لړۍ مقاومت محاسبه کول
  • [27:32] د ټوپک LED پروژې معرفي کول
  • [27:45] د ټوپک پروژې لپاره د تارونو ډیاګرام
  • [28:28] د ټوپک کوډ تشریح کول
  • [30:06] د ټوپک مظاهره د مختلف وختونو سره
  • [30:47] د روانې رڼا پروژې کتنه
  • [36:41] د پش بټن په واسطه کنټرول شوې روانه رڼا
  • [42:25] د پوټینشیومیټر سره د LED ولتاژ بار میټر
  • [49:25] د Arduino ترافیک څراغ پروژه

انځورونه

Arduino wiring for two LEDs see saw
Arduino wiring for two LEDs see saw
Arduino schematic for two LEDs see saw
Arduino schematic for two LEDs see saw
330_ohm_resistor
330_ohm_resistor
دوه LEDs د مقاومت سره په بریډبورډ کې چې Arduino سره نښل شوي
دوه LEDs د مقاومت سره په بریډبورډ کې چې Arduino سره نښل شوي
938-Lessson 98-LED-6: Arduino code two LED, See-saw
ژبه: C++
This code has not been parsed yet. Please return to the admin panel to parse it.

هغه شیان چې تاسو ورته اړتیا لرئ

فایلونه📁

Arduino کتابتونونه (zip)

د کارونکي لارښود