আমাদের আগের পাঠের যে কাজ টি দেয়া ছিলো তা হল , সাতটি লিড কে পর্যায়ক্রমে জ্বালাতে হবে । ঠিক এই রকম ।
কোডঃ
void setup() { pinMode(0, OUTPUT); pinMode(1, OUTPUT); pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(4, OUTPUT); pinMode(5, OUTPUT); pinMode(6, OUTPUT); pinMode(7, OUTPUT); } void loop() { digitalWrite(0, HIGH); digitalWrite(1, LOW); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); delay(1000); digitalWrite(0, LOW); digitalWrite(1, HIGH); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); delay(1000); digitalWrite(0,LOW); digitalWrite(1, LOW); digitalWrite(2, HIGH); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); delay(1000); digitalWrite(0, LOW); digitalWrite(1, LOW); digitalWrite(2, LOW); digitalWrite(3, HIGH); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); delay(1000); digitalWrite(0, LOW); digitalWrite(1, LOW); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, HIGH); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, LOW); delay(1000); digitalWrite(0, LOW); digitalWrite(1, LOW); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, HIGH); digitalWrite(6, LOW); digitalWrite(7, LOW); delay(1000); digitalWrite(0, LOW); digitalWrite(1, LOW); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, HIGH); digitalWrite(7, LOW); delay(1000); digitalWrite(0, LOW); digitalWrite(1, LOW); digitalWrite(2, LOW); digitalWrite(3, LOW); digitalWrite(4, LOW); digitalWrite(5, LOW); digitalWrite(6, LOW); digitalWrite(7, HIGH); delay(1000); }
কিন্তু এই কাজ টি আরো সহজে করা যায় পোর্ট কন্ট্রোল করার মাধ্যমে ।
তার আগে আমরা পোর্ট ম্যাপ টা দেখে নিই ।
আমরা এখানে শুধু পোর্ট D নিয়ে কাজ করব ।
তাই আমাদের প্রথমে পোর্ট D এর সবগুলো পিন কে আউটপুট mode এ সেট করতে হবে । এর জন্য আমারা
DDRD=0xFF;
কোড টি
void setup()
এর ভিতর লিখে দিই । এখন প্রাথমিক ভাবে সব কয় টা পিন কে অফ করতে হবে।
তার জন্য
PORTD=0X00 ;
কোড টি
void setup()
এর ভিতর লিখে দিই।
DDRD = Data Direction Register for port D
0X = এর অর্থ কোড টি হেক্স ফরম্যাট এ লেখা ।
FF হেক্স এর বাইনারি হল 11111111 ,
00 হেক্স এর বাইনারি হল 00000000 .
void setup () এর ভিতর কার কাজ শেষ।
এবার প্রতিটা পোর্টে একটি করে পিন অন করতে হবে । তাই যে পিন টি অন করতে হবে সেটিকে 1 লিখে বাকি সব গুলোকে 0 set করে দেব ।
যেমন PD0 পিন টি যখন অন এবং বাকি সব গুলো যখন অফ থাকবে তখন কোড হবে
PORTD=0b00000001;
এখন সব কয়টি পিন কে এক সেকেন্ড সময় ব্যাবধানে জ্বালানোর জন্য কোডঃ
void setup() { DDRD=0xFF; PORTD=0X00; } void loop() { PORTD=0b00000001; delay(1000); PORTD=0b00000010; delay(1000); PORTD=0b00000100; delay(1000); PORTD=0b00001000; delay(1000); PORTD=0b00010000; delay(1000); PORTD=0b00100000; delay(1000); PORTD=0b01000000; delay(1000); PORTD=0b10000000; delay(1000); }
আরডুইনো শিখি – (ভাই এর আরো পর্ব দবেন প্লিজ)