پروگرامرز اور ڈیبگرز، وہ کیا ہیں اور ان کی ضرورت کیوں ہے، ہر کوئی نہیں جانتا۔ فی الحال، برقی آلات کے بغیر کسی شخص کے وجود کا تصور کرنا مشکل ہے، جن میں سے کچھ مائیکرو پروسیسرز ہیں جن کے لیے مخصوص دیکھ بھال کی ضرورت ہوتی ہے۔ پروگرامرز اور ڈیبگرز جیسے آلات ان میں سے ایک ہیں جو صرف اپنے کام کی وضاحت پر نظر رکھنے کے لیے بنائے گئے ہیں۔
مواد
ڈیٹا کو پڑھنے (جمع کرنے) اور انہیں اسٹوریج ڈیوائس پر لکھنے (فرم ویئر) کے لیے ڈیزائن کیا گیا ایک آلہ پروگرامر کہلاتا ہے۔ریڈیو امیچرز کے لیے، سیریل یا متوازی بندرگاہ سے منسلک ایک معیاری آلہ موزوں ہے۔ یہ مثالی ہے اگر آپ کو مائیکرو کنٹرولر کو ایک بار پروگرام کرنے کی ضرورت ہو۔ اس کے علاوہ، ایسی ڈیوائس کی بدولت، بہت کم وقت میں زیادہ تر AVR مائیکرو کنٹرولرز میں ہیکس فارمیٹ والے پروگراموں کو لوڈ کرنا ممکن ہے۔
ڈیوائس کو خصوصی سافٹ ویئر کا استعمال کرتے ہوئے پی سی سے منسلک کیا جاتا ہے جو کمپیوٹر کے فرم ویئر کو پروگرامر کو منتقل کرتا ہے، اور یہ اسے مائکرو سرکٹ کی میموری پر لکھتا ہے۔ پروگرامرز کئی طریقوں سے جڑے ہوتے ہیں، لیکن سب سے اہم وہ ہے جو USB پورٹ کے ذریعے کیا جاتا ہے۔
ڈیٹا کو پڑھنے اور لکھنے کے آلات کو کچھ خصوصیات کے مطابق درجہ بندی کیا جا سکتا ہے جیسے:
مائیکرو سرکٹس کے کنکشن کے مطابق، آلات میں تقسیم کیا جاتا ہے:
متوازی کنکشن کے ساتھ ایک آلہ کا انتخاب کرتے وقت، آپ کو کنیکٹر پر توجہ دینا چاہئے جس میں مائکرو سرکٹ رکھا گیا ہے. یہ اچھے معیار کا ہونا چاہیے، یہ سب سے بہتر ہے اگر ماڈل کولیٹ کنیکٹر سے لیس ہو یا ایک حرکت پذیر بار (ZIF کنیکٹر) سے لیس ہو۔ مہنگے ماڈل مختلف معاملات کے لیے موزوں کنیکٹر سے لیس ہیں۔ ایک بار کے کنکشن سے لیس سستے لوگ جلدی ناکام ہو جائیں گے۔
ان سرکٹ ڈیوائسز صرف ان چپس کے لیے موزوں ہیں جو ان سرکٹ پروگرامنگ کو سپورٹ کرتی ہیں۔ اس طرح، مائیکرو سرکٹ کو آلہ سے ہی ہٹائے بغیر فلیش کرنا ممکن ہے۔
تمام سافٹ ویئر پروڈکٹس کو ڈیولپمنٹ کی مدت کے دوران سخت ٹیسٹنگ سے گزرنا پڑتا ہے، متعدد اپ ڈیٹس سے گزرنا پڑتا ہے، مختلف قسم کے مسائل کو ٹھیک کرنا اور اس عمل میں مکمل دیکھ بھال سے گزرنا پڑتا ہے تاکہ مستقبل میں استعمال میں آنے والی پریشانیوں سے بچا جا سکے۔سورس کوڈ کی ایک بڑی تعداد پر مشتمل بڑے پروگراموں کو چھوٹے اجزاء میں تقسیم کیا جاتا ہے، جنہیں پہلے انفرادی طور پر چیک کیا جاتا ہے، اور صرف اس کے بعد مجموعی طور پر۔
تو ڈیبگر کیا ہے؟ یہ ایک ماڈیول یا ایپلیکیشن ہے جسے پروگراموں میں غلطیوں کو تلاش کرنے کے لیے ڈیزائن کیا گیا ہے۔ ڈیبگر یا نام نہاد ڈیبگر مرحلہ وار ٹریس کرنا، متغیرات کی قدر کی نگرانی، تبدیلی اور سیٹ کرنا، بریک پوائنٹس کو سیٹ اور ہٹانا اور پروگرام کے عمل کے دوران حالات کو روکنا، اور بہت کچھ ممکن بناتا ہے۔ ڈیوائس آپریشن میں انٹرایکٹو ڈیبگنگ، کنٹرول فلو تجزیہ، لاگ فائل کا تجزیہ، ایپلیکیشن اور سسٹم لیول مانیٹرنگ، اور یونٹ اور انٹرایکٹو ٹیسٹنگ شامل ہیں۔
ڈیبگر نہ صرف کوڈ کی غلطیوں کو چیک کرتا ہے اور اس کا پتہ لگاتا ہے، بلکہ انہیں ٹھیک بھی کرتا ہے، اس طرح یہ یقینی بناتا ہے کہ ایپلیکیشنز صحیح طریقے سے چلتی ہیں۔ ڈیبگنگ کا عمل کوڈ کے لکھے جانے کے لمحے سے شروع ہوتا ہے اور بعد کے تمام مراحل میں جاری رہتا ہے، کیونکہ کوڈ سافٹ ویئر پروڈکٹ بنانے کے لیے ضروری باقی ماڈیولز کے ساتھ جڑا ہوا ہے۔ کوڈ کی بہت سی لائنوں کے ساتھ بڑے پروگراموں کو چیک کرتے وقت، ڈیبگنگ کا طریقہ کار یونٹ ٹیسٹ، کوڈ کے جائزے اور جوڑی پروگرامنگ کا استعمال کرتے ہوئے، زیادہ آسان طریقے سے کیا جاتا ہے۔
پروگرامر خریدتے وقت، آپ کو کچھ نکات پر غور کرنا چاہئے جو آپ کو صحیح ڈیوائس کا انتخاب کرنے میں مدد کریں گے:
اور یقیناً یہ ضروری ہے کہ اچھی شہرت کے ساتھ کارخانہ دار کا انتخاب کیا جائے۔ یہ انٹرنیٹ پر کارخانہ دار کے بارے میں جائزے تلاش کرکے اور اس ڈیٹا سے واقف ہو سکتا ہے کہ کمپنی کتنے عرصے سے پروگرامرز تیار کر رہی ہے۔
ڈیبگر (ڈیبگر) کا انتخاب کرتے وقت، خریدار کو ایسی اشیاء پر بھی توجہ دینی چاہیے جیسے:
اصولی طور پر، اس ٹول کا انتخاب پروگرامر کی طرح انہی نکات کو مدنظر رکھتے ہوئے کیا جاتا ہے، لیکن آپ کو آگاہ ہونا چاہیے کہ زیادہ تر معاملات میں صارفین کو پروگرام کی شکل میں ڈیبگر کا سامنا کرنا پڑے گا۔ ایک ماڈیول کے طور پر، ڈیبگر فنکشن والے پروگرامر سامنے آتے ہیں۔
بہترین پروگرامرز کی فہرست صارفین کے جائزوں پر مبنی ہے، اس میں یونیورسل ماڈل، تنگ پروفائل، کام کے لیے موزوں، صرف مخصوص قسم کے مائیکرو سرکٹس کے ساتھ جو نصب کیے گئے ہیں، مثال کے طور پر، کار کی چابیاں اور بہت سے دوسرے شامل ہیں۔
اے وی آر یو ایس بی اے ایس پی ماڈل یونیورسل یو ایس بی پروگرامرز سے تعلق رکھتا ہے، دس پن فلیش مائیکرو کنٹرولرز کو سپورٹ کرتا ہے جس میں اضافی چھ پن اڈاپٹر انسٹال کرنے کی صلاحیت ہے۔ ڈیوائس میں دو پاور آپشنز (5 اور 3.3 وولٹ) ہیں، جو ایک خاص جمپر کے ذریعے کیے جاتے ہیں۔ ڈیوائس کے فوائد کے باوجود، اس کی قیمت سستی ہے.
یہ ماڈل ایک کیبل کی شکل میں پیش کیا گیا ہے، جس کے ایک طرف فلیش ڈرائیو ہے، جو کہ ڈیبگر ہے، جس کی مدد سے ایک ریڈیو اسٹیشن، جیسے کہ واکی ٹاکی، کو ترتیب دیا گیا ہے۔ ڈیوائس آپ کو ریڈیو سٹیشنوں کی کلیدوں کو منتخب کرنے اور تفویض کرنے کی اجازت دیتا ہے وہ فنکشنز جو ضروری ہیں، شور کو کم کرنے کی مطلوبہ سطح سیٹ کریں، کال اور چینل کنکشن کی آواز کو منتخب کریں۔ ڈیبگر نہ صرف ٹربوسکی مصنوعات کے ساتھ مطابقت رکھتا ہے، بلکہ اسٹیشن ماڈلز کے ساتھ بھی مطابقت رکھتا ہے جو CTCSS، DCS کوڈز کا استعمال کرتے ہوئے کوڈ کیے گئے ہیں۔
تیز رفتار چینی پروگرامر MiniPro TL866 تمام جدید ونڈوز سسٹمز کی پروگرامنگ کے لیے موزوں ہے: 7، 8، 10، 32 اور 64 بٹس۔ اس ماڈل کا استعمال کرتے ہوئے، SRAM ٹیسٹ کروانا ممکن ہے، اور ڈیوائس NAND فلیش جیسی چپس کو 8 Gbits تک سپورٹ کرتی ہے۔ اس کے علاوہ، MiniPro TL866 متعدد اضافی خصوصیات سے لیس ہے جیسے خراب پن رابطوں کی خودکار تلاش، سیریل نمبر کا آؤٹ پٹ اور الگورتھم ٹیسٹ۔ مائکرو سرکٹس کی بجلی کی کھپت کم سے کم ہے۔ DLL لائبریریوں کی مدد سے، پروگرامرز ہر طرح کے الگورتھم بنانے کے قابل ہوتے ہیں، وہ منفرد کوڈ بھی ترتیب دے سکتے ہیں جو ڈیوائس کے لیے کاپی رائٹ کے تحفظ کی اجازت دیتے ہیں۔
چین میں تیار کردہ USB پروگرامر کا ایک اور ماڈل تیز رفتاری کی خصوصیت رکھتا ہے۔ڈیوائس کی باڈی انڈیکیٹر لائٹس سے لیس ہے جو پاور اور پروگرامنگ کے عمل کو ظاہر کرتی ہے۔ ڈیوائس یونیورسل سے تعلق رکھتی ہے اور گھریلو آلات اور صنعتی آلات کی مرمت کے لیے موزوں ہے۔ سوئچ آن کرنے کے بعد، آلہ خود بخود یہ جانچنا ممکن بناتا ہے کہ آیا MC حفاظتی معیارات کی تعمیل کرتا ہے، اور آپ کو ضروری سافٹ ویئر ڈاؤن لوڈ کرنے کی بھی اجازت دیتا ہے۔ ایک حد کے ساتھ، لیکن USB EZP2019 آپ کو ذاتی کمپیوٹر کے مدر بورڈ BIOS کی سالمیت کو چیک کرنے کی اجازت دیتا ہے۔ ڈیوائس 12 m/s کی رفتار سے کام کرتی ہے، اس طرح ڈرائیور کی تنصیب کا دورانیہ نمایاں طور پر تیز ہو جاتا ہے۔
ماڈل RT809F کو الیکٹرانک کمپیوٹرز اور پیری فیرلز کے ساتھ کام کرنے کے لیے ڈیزائن کیا گیا ہے، اور یہ آلہ برقی طور پر مٹانے کے قابل ری پروگرام ایبل ROM I2C EEPROM میموری اور رینڈم ایکسیس میموری (RAM) DDR1/DDR2/DDR3 کو بھی سپورٹ کرتا ہے۔ اس کے علاوہ، RT809F MCU RTD2120، 93 MircroWire، Micom کے ساتھ مطابقت رکھتا ہے۔ WINBOND آلہ کی صلاحیتوں کو وسعت دیتا ہے، اس طرح مختلف آلات (ریڈیو، ٹی وی تکنیکی ماہرین وغیرہ) کی مرمت میں شامل لوگوں کی توجہ اپنی طرف مبذول کرتا ہے، قطع نظر ان کی مہارت کی سطح۔ ماڈل کے پیرامیٹرز پر غور کرتے ہوئے، ہم کہہ سکتے ہیں کہ یہ سب سے زیادہ منافع بخش ہے، کیونکہ یہ کم قیمت اور مائیکرو کنٹرولرز کے ساتھ وسیع مطابقت رکھتا ہے۔
یہ سیکشن دونوں ڈیوائسز کو ڈیبگر فنکشنز اور ڈیبگر پروگرامز کے ساتھ پیش کرے گا جو کوڈز لکھنے کے دوران پیش آنے والی مختلف قسم کی غلطیوں کے خاتمے سے نمٹتے ہیں۔ فہرست میں بجٹ اور مہنگی دونوں قسمیں شامل ہیں، لیکن ان میں سے ہر ایک، صارفین کے مطابق، اپنے کاموں کو اچھی طرح سے نپٹتا ہے۔
CH341A ایک ایسا آلہ ہے جو SPI اور EEPROM میموری کو چمکانے کے لیے ڈیزائن کیا گیا ہے، جو ڈیبگر فنکشن کے ساتھ ہے۔ ماڈل کا انٹرفیس روسی زبان میں ہے، جس کی وجہ سے اس کے ساتھ کام کرنا آسان ہو جاتا ہے، ڈیوائس خود تقریباً 700 MK کو سپورٹ کرتی ہے۔ ڈیوائس کو مائکرو کنٹرولر فرم ویئر کے ساتھ کام کرنے، پی سی میں موجود مدر بورڈز کو ڈیبگ کرنے اور اسٹوریج میموری کے ساتھ ساتھ BIOS کو اپ ڈیٹ کرنے کے لیے ڈیزائن کیا گیا ہے۔ مدر بورڈز کے استحکام کے لیے، صارف ڈیفالٹ ڈرائیور انسٹالیشن فنکشن کو غیر فعال کر سکتا ہے اور آزادانہ طور پر مطلوبہ ورژن کو جوڑ سکتا ہے۔
IDA Pro ایک جدا کرنے والا اور ایک ڈیبگر دونوں ہے جو آپ کو بائنری کوڈ کو اسمبلر ٹیکسٹ میں تبدیل کرنے کی اجازت دیتا ہے جو پروگرام کا تجزیہ کرنے کے لیے استعمال ہوتا ہے۔ یہ پروگرام وسیع خصوصیات سے مالا مال ہے، جو اسے ان صارفین میں مقبول بناتا ہے جو پیشہ ورانہ طور پر پروگرامنگ کے شعبے سے وابستہ ہیں۔ لہٰذا، ہم ان صلاحیتوں میں فرق کر سکتے ہیں جیسے کہ معیاری لائبریری کے افعال کی پہچان (FLIRT ٹیکنالوجی)، ایک کھلے اور ماڈیولر فن تعمیر کی موجودگی اور بلٹ ان IDC پروگرامنگ زبان، تقریباً تمام عام پروسیسرز اور فائل فارمیٹس کے ساتھ کام کرنے کی صلاحیت، اور کئی دوسرے.اپنی صلاحیتوں کی وجہ سے، ڈیوائس مختلف میلویئر اور وائرس کی جانچ، کوڈ میں غلطیوں کی تلاش اور مطالعہ، پروگراموں کی توثیق اور اصلاح جیسے کام انجام دیتی ہے۔
PADI SWD ڈیبگر ماڈل پروگرامر ڈیبگرز سے تعلق رکھتا ہے، سیگر کے J-Link ڈیبگر کو ترقی کی بنیاد کے طور پر لیا گیا تھا۔ یہ آلہ آپ کو بائنری فارمیٹ میں فرم ویئر اپ لوڈ کرنے کی اجازت دیتا ہے، پروگراموں کو روک کر اور مرحلہ وار ڈیبگ کرنے کے لیے خصوصی ترقیاتی ٹولز کا استعمال کرتے ہوئے۔ PADI IoT سٹیمپ سے جڑنے کے لیے، صرف دو تاروں کا استعمال کیا جاتا ہے - سیریل وائر ڈیٹا اور سیریل کلاک۔ ری سیٹ کی ہڈی کو لازمی کنکشن کی ضرورت نہیں ہے۔ ڈیبگر کے کام کو سپورٹ کرنے کے لیے، معیاری J-Link سافٹ ویئر پیکج اور IAR اور Keil ترقیاتی ماحول استعمال کیے جاتے ہیں۔ ڈیوائس ڈیبگنگ پروگراموں کے لیے موزوں ہے، مائیکرو کنٹرولرز جیسے Cortex-M میں چمکنے کے لیے، PADI کو ایک مدت کے لیے پاور کرنے کے لیے جب ڈیوائس ڈیزائن کی جا رہی ہے۔
چپس والے آلات کے ساتھ کام کرتے وقت ڈیبگرز (ڈیبگرز) اور پروگرامر اہم ٹولز ہیں۔ ہر ایک ٹول کو مخصوص افعال سے نوازا جاتا ہے، جس پر ان کی قیمت اور مقصد منحصر ہوتا ہے۔