আমরা পূর্বের প্রজেক্টে প্রোগ্রাম আপলোড করে আডুইনো বোর্ডের এল.ই.ডি. জ্বালিয়েছি। এই প্রজেক্টে এল.ই.ডি. এডভান্স প্রোগ্রাম তৈরি করবো।
প্রয়োজনীয় জিনিস-পত্র
- আরডুইনো ইউ.এন.ও.
- আরডুইনো IDE
- ইউ.এস.বি. A to B ক্যাবল
- ব্রেডবোর্ড
- এল.ই.ডি.
- 220Ω রেজিস্টর
- ব্রেডবোর্ড জাম্পার (মেল টু মেল)
প্রোগ্রাম
প্রথমে আমরা পূর্বের প্রোগ্রামটি রান করাবো তবে এবার আরডুইনোর 13 নম্বর পিনে এক্সটার্নাল এল.ই.ডি. সংযোগ করবো।
![আরডুইনো এল.ই.ডি. বিলিংক](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/led-blink.gif)
প্রোগ্রাম ১:
/* * Program 1 * LED Blink * www.eeebangla.com * https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1 */ void setup() { // put your setup code here, to run once: pinMode(13, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); }
void setup()
void setup(){} এর মধ্যে যে প্রোগ্রাম কোড থাকবে তা আরডুইনো হার্ডওয়্যার প্রতি বার পাওয়ার দেয়ার পর এবং রিসেট করার পর রান করবে।
pinMode(13, OUTPUT); এখানে pinMode ফাংশনের মাধ্যমে 13 নম্বর পিনকে আউটপুট হিসেবে সেট করা হয়েছে। ইনপুট হিসেবে সেট করতে চাইলে OUTPUT এর স্থানে INPUT লিখতে হবে।
void loop()
এই অংশে যে প্রোগ্রাম কোড থাকবে তা বার-বার লুপ ঘুরতে থাকবে।
digitalWrite() ফাংশনের মাধ্যমে 13 নম্বর পিনকে HIGH এবং LOW করা হয়েছে।
delay() ফাংশন দিয়ে প্রোগ্রামের পরবর্তী অংশে যাওয়ার পূর্বে কিছুটা বিরতি দেয়া হয়েছে। এই ফাংশনে দেয়া সংখ্যাটি মিলি সেকেন্ড এককে।
এখন আমরা প্রোগ্রাম এবং ডায়াগ্রাম সামান্য পরিবর্তন করে 12 নম্বর পিনে এল.ই.ডি. বিলিংক করবো।
প্রোগ্রাম ২:
/* * Program 2 * LED Blink * www.eeebangla.com * https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1 */ void setup() { // put your setup code here, to run once: pinMode(12, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(12, HIGH); delay(1000); digitalWrite(12, LOW); delay(1000); }
ডায়াগ্রাম
![আরডুইনো এল.ই.ডি. বিলিংক 12 নম্বর পিনে](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/arduino-led-blink-at-pin-12.gif)
উপরের কোড এবং ডায়াগ্রাম অনুসারে সেট-আপ করলে এল.ই.ডি. পূর্বের মতই জ্বলবে তবে এবার 12 নম্বর পিনের মাধ্যমে। এভাবে অন্য সব ইনপুট/আউটপুট পিনকে হাই/লো করে এল.ই.ডি. জ্বালানো যাবে।
এখন আমরা নিচের ডায়াগ্রাম অনুসারে এল.ই.ডি. সংযোগ করে এল.ই.ডি. বিলিংক ইফেক্ট তৈরি করবো।
![আরডুইনো এল.ই.ডি. বিলিংক 2-13 নম্বর পিনে](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/arduino-12-led-diagram.jpg)
ব্রেডবোর্ড ডায়াগ্রাম:
![ব্রেডবোর্ড ডায়াগ্রাম](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/breadboard-diagram.jpg)
প্রোগ্রাম ৩:
/* * Program 3 * LED Blink * www.eeebangla.com * https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1 */ int i; int led[]={2,3,4,5,6,7,8,9,10,11,12,13}; void setup() { for(i=0;i<12;i++){ pinMode(led[i],OUTPUT); } } void loop() { for(i=0;i<12;i++){ digitalWrite(led[i],HIGH); } delay(500); for(i=0;i<12;i++){ digitalWrite(led[i],LOW); } delay(500); }
উপরের প্রোগ্রাম রান করালে 2 থেকে 13 নম্বর পর্যন্ত 12 টি এল.ই.ডি. একসাথে জ্বলবে আবার এক সেকেন্ড পর নিভে যাবে।
![আরডুইনো এল.ই.ডি. বিলিংক 2 - 12 নম্বর পিন](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/arduino-12-led-blink.gif)
প্রোগ্রাম ৪:
/* * Program 4 * LED Blink * www.eeebangla.com * https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1 */ int i; int led[]={2,3,4,5,6,7,8,9,10,11,12,13}; void setup() { for(i=0;i<12;i++){ pinMode(led[i],OUTPUT); } } void loop() { for(i=0;i<12;i++){ digitalWrite(led[i],HIGH); delay(100); } for(i=0;i<12;i++){ digitalWrite(led[i],LOW); delay(100); } }
উপরের প্রোগ্রামটি রান করালে 2 থেকে 13 নম্বর এল.ই.ডি. পর্যায়ক্রমে জ্বলবে এবং পুনরায় 2 থেকে 13 নম্বর এল.ই.ডি. পর্যায়ক্রমে নিভে যাবে।
![আরডুইনো এল.ই.ডি. চেজার](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/arduino-12-led-chaser.gif)
প্রোগ্রাম ৫:
/* * Program 5 * LED Blink * www.eeebangla.com * https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1 */ int pins[] = {2,3,4,5,6,7,8,9,10,11,12,13}; void setup(){ for (int i=0; i<12; i++){ pinMode(pins[i], OUTPUT); } } void loop(){ for (int i=0; i<12; i++){ digitalWrite(pins[i], HIGH); delay(100); digitalWrite(pins[i], LOW); } for (int i=11; i>0; i--){ digitalWrite(pins[i], HIGH); delay(100); digitalWrite(pins[i], LOW); } }
উপরের প্রোগ্রামটি রান করালে এল.ই.ডি. একদিক থেকে জ্বলে বিপরীত দিকে যাবে এবং পুনরায় পূর্বের স্থানে ফিরে আসবে এবং এভাবে চলতে থাকবে।
![আরডুইনো সিঙ্গেল এল.ই.ডি. চেজার](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/arduino-single-led-chaser.gif)
প্রোগ্রাম ৬:
/* * Program 6 * LED Blink * www.eeebangla.com * https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1 */ int i; int j = 13; int led[]={2,3,4,5,6,7,8,9,10,11,12,13}; void setup(){ for(i=0;i<12;i++){ pinMode(led[i],OUTPUT); } } void loop(){ for (int i = 2; i < 13; i++){ LEDlow(); digitalWrite(i, HIGH); digitalWrite(j, HIGH); j--; if (j != 7){ delay(100); } } for (int i = 13; i > 2; i--){ LEDlow(); digitalWrite(i, HIGH); digitalWrite(j, HIGH); j++; if (j != 8){ delay(100); } } } // function to switch all LEDs off void LEDlow(void) { for (int i = 2; i <= 13; i++) { digitalWrite(i, LOW); } }
উপরের প্রোগ্রামটি রান করালে 2 থেকে 13 নম্বর পর্যন্ত, দু পাশ থেকে দুইটি এল.ই.ডি. একই সাথে জ্বলে বিপরীতদিকে যাবে।
![আরডুইনো ডাবল এল.ই.ডি. চেজার](https://www.eeebangla.com/wp-content/uploads/image/project/arduino-led-effect/arduino-double-led-chaser.gif)
মজার-মজার ইলেকট্রনিক্স প্রজেক্ট পেতে এখনই আমাদের ইউটিউব চ্যানেল সাবস্ক্রাইব করুন: https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1
ভিডিও লিংক: https://youtu.be/EbhMPn1kGLU