প্রোগ্রামারঃ (মাইক্রোকন্ট্রলারের সহজ পাঠঃ ৭ম কিস্তি)

4
662

আগেই আলোচনা করেছিযে, ফ্ল্যাশ কার্ডে রিড/রাইট করার জন্য যেমন রিড/রাইটার দরকার তদ্রুপ মাইক্রোতে কোড রিড/রাইটের জন্য দরকার প্রোগ্রামার। কয়েক ধরনের প্রোগ্রামার বাজারে প্রচলিত যেমনঃ

  1. Simple/Basic/Bitbang programmers
  2. ISP smart programmers
  3. Development boards

Simple/Basic/Bitbang programmers

সবচেয়ে সহজ ও সস্তা এই পদ্ধতিতে একটি সিরিয়াল বা প্যারালাল কেবল ছোট একটা সার্কিটের মাধ্যমে (ভোল্টেজ ট্রান্সলেশন, ডাটা বাফারিং) মাইক্রোতে যুক্ত করা হয়। কম্পিউটার সফটওয়্যার বাকি যাবতিয় কাজ করে। এই পদ্ধতিতে বেশ কিছু সীমাবদ্ধতা থাকার কারনে খুবি সিম্পল প্রোগ্রামিং ছাড়া এখন কালে ভদ্রে এর ব্যাবহার হয়। নিচে প্যারালাল পরে সিরিয়াল প্রোগ্রামার দেখানো হলঃ

parallel programmer serial programmer

ISP smart programmers

ইন সিস্টেম প্রোগ্রামার (ISP) হচ্ছে বর্তমানে বহুল ব্যাবহৃত প্রোগ্রামার। এদের নিজস্ব বুদ্ধিমত্তা থাকায় (এদের নিজদেরই মাইক্রো আছে) এরা স্মার্ট বার্নিং করতে পারে। এরা ড্রাইভার দিয়ে কম্পিউটারের সাথে যোগাযোগ রাখে । ISP প্রোগ্রামের বৈশিষ্ঠ হল এরা যে সার্কিটবোর্ডে লাগানো থাকে (ধরা যাক পাম্প কন্ট্রলার সার্কিট বোর্ডে) সেখানেই তাদের প্রোগ্রামিং করা যায়, খুলে তুলে আনতে হয়না (যে কারনে নামঃ ইন সিস্টেম প্রোগ্রামার)।

নিচে প্রথমে এভি আরের নির্মাতা কোম্পানির নিজস্ব প্রোডাক্ট AVRISP v2 দেখানো হলো। v1 ১০ পিনের হেডার সাপোর্ট করে কিন্তু v2 ৬ পিনের হেডার সাপোর্টেড।

avrispmk2-ISP programmer

AVRISP খুব চমৎকার প্রডাক্ট হলেও এর দাম বেশী হওয়ায় উপেন সোর্স কমিনিটি নিজেরাই প্রোগ্রামার ডিজাইন করেছে। এমন উপেন সোর্স প্রোগ্রামার হল USBtiny, USBasp ইত্যাদি । অনলাইনে এর পিসিবি ডিজাইন সহ কোডিং ফ্রি পাওয়া যায়। যে কেউ এটি অনুসরন করে নিজেই বানিয়ে নিতে পারে। নিচে ATMega8 দিয়ে তৈরী একটি USBASP ISP Programmer এর স্কিম্যাটিক দেয়া হলঃ

usb_asp_cir

 

এছাড়া ঐসব ডিজাইনের উপর ভিত্তি করে অনেক সস্তা কমার্শিয়াল ISP Programmer বাজারে পাওয়া যায়। নিচে দেশী বাজারে পাওয়া যায় এমন একটি USB ISP প্রোগ্রামার দেখানো হলঃ

usb-isp

Development boards

যদিও এখন আর অত জনপ্রিয় নয় (দাম বেশী, সাইজে বাল্কি) কিন্তু বাজারে এক ডজনের মতো ডেভেলমেন্ট বোর্ড পাওয়া যায় যাতে এ ভি আর বসিয়ে প্রোগ্রাম করা যায়। এর মধ্যে সবচেয়ে পপুলার হলে এভি আরের নির্মাতা প্রতিষ্ঠান Atmel এর তৈরী STK500। যাতে বাজারে যত রকমের Atmel চিপ পাওয়া যায় সবগুলার সকেট আছে। এছাড়াও আছে এডজাষ্টেবল ক্লক স্পিড অসিলেটর সফটওয়্যার প্যাকেজ AVRStudio এর সাপোর্ট। কিন্তু দুর্ভাগ্যবশত এটি সরাসরি USB পোর্ট সাপোর্ট করেনা। এর মূল ইন্টারফেস সিরিয়াল পোর্ট, যা আর আজকালকার কম্পিউটারে থাকেনা। নিচে STK500 দেখানো হলঃ

STK500

এই ধরনের ডেভলপমেন্টবোর্ডের মধ্যে আরেকটি উল্লেখযোগ্য হলো AVR Dragon । এটি ৬ পিন, ১০ পিন দুই ধরনের কানেকশনই ব্যাবহার করা যায় কিন্তু এতে কোন সকেট না থাকায় এটি ব্যাবহার ঝামেলাপূর্ন। এটির চল খুব কম।

ATAVRDRAGON

মজার একটি ব্যাপার হলো। আজকাল অনেকের কাছেই Arduino বোর্ড আছে। অনেকেই জানি আরডুইনো (উনো, ন্যানো, মিনি, মেগা …) মূলত এ ভি আর মাইক্রো দিয়ে তৈরি ডেভলোপমেন্ট বোর্ড (গ্যালিলিও তে ইন্টেল চিপ ব্যাবহার হয়, এছাড়া আরম কর্টেক্স দিয়ে আরডুইনো ডুয়ো আছে)। এভি আর বেসড আরডুইনোগুলিকে যেমন AVRISP দিয়ে প্রোগ্রাম করা যায়। আবার আরডুইনো দিয়েও এভি আর চিপ প্রোগ্রাম করা যায়। আরডুইনো তে ৩ x ২ = ৬ পিনের ICSP (In circuit serial programming) হেডার থাকে। যাতে সরাসরি প্রোগ্রামার (SPI) ইন্টারফেস করা যায় (ICSP হেডার ছাড়াও ডিজিটাল পিন দিয়েও প্রোগ্রামিং করা যায়)

 

নিচে ১) প্রোগ্রামার দিয়ে আরডুইনো প্রোগ্রামিং ২) আরডুইনো দিয়ে এ ভি আর প্রোগ্রামিং ৩) আরডুইনো দিয়ে আরডুইনো প্রোগ্রামিং দেখানো হয়েছে।

icsp-arduino arduino-w_o icsp eleven_programming_leostick

(পরবর্তিতে আরডুইনো বোর্ড দিয়ে প্রোগ্রামিং টেকনিক নিয়ে বিস্তারিত লেখার ইচ্ছা রইল)

 

<< ৬ষ্ঠ কিস্তি এখানে                           ৮ম কিস্তি এখানে >>

 

 

4 মন্তব্য

উত্তর প্রদান

আপনার মন্তব্য লিখুন
আপনার নাম লিখুন