একটি বিকল্প দৃষ্টিভঙ্গি: মাইক্রোকন্ট্রোলারগুলির মেমরি শেষ হয় না।
কমপক্ষে, সঠিকভাবে প্রোগ্রাম করার পরে নয়। একটি মাইক্রোকন্ট্রোলার প্রোগ্রামিং হ'ল সাধারণ উদ্দেশ্য প্রোগ্রামিংয়ের মতো নয়, এটি সঠিকভাবে করার জন্য আপনাকে তার সীমাবদ্ধতাগুলি এবং সেই অনুযায়ী প্রোগ্রাম সম্পর্কে সচেতন হতে হবে। এটি নিশ্চিত করতে সহায়তার জন্য সরঞ্জামগুলি রয়েছে। এগুলি সন্ধান করুন এবং সেগুলি শিখুন - লিঙ্কর স্ক্রিপ্টগুলি এবং সতর্কতাগুলি কীভাবে পড়বেন।
তবে মাজেঙ্কো এবং অন্যেরা যেমন বলেছিলেন, একটি খারাপভাবে প্রোগ্রাম করা মাইক্রোকন্ট্রোলার স্মৃতি থেকে বেরিয়ে যেতে পারে এবং তারপরে অসীম লুপ সহ কিছু করতে পারে (যা কমপক্ষে ওয়াচডোগ টাইমারকে পুনরায় সেট করার সুযোগ দেয় You আপনি নজরদারি টাইমার সক্ষম করেছিলেন, তাই না? )
মাইক্রোকন্ট্রোলারদের জন্য সাধারণ প্রোগ্রামিং বিধিগুলি এড়ানো যায়: উদাহরণস্বরূপ, সমস্ত মেমরি হয় স্ট্যাকের উপর বরাদ্দ করা হয় বা স্ট্যাটিকালি (বিশ্বব্যাপী) বরাদ্দ করা হয়; "নতুন" বা "ম্যালোক" নিষিদ্ধ। পুনরাবৃত্তিটিও তাই, যাতে সাব্রুটিন বাসা বাঁধার সর্বাধিক গভীরতা বিশ্লেষণ করা যায় এবং উপলভ্য স্ট্যাকের সাথে মানিয়ে যায়।
সুতরাং আপনার প্রয়োজনীয় নির্দিষ্ট প্রসেসরের জন্য প্রোগ্রামটি সংকলিত বা সংযুক্ত করা অবস্থায়, এবং মেমরির আকারের (সাধারণত লিঙ্কার স্ক্রিপ্টে এনকোডড) সাথে তুলনা করাতে সর্বাধিক প্রয়োজনীয় স্টোরেজটি গণনা করা যেতে পারে।
তারপরে মাইক্রোকন্ট্রোলার মেমরির বাইরে চলে না যেতে পারে তবে আপনার প্রোগ্রামটি সম্ভবত। এবং এই ক্ষেত্রে, আপনি পেতে
- এটি আবার ছোট, বা লিখুন
- একটি বড় প্রসেসর বাছুন (তারা প্রায়শই বিভিন্ন মেমরি আকারের সাথে উপলব্ধ থাকে)।
মাইক্রোকন্ট্রোলার প্রোগ্রামিংয়ের নিয়মের একটি সাধারণ সেট হ'ল মিজরা-সি , মোটর শিল্প দ্বারা গৃহীত।
আমার দৃষ্টিতে সেরা অনুশীলন হ'ল অ্যাডারের স্পার্ক -2018 উপসেটটি ব্যবহার করা । অ্যাডা আসলে এভিআর, এমএসপি ৪৩০ এবং এআরএম কর্টেক্সের মতো ছোট কন্ট্রোলারগুলিকে যথাযথভাবে টার্গেট করে এবং সি এর চেয়ে মাইক্রোকন্ট্রোলার প্রোগ্রামিংয়ের জন্য অন্তর্নিহিত আরও ভাল মডেল সরবরাহ করে তবে স্পার্ক প্রোগ্রামটির মন্তব্যগুলির আকারে টীকা যুক্ত করে, যা প্রোগ্রামটি কী করছে তা বর্ণনা করে।
এখন স্পার্ক সরঞ্জামগুলি সেই টীকাগুলি সহ প্রোগ্রামটি বিশ্লেষণ করবে এবং এ সম্পর্কিত বৈশিষ্ট্য প্রমাণ করবে (বা সম্ভাব্য ত্রুটিগুলির প্রতিবেদন করবে)। ভ্রান্ত মেমরি অ্যাক্সেসগুলি বা পূর্ণসংখ্যার ওভারফ্লোগুলি নিয়ে কাজ করার জন্য আপনাকে সময় বা কোড স্পেস নষ্ট করতে হবে না কারণ সেগুলি কখনই ঘটে না প্রমাণিত।
যদিও স্পার্কের সাথে আরও আপ-ফ্রন্টের কাজ জড়িত রয়েছে, অভিজ্ঞতাটি দেখায় যে এটি দ্রুত এবং সস্তার একটি পণ্য পেতে পারে কারণ আপনি রহস্যময় রিবুটগুলি এবং অন্যান্য অদ্ভুত আচরণের তাড়া করতে সময় ব্যয় করেন না।
মিশ্র-সি এবং স্পার্কের একটি তুলনা