Blog

मराठीतून मायक्रो कंट्रोलर प्रोग्रामिंग शिका – 6

सर्वांसाठी अतिशय सोप्या भाषेत मायक्रो कंट्रोलर प्रोग्रामिंग शिकण्यासाठी विद्यासागर सरांनी चालू केलेला हा उपक्रम. आपला अभिप्राय अवश्य कळवा.

Note: This material is copyrighted and time stamped under DCMA Copyright Act. Do not copy or reproduce under other title or name.

या भागात आपण प्रत्यक्ष प्रोग्रामिंग कसे करायचे ते समजावून घेणार आहोत. त्यासाठी आपण अगदी सोपा पहिला प्रोग्रॅम लिहिणार आहोत.

तुम्हाला माहितीच आहे की आपल्या ८०५१ डेव्हलोपमेंट बोर्डवर ८ LEDs आहेत. या सर्व LEDs आपल्याला एकाच वेळी चालू आणि बंद, चालू आणि बंद करावयाच्या आहेत.

सुरुवातीस काय करायचे आहे?

  1. पहिले तुमच्या PC च्या डेस्कटॉप वर या आणि Start मेनूवर क्लिक करा.
  2. त्यामध्ये Keil uVision3 च्या शॉर्टकट मेनूवर क्लिक करा.
  3. Keil uVision3 उघडल्यावर पुढे काय करायचे ते शेवटी दिलेल्या व्हिडिओत पहा.

सुरुवातीस आपण, प्रोग्राम कसा लिहायचा ते पाहू.

प्रोग्रॅमच्या सुरुवातीस काही संदर्भ लिहायचे असतात, याला human comments म्हणतात. कंमेंट लिहिण्याचे दोन प्रकार आहेत. पहिल्या प्रकारात तुम्ही /* आणि */ याच्या मध्ये कॉमेंट लिहू शकता. किंवा // च्या पुढे त्याच ओळीत पुढे काही लिहू शकता. उदाहरणार्थ खाली दोन प्रकारच्या human comments दिल्या आहेत, त्या पहा:

/* 
This is comment number one
*/

// This is comment number two

अशा प्रकारे आपल्या प्रोग्रॅममध्ये आपण पाहिजे तितक्या आणि पाहिजे त्या ठिकाणी human comments लिहू शकतो. लक्षात ठेवा, या comments फक्त आपल्याला व्यवस्थित संदर्भ लागावा म्हणून लिहायच्या आहेत. कम्पायलर या कंमेंट्स “वाचत” नाही, म्हणजे प्रोसेस करत नाही.

चला तर मग, आता आपण प्रोग्रॅम लिहिण्यास सुरुवात करूया. खालील प्रोग्राममध्ये मी प्रत्येक लाईन समोर, (तुम्हाला त्या लाईनचा अर्थ कळवा म्हणून) human comment लिहिली आहे.

लक्षात ठेवा, आपल्याला संपूर्ण प्रोग्रॅम इंग्लिशमधेच लिहावा लागेल. Keil uVision3 मध्ये मराठीत लिहिलेला प्रोग्रॅम आणि human comments सुद्धा चालत नाही. त्यामुळे खालील प्रोग्रॅम सरळ कॉपी-पेस्ट करू नका. तो पाहून आणि समजावून घ्या, वाटले तर कागदावर उतरवून घ्या आणि मग Keil uVision3 मध्ये स्वतः टाईप करा. लाल कलर मध्ये लिहिलेल्या कंमेंट्स तुमच्या प्रोग्रॅम मध्ये लिहू नका. जर लिहावयाच्या असतील तर इंग्लिशमध्ये लिहा.
/*
  	८०५१ मायक्रो कंट्रोलर साठी ब्लिंकिंग LEDs चा प्रोग्रॅम 
	हा प्रोग्रॅम विद्यासागर अकॅडेमीसाठी विद्यासागर सरांनी तयार केला आहे. 
	दिनांक: २५ फेब्रुवारी २०१८
*/

#include  // या ओळीत आपण "reg51.h" नावाची हेडर फाईल समाविष्ट (include) केली आहे.
#include "delay.c" // सर्व LEDs एक सेकंड चालू आणि एक सेकंड बंद करण्यासाठी delay.c 
                   // हि फाईल समाविष्ट केली आहे. हि फाईल तुम्ही इथे क्लिक करून डाउनलोड करू शकता.
#define LEDs P1 // या ओळीत आपण कम्पायलरला सांगतोय कि ८ LEDs, PORT1 ला जोडलेल्या आहेत.

	int main() // प्रोग्रॅमचे मेन फंक्शन. "int" असे का लिहिले आहे? सांगू शकाल का तुम्ही? 

	{ // मेन फंक्शनचा ब्रेस (मेहरपी कंस) ओपन केला 

	while(1) // याला इनफाइनाईट लूप म्हणतात. यामुळे LEDs सतत चालू-बंद होत राहतील.

	{ // "while" चा ब्रेस ओपन केला

	LEDs=0xFF; // सर्व LEDs चालू होतील 	
	delay(1000); // delay १ सेकंड 

	LEDs=0xFF; // सर्व LEDs बंद होतील 	
	delay(1000); // delay १ सेकंड 

	} // "while" चा ब्रेस बंद केला

	} // मेन फंक्शनचा ब्रेस बंद केला

झाले. इथे आपला प्रोग्रॅम संपला आहे…!

आता हा प्रोग्रॅम कंपाईल करण्यासाठी तुमच्या कंप्युटरचे “F7” हे बटन दाबा. तुमचा प्रोग्राम लो लेवल लँग्वेजमध्ये कम्पाइल होईल. कम्पाइल झाल्यावर तुम्हाला तुमच्या प्रोजेक्ट फोल्डर मध्ये filename.hex नावाची फाईल मिळेल.

हा संपूर्ण प्रोसेस कसा करायचा याचा व्हीडिओ खाली दिला आहे, तो लक्षपूर्वक पहा.

व्हिडिओ पाहिल्यानंतर तुम्हाला पहिला प्रोग्राम लिहिण्याची उत्सुकता होईलच. या व्हिडिओमध्ये लिहिलेल्या प्रोग्रामचे संपूर्ण प्रोजेक्ट फोल्डर तुम्हाला डाउनलोड करावयाचे असल्यास इथे क्लिक करा.

आता पुढील भागात मायक्रो कंट्रोलर मध्ये आपल्या प्रोग्रामची hex फाईल burn म्हणजे स्टोअर कशी करायची ते आपण पाहणार आहोत. त्यासाठी तुमच्याजवळ, सर्व साहित्य तयार असणे आवश्यक आहे.

यासाठी कोणकोणते साहित्य हवे, याची माहिती, कोर्सच्या या भागात दिली आहे. विद्यासागर अकॅडेमीने विद्यार्थ्यांसाठी readymade साहित्य तयार केले आहे, ते हवे असल्यास, या लिंकवर क्लिक करा.

तसेच पुढील भागात आपण LED ब्लिंकिंगचे आणखी काही प्रोग्राम्स सुद्धा पाहणार आहोत.

मित्रांनो, “मराठीतून मायक्रोकंट्रोलर प्रोग्रामिंग शिका” या माझ्या प्रयत्नाचे खरोखरीच चीज होत आहे अथवा नाही, हे समजण्यासाठी, आपला अभिप्राय कळविणे अत्यंत आवश्यक आहे. आपल्याला या कोर्समध्ये काही सुधारणा सुचवावयाच्या असतील, काही चुका निदर्शनास आल्या असतील, तर त्या अवश्य कळवा. माझा हा प्रयत्न केवळ एकतर्फी राहू नये (अरण्यरुदन होऊ नये!) आणि आपल्याला या कोर्सचा फायदा व्हावा इतकीच माफक अपेक्षा आहे.

म्हणून मित्रांनो, आपला अभिप्राय कळविण्यास विसरू नका.

Comments on this entry are closed.

  • arun patole

    February 27, 2018, 10:33 AM

    Excellent efforts for writing program Mother Tounge …

    • Dattaraj Vidyasagar

      February 27, 2018, 10:38 AM

      Thank you so much, Patole Sir.
      How’s your study in robotics going on?
      Are you upto it…?