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

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

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

मागच्या वेळी आपण ८०५१ मायक्रोकंट्रोलरचे अंतर्गत स्वरूप कसे आहे आणि त्याचा उपयोग आपण I/O PORT (आय/ओ पोर्ट) म्हणून कसा करू शकतो हे शिकलो.

आता आपण C programming language कडे वळूया. C language हि शिकण्यास अतिशय सोपी आहे. रोबोटिक्स मध्ये बेसिक अभ्यासासाठी तिचा आपल्याला उपयोग करावयाचा आहे.

प्रोग्रामिंग लँगवेज म्हणजे काय?

प्रोग्रामिंग लँगवेज म्हणजे नियमांचा एक सुसंबद्ध समूह (set of rules). संगणक आणि रोबोटिक्स मध्ये दोन प्रकारच्या प्रोग्रामिंग लँगवेज वापरल्या जातात – हाय लेव्हल प्रोग्रामिंग लँगवेज आणि लो लेवल प्रोग्रामिंग लँगवेज.

हाय लेव्हल प्रोग्रामिंग लँगवेज हि आपल्याला समजण्यास सोपी असते – लक्षात घ्या, पुन्हा सांगतो. हाय लेव्हल प्रोग्रामिंग लँगवेज हि आपल्याला समजण्यास सोपी असते. परंतु लो लेव्हल प्रोग्रामिंग लँगवेज हि आपल्याला समजण्यास अत्यंत क्लिष्ट अर्थात कठीण असते.

हाय लेव्हल प्रोग्रामिंग लँगवेजचे व्याकरण (syntax) हे जवळपास साध्या इंग्रजी भाषेसारखेच असते. उदाहरणार्थ, C, C++, Java या हाय लेव्हल प्रोग्रामिंग लँगवेजेस आहेत. म्हणजे आपल्याला समजण्यास खूपच सोप्या आहेत.

लो लेव्हल प्रोग्रामिंग लँगवेज हि बायनरी आणि इतर काही क्लिष्ट गोष्टींवर आधारित आहे. असो. आपल्याला लो लेव्हल प्रोग्रामिंग लँगवेजची, या कोर्स मध्ये कधीच गरज पडणार नाही, त्यामुळे त्याचा विचार करण्याची गरज नाही.

कंपायलर म्हणजे काय?

कंपायलर म्हणजे एक असा कम्प्युटर प्रोग्राम (किंवा क्लिष्ट प्रोग्राम्स चा समूह) ज्याचा वापर हाय लेव्हल प्रोग्रामिंग लँगवेजला लो लेव्हल प्रोग्रामिंग लँगवेज मध्ये बदलण्यासाठी होतो.

मायक्रोकंट्रोलर प्रोग्रामिंग किंवा बेसिक रोबोटिक्स मध्ये, कंपायलरचा वापर हा, हाय लेव्हल  प्रोग्रामिंग लँगवेज प्रोग्रामला, आपण हेक्स कोड मध्ये, म्हणजे लो लेव्हल प्रोग्रामिंग लँगवेज मध्ये बदलण्यासाठी करणार आहोत.

प्रोग्राम म्हणजे काय?

कम्प्युटर प्रोग्राम म्हणजे सूचनांचा विशिष्ट समूह. या विशिष्ट सूचनांनी आपल्याला एक विशिष्ट काम (task) पूर्ण करता येते. प्रोग्राम लिहिल्यानंतर कंपायलर चा उपयोग करून आपण तो हेक्स कोड मध्ये बदलू शकतो.

डेटाटाईप (Datatype) म्हणजे काय?

डेटा म्हणजे वेगवेगळ्या गोष्टींचा अथवा माहितीचा समूह (The collection of facts and figures is called data.).

मायक्रोकंट्रोलरच्या मेमरीत आपला डेटा ज्या स्वरूपात स्टोअर केला आहे, त्या स्वरूपाला म्हणतात डेटाटाईप.

समजा माझ्याजवळ x=19 अशी एक माहिती (data) आहे. आता 19 हि संख्या इंटीजर (पूर्णांक) च्या स्वरूपात आहे. म्हणून C लँग्वेज मध्ये “int” नावाचा एक डेटा टाईप आहे अर्थात “int” म्हणजे इंटीजर. म्हणून इंटीजर स्वरूपात असलेली आपली माहिती, मायक्रो कंट्रोलरमध्ये स्टोअर करण्यासाठी, आपण या डेटा टाईपचा उपयोग करतो.

अशाच प्रकारे आणखी बरेच डेटा टाईप आहेत. काही डेटा टाईप खाली दिले आहेत. जसे –

  1. int – या डेटाटाइप ला २ बाईट इतकी मेमरीमध्ये जागा लागते.
  2. short – या डेटाटाइप ला सुद्धा २ बाईट इतकी मेमरीमध्ये जागा लागते.
  3. float – याला ४ बाईट इतकी जागा लागते.

व्हेरिएबल म्हणजे काय?

C लँग्वेज मध्ये व्हेरिएबल हे एक चिन्ह असते. इंग्रजीत त्याला “identifier” असे म्हणतात. व्हेरिएबल म्हणजे असा आयडेंटिफायर ज्याची किंमत (value) आपला प्रोग्राम चालू झाल्यावर, मायक्रो कंट्रोलरच्या मेमरीत केंव्हाही आणि कशीही बदलू शकते. त्याला मेमरी व्हेरिएबल असे सुद्धा म्हणतात.

रोबोटिक्स आणि मायक्रोकंट्रोलरच्या प्रोग्रामिंग मध्ये व्हेरिएबल कसा लिहावा किंवा कसा असावा ह्याचे विशिष्ट नियम खाली दिले आहेत. हे नियम नीट लक्षात ठेवा, खूप महत्वाचे आहेत.

  • व्हेरिएबल चे नाव (name) हे इंग्रजी मुळाक्षरानेच सुरु झाले पाहिजे. त्याच्या नावाच्या सुरुवातीला संख्या किंवा अंक चालत नाही.
उदाहरणार्थ: marks, i3, sensor, Vidyasagar, Yash, area, अशी नावे चालतात. पण 5thStudent, 1stGrade, इत्यादी चालत नाहीत.
  • व्हेरिएबल चे नाव १० अक्षरांपेक्षा जास्त नको.
उदाहरणार्थ: infraredsensor, studentsmarks, DattarajVidyasagar, BalkrushnaSurve, इत्यादी चालणार नाहीत…!
  • इंग्रजीतील A to Z (कॅपिटल), a to z (स्मॉल), 0 to 9 हे दहा अंक आणि underscore “_” हे चिन्ह, इतक्याच गोष्टी आपण, व्हेरिएबलचे नाव लिहिताना आपण वापरू शकतो.
उदाहरणार्थ: Left_Sensor, Right_sensor, Motorspeed, Motor1, Motor2, PID, sensortest, इत्यादी चालतात.
  • व्हेरिएबलचे नाव लिहिताना त्यामध्ये स्पेस (SPACE) चालत नाही.
उदाहरणार्थ: Left Sensor, Exam Marks, अशी नावे चालत नाहीत.
  • तुमच्या प्रोग्राममधील सर्व व्हेरिएबल हे प्रोग्रामच्या सुरुवातीलाच लिहिणे किंवा declare करणे अत्यंत आवश्यक आहे. व्हेरिएबल लिहिण्याचे व्याकरण (syntax) खालील प्रमाणेच वापरावा. (The declaration of a variable has following structure) जसे:
<data type> <variable_list>;

वरील व्याकरण (syntax) कसे वापरावे हे आपण आता काही उदाहरणांनी समजावून घेऊ.

प्रोग्रामच्या सुरुवातीस व्हेरिएबल लिहिताना असे लिहावेत:

int Students=59;
int Left_Sensor=0;
float x=2.3;
int R_Motor=0;
लक्षात ठेवा, तुम्हाला ज्या प्रकारची value स्टोअर करायची आहे त्याप्रमाणे int, float, वगैरे डेटाटाईप वापरावा.

फंक्शन (Function) म्हणजे काय?

फंक्शन हा आपल्या प्रोग्राम चा अतिशय महत्वाचं भाग असतो. प्रोग्राममध्ये केलेल्या वेगवेगळ्या विधानांच्या (statements) समूहाला फंक्शन असे म्हणतात. या statements च्या समूह मुळे आपल्याला एखादी task पूर्ण करता येते.

C लँग्वेजच्या प्रोग्राममध्ये कमीतकमी एक फंक्शन असणे आवश्यक आहे.

C लँग्वेजच्या प्रोग्राममधील मुख्य फंक्शन खालील प्रमाणे लिहितात:

main()

int main()

void main()
फंक्शन लिहिण्याच्या या वेगवेगळ्या पद्धतींची आपल्याला सध्या आवश्यकता नाही. तुम्ही तुमच्या प्रोग्राममध्ये यातील कोणत्याही प्रकारे फंक्शन लिहिले तरी चालेल. वरील फंक्शनमध्ये शेवटी लिहिलेले दोन ब्रॅकेट्स फार महत्वाचे आहेत. त्याबाबत आपण नंतर विचार करू.

बेसिक रोबोटिक्स आणि मायक्रोकंट्रोलर प्रोग्रामिंग साठी, C language चा इतकाच भाग, आवश्यक आहे. हा धडा जर तुम्ही चांगल्या प्रकारे तयार केला तर मी तुम्हाला आश्वासन देतो कि, तुम्ही खूपच छान प्रोग्रामिंग करू शकाल. तेंव्हा ह्या धड्याची नीट तयारी करा. धडा वाचताना स्वतःच्या नोट्स अवश्य तयार करा आणि पुढील धड्याची वाट पहा…!

तुमच्या काही समस्या अथवा सूचना असतील, तर खाली आपली comment अवश्य लिहा. 

If you liked this post please write Google feedback about us.
Thanks in advance!

4 thoughts on “मराठीतून मायक्रो कंट्रोलर प्रोग्रामिंग शिका – २

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.