ইলেক্ট্রনিক্স

মাইক্রোকন্ট্রোলার দিয়ে সিরিয়াল কমিউনিকেশন সিমুলেশন-পর্ব ১

Share
Share

আজব তো! যেই না এক পুঁচকে মাইক্রোকন্ট্রোলার সে কিনা কথা বলে কম্পিউটারের সাথে! কথা বলার জন্য আছে প্রোটোকল মানে নির্দিষ্ট পদ্ধতিতে কথা বলা। কথা বলা, মানে ডাটা কমিউনিকেশনের জন্য আমরা ব্যাবহার করব সিরিয়াল কমিউনিকেশন। সিরিয়াল কমিউনিকেশন নিয়ে জানতে পড়া যেতে পারে, মাইক্রোকন্ট্রোলার দিয়ে ডাটা কমিউনিকেশন হয় যেভাবে…, আর প্রজেক্টে ব্যাবহার হচ্ছে, ATMEGA16 (8MHz), MAX232 আই সি, DB9 Female কানেক্টর আর হাবিজাবি কিছু জিনিসপত্র।

MAX232:

কম্পিউটার এর সাথে মাইক্রোকন্ট্রোলার যোগাযোগ জন্য ব্যাবহার করে সিরিয়াল কমিউনিকেশন। কিন্তু বেশি দূরত্বে সিরিয়াল কমিউনিকেশন কাজ করতে পারে না। তখন একে RS232 নামের আরেকটা প্রোটোকলের ঘাড়ে বসিয়ে দেয়া হয়, যেটা কিনা টববগ করতে করতে অনেক দূরে চলে যেতে পারে। আর কম্পিউটার বেচারা RS232 প্রোটোকল ছাড়া সিরিয়াল কমিউনিকেশন গ্রহনই করতে পারে না। তাই দুটো প্রোটোকলকে মাঝখানে একবার কনভার্ট করে নিতে হয়। MAX232 বেচারা ক্রসফায়ারে পড়ে এক প্রোটোকলের ডাটা অন্যটাতে কনভার্ট করতে থাকে। পুরো ব্যাপারটা এরকম,

সিরিয়াল কমিউনিকেশনের বেলায় DB9 নামের একটা কানেক্টর ব্যাবহার করতে হয়, কম্পিউটারের মাল-মশলা আর মাইক্রোকন্ট্রোলারের গাট্টি-বস্তার সাথে কানেক্ট করার জন্য। এটার ছবি দেখতে নিচের মত,

db9-connector.jpg

এর দুটো ভেরিয়েশন আছে, মেইল আর ফিমেইল। পিন ডায়াগ্রামসহ বিস্তারিত উপরের ছবিটা দেখলে বোঝা যাবে।

প্রজেক্ট ওভারভিউ:

আমাদের কাজ হল- কম্পিউটার থেকে কিছু কমান্ড দেয়া। যেমন,

কমান্ড কাজ
ON LED জ্বলে উঠবে
OFF LED নিভে যাবে
GET LED র বর্তমান স্ট্যাটাস কম্পিউটারকে জানাবেON: LED জ্বলে আছেOFF: LED নিভে আছে

ইলেক্ট্রনিক্স:

এ প্রজেক্টের প্রথম অংশে দেখানো হবে কিভাবে মাইক্রোকন্ট্রোলার দিয়ে সিরিয়াল কমিউনিকেশন ব্যাবহার করা যায়। ATMEGA16 এ 14, 15 পিন হল সিরিয়াল কমিউনিকেশনের যথাক্রমে রিসিভার আর ট্রান্সমিটার পিন। যেগুলো দিয়ে সিরিয়াল ডাটা রিসিভ হবে কিংবা পাঠানো হবে যথাক্রমে। আগেই বলা হয়েছে, এই সিরিয়াল ডাটার মাথা-মুন্ডু কম্পিউটার কিচ্ছু বুঝবে না। এটাকে এখন কনভার্ট করা লাগবে RS232 প্রোটোকলে। এর জন্য 14 আর 15 পিনদুটো MAX232 এর 12 আর 11 পিনে লাগানো আছে যেগুলো হল MAX232 এর সিরিয়াল ডাটা। আর 14, 13 পিন দুটো হল সেগুলোর RS232 ডাটা যেগুলোকে মাত্র সিরিয়াল থেকে কনভার্ট করা হয়েছে। এই ডাটাগুলোই যাবে কম্পিউটারে, একটা DB9 ফিমেইল কানেকটর হয়ে। MAX232 এর কানেকশনের বেসিক ডায়াগ্রাম হল,

max232.jpg

পুরো সার্কিটের কানেকশন হল নিচের মত (একটা LED ও কিন্তু লাগানো আছে সাথে),

serial_communication_circuit.jpg

আরো দুটো কথা বলতে হবে। উপরের ছবিতে Terminal 1 আর Terminal 2 নামের যে দুটো জিনিস আছে ওগুলো শুধুমাত্র ডিবাগ বা টেস্ট করার জন্য। যেমন, Terminal 1 এ ON লিখে Enter দিলেই D1 নামের এল ই ডি জ্বলে উঠে আর OFF লিখলে নিভে যায়। Terminal 1 কে কম্পিউটারের জায়গায় কল্পনা করা যেতে পারে। Terminal 2 তে আবার দেখা যায়, Terminal 1 এ দিয়ে কি যাচ্ছে মাইক্রোকন্ট্রোলারে- সেটা। প্রোটিয়াস এ সিমুলেশন রান করিয়ে উপরের টেবিল মাফিক কমান্ডগুলো Terminal 1 এ লিখতে হবে। একইভাবে GET লিখে Enter চাপলে এল ই ডি এর স্ট্যাটাস (ON কিংবা OFF) দেখা যাবে টার্মিনালে। প্রোটিয়াস সফটয়্যার নিয়ে জানতে পড়া যেতে পারে, সার্কিট বানানোর মজার সফটওয়্যারঃ প্রোটিয়াস

প্রোগ্রামিং:

MikroC এর সিরিয়াল কমিউনিকেশন লাইব্রেরি ব্যাবহার করা হয়েছে কোডটাতে। প্রথমে কোডটা দেখা যাক,

[code]
void main() {
      char buffer[10];
      char i;

      DDB0_bit = 1;
      PORTB0_bit = 0;

      UART1_Init(9600);
      Delay_ms(100);

      while (1) {
            if (UART1_Data_Ready()) {
               UART1_Read_Text(buffer, "\r", 8);

               for (i=0; i                   buffer[i] = tolower(buffer[i]);
               }

               if (!strcmp(buffer, "on")) {
                  PORTB0_bit = 1;
               } else if (!strcmp(buffer, "off")) {
                  PORTB0_bit = 0;
               } else if (!strcmp(buffer, "get")) {
                 if (PORTB0_bit) {
                    UART1_Write_Text("ON\r\n");
                 } else {
                    UART1_Write_Text("OFF\r\n");
                 }
               }
            }
      }
}
[/code]

ব্যাখ্যা:

মাইক্রোকন্ট্রোলার চেক করে দেখছে, সিরিয়াল কোন ডাটা এসেছে কিনা। এসে থাকলে উপরের টেবিল অনুযায়ী হুকুম তামিল করছে। প্রয়োজনে LED র স্ট্যাটাস ট্রান্সমিট করে দিচ্ছে।

এর পরের অংশে থাকবে, কম্পিউটার এর সাথে কানেকশন এবং কম্পিউটার থেকে কমান্ড দেয়া।

File:

 প্রজেক্ট ফাইল ও ডিজাইন

সৌজন্যে: যন্ত্রপাতি.কম

Share

6 Comments

  • ভাই একটু সাহায্য করবেন? আমি পলিটেকনিক এ electronics এ চান্স পেয়েছি. কিন্তুু অনেকেই বলে এ খানে পরে কোন ফাইদা নাই.চাকরি হায় না বল্লেই চলে. আর হলেও নাকি বেতন ভালোনা. এখন কি কারব বুঝতে পারিনা. একটু সত পরামর্শ দিন pls. ([email protected]) এ দয়াকরে জানান.

  • ভাই আপনার থেকে একটু সত পরামর্শ নিতে চাই ছোট ভাই হিসেবে. দয়া করে দিবেন. কারণ এটার উপর আমার ভবিষ্যৎ জীবন নির্ভর করবে. আমি পলিটেকনিক এ ইলেক্ট্রনিক্স এ চান্স পেয়েছি. এখন অনেকেই বলে পলিটেকনিক এ পড়লে নাকি জীবন বাত হইয়া জায় এবং এই সাব্জেক্ট এর উপর বেশি চাকরি নাই.আর থাকলেও নাকি বেতন ভালো না. তাই এখন কি করব বুঝতে পারতাছিনা. তাই একটা ভালো পরামর্শ দিন. pls pls pls pls :- e-mail :[email protected]

  • অনেক তথ্যবহুল লেখা লিখেছেন। কিন্তু প্রোটিয়াস সফটওয়্যার একটি পেইড সফটওয়্যার। এটা ইনস্টল করা সাধারন মানুষের পক্ষে একটু কষ্টকর। এই বিষয় নিয়ে আশা করছি পরবর্তি কোন লেখাতে মাথায় রাখতে অনুরোধ করা হচ্ছে। অনেক সুন্দর হয়েছে লেখাটি ভাই। ইলেক্ট্রনিক্স বিভাগের ছাত্র-ছাত্রীদের ক্ষেত্রে খুবই মূল্যবান একটি পোস্ট।

    এভাবেই লিখে জান। শুভকামনা রইলো।

Leave a Reply

Your email address will not be published. Required fields are marked *

ফ্রি ইমেইল নিউজলেটারে সাবক্রাইব করে নিন। আমাদের নতুন লেখাগুলি পৌছে যাবে আপনার ইমেইল বক্সে।

বিভাগসমুহ

Related Articles
ইলেক্ট্রনিক্স

মাইক্রোচিপ উৎপাদনের শিল্প শুরু করার গল্প

লেখক: সাইফ ইসলাম সিলিকন ভ্যালি গত কয়েক দশকে আকারে এতটাই বৃদ্ধি পেয়েছে...

ইলেক্ট্রনিক্সকৃত্রিম বুদ্ধিমত্তানতুন প্রযুক্তিপ্রযুক্তি বিষয়ক খবরবিজ্ঞান বিষয়ক খবর

কোয়ান্টাম যোগাযোগে নতুন যুগ: কুডিটের আবির্ভাব

কোয়ান্টাম প্রযুক্তি হলো এমন একটি প্রযুক্তি যা কোয়ান্টাম মেকানিক্সের মূলনীতি ও তত্ত্বের...

ইলেক্ট্রনিক্সকম্পিউটার টিপসছোটদের জন্য বিজ্ঞানতথ্যপ্রযুক্তিপ্রথম পাতায়প্রযুক্তি বিষয়ক খবর

কোডিং শেখার গুরুত্ব ও সম্ভাবনা

ধারণা করা হচ্ছে যে সামনের বিশ্বে কৃত্রিম বুদ্ধিমত্তা দারুণভাবে ভূমিকা রাখবে। সেটা...

ইলেক্ট্রনিক্সসাক্ষাৎকার

সাক্ষাৎকার: ড. মাহফুজুল ইসলাম

ড. মাহফুজুল ইসলাম ২০০১ সনে সিলেট ক্যাডেট কলেজে এইচএসসি পাশ করে বুয়েটে...

ইলেক্ট্রনিক্স

হেলিয়াম প্রযুক্তি আইওটি যন্ত্রকে নিরাপদ করবে

  আইওটি (IoT, Internet Of Things) এখন একটি জনপ্রিয় একটি বিষয়। আমাদের...

Three Columns Layout

গবেষণার তথ্য ও বিজ্ঞানীদের সাক্ষাৎকারের মাধ্যমে, বিজ্ঞানী.অর্গ নবীন প্রজন্মকে গবেষণার প্রতি অনুপ্রাণিত করে।

Contact

biggani.org❤️gmail.com

Biggani.org connects young audiences with researchers' stories and insights, cultivating a deep interest in scientific exploration.

বিজ্ঞানী অর্গ (biggani.org) বাংলাদেশি বিজ্ঞানীদের একটি প্ল্যাটফর্ম, যেখানে গবেষণা ও বিজ্ঞান নিয়ে বাংলা ভাষায় তথ্য ও সাক্ষাৎকার প্রচার করে – নবীনদের গবেষণা ও উচ্চশিক্ষায় প্রেরণা দেয়া হয়।

যোগাযোগ:

biggani.org@জিমেইল.com

biggani.org, a community of Bangladeshi scientists, shares interviews and information about researchers and scientists in Bengali to inspire young people in research and higher education.