সুচিপত্র:

ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে: 9 টি ধাপ (ছবি সহ)
ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে: 9 টি ধাপ (ছবি সহ)

ভিডিও: ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে: 9 টি ধাপ (ছবি সহ)

ভিডিও: ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে: 9 টি ধাপ (ছবি সহ)
ভিডিও: আরডুইনো আইসি নষ্ট হয়ে গেলে সমাধান | how to burn bootloader atmega328p pu | AVR ISP Program 2024, জুলাই
Anonim
ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে
ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে
ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে
ATTiny85, ATTiny84 এবং ATMega328P প্রোগ্রামিং: Arduino ISP হিসাবে

প্রস্তাবনা

আমি সম্প্রতি কয়েকটি ESP8266 ভিত্তিক IoT প্রজেক্ট ডেভেলপ করেছি এবং দেখেছি যে কোর প্রসেসরটি পরিচালনার জন্য আমার প্রয়োজনীয় সমস্ত কাজ সম্পাদন করতে হিমশিম খাচ্ছে, তাই আমি কিছু কম গুরুত্বপূর্ণ কার্যকলাপকে একটি ভিন্ন মাইক্রোকন্ট্রোলারে বিতরণ করার সিদ্ধান্ত নিয়েছি এইভাবে ESP8266 মুক্ত করে IoT ডিভাইস হিসেবে কাজ করা শুরু করে।

আমি আমার প্রজেক্টকে যতটা সম্ভব বিস্তৃত দর্শকদের কাছে প্রকাশ করতে চেয়েছিলাম, আমি আরডুইনো আইডিইকে পছন্দের ডেভেলপমেন্ট প্ল্যাটফর্ম হিসাবে ব্যবহার করার সিদ্ধান্ত নিয়েছি কারণ এটির একটি ব্যাপকভাবে সমর্থিত সম্প্রদায় রয়েছে।

নকশা সীমাবদ্ধতা

হাতের আবেদনের জন্য উপযুক্ত মাইক্রোকন্ট্রোলার নির্বাচন করার অনুমতি দেয় এমন টার্গেট ডিভাইসের যুক্তিসঙ্গত বিস্তারের ব্যবস্থা করার জন্য, আমি নিম্নলিখিত এটমেল অংশগুলি স্থির করেছি; ATMega328P, ATTiny84 এবং ATTiny85। প্রয়োজনীয় প্রোগ্রামারের জটিলতা সীমাবদ্ধ করার জন্য আমি সমস্ত ডিভাইসের অভ্যন্তরীণ ঘড়ির পছন্দকে সীমাবদ্ধ করেছি এবং শুধুমাত্র ATMega328P এবং ATTiny84 এর জন্য 16MHz বাহ্যিক।

আরডুইনো সহ প্রোগ্রামিংয়ের নোটগুলির একটি সংগ্রহ এবং এই ডিভাইসগুলির জন্য আমি কীভাবে একটি সহজ আরডুইনো ইউনো ভিত্তিক প্রোগ্রামারকে একত্রিত করেছি তার একটি বিবরণ (উপরের ছবিগুলি)।

আমি কি অংশ প্রয়োজন?

প্রোগ্রামার তৈরি করতে আপনার নিম্নলিখিত অংশগুলির প্রয়োজন হবে

  1. 1 Arduino Uno বন্ধ
  2. 2 টি 28 পিন জিরো ইনসারশন ফোর্স (ZIF) ডিআইপি সকেট (ATMega328P, ATTiny85, ATTiny84 রাখার জন্য)
  3. Arduino প্রোটোটাইপ shাল থেকে 1 বন্ধ (আমি এখানে আমার পেয়েছি;
  4. 5MM LEDs বন্ধ 2
  5. 2K 1K প্রতিরোধক বন্ধ
  6. 10K প্রতিরোধক বন্ধ 1
  7. 4p 22pF সিরামিক ক্যাপাসিটার
  8. 16MHz স্ফটিক 2 বন্ধ
  9. 3 বন্ধ 0.1uF সিরামিক ক্যাপাসিটার
  10. 47uF ইলেক্ট্রোলাইটিক ক্যাপাসিটরের মধ্যে 1 বন্ধ
  11. 10uF ইলেক্ট্রোলাইটিক ক্যাপাসিটরের 1 বন্ধ
  12. বিভিন্ন দৈর্ঘ্যের তারের মোড়ানো তার।

আমার কোন সফটওয়্যার দরকার?

Arduino IDE 1.6.9

আমার কোন দক্ষতা দরকার?

  1. Arduino IDE এর জ্ঞান
  2. ইলেকট্রনিক্স সম্পর্কে কিছু জ্ঞান এবং কিভাবে ঝালাই করতে হয়
  3. ম্যানুয়াল দক্ষতা একটি মহান চুক্তি
  4. একটি ধৈর্য এবং ভাল দৃষ্টিশক্তি

বিষয় আচ্ছাদিত

  1. Atmel মাইক্রোকন্ট্রোলার প্রোগ্রামিং এর সাধারণ ভূমিকা
  2. আইএসপি বা বুটলোডার: এটি সবই কিছুটা বিভ্রান্তিকর
  3. সার্কিট ওভারভিউ
  4. আপনার প্রোগ্রামার সেট আপ
  5. আপনার Arduino ISP প্রোগ্রামার ব্যবহার করে
  6. আপনার টার্গেট সিস্টেমে কোড তৈরি করা
  7. Gotchas
  8. উপসংহার
  9. রেফারেন্স ব্যবহার করা হয়েছে

অস্বীকৃতি

বরাবরের মতো, আপনি এই নির্দেশগুলি আপনার নিজের ঝুঁকিতে ব্যবহার করেন এবং সেগুলি অসমর্থিত হয়।

ধাপ 1: প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি

প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি
প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি
প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি
প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি
প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি
প্রোগ্রামিং এটমেল মাইক্রোকন্ট্রোলারের সাধারণ পরিচিতি

Atmel মাইক্রোকন্ট্রোলার প্রোগ্রামিং এর জন্য দুটি পদ্ধতি আছে;

  1. সিস্টেম প্রোগ্রামিংয়ে (ISP),
  2. সেলফ প্রোগ্রামিং (বুটলোডারের মাধ্যমে)।

প্রাক্তন পদ্ধতি (1) প্রথমে ডিভাইসটিকে রিসেটে রাখার পরে SPI ইন্টারফেসের মাধ্যমে মাইক্রোকন্ট্রোলারকে সরাসরি প্রোগ্রাম করে। নির্দেশ না দেওয়া পর্যন্ত অন্যথায় একটি সংকলিত এক্সিকিউটেবল সোর্স প্রোগ্রাম ডিভাইসে ক্রমবর্ধমানভাবে কোড মেমরিতে লেখা হয় যেখান থেকে এটি শুরুতে কার্যকর করা হয়। Atmel ডিভাইস প্রোগ্রামিং করতে সক্ষম অনেক ISP ডিভাইস আছে, যার মধ্যে কয়েকটি হচ্ছে (ছবি 1); AVRISPmkII, Atmel-ICE, Olimex AVR-ISP-MK2, Olimex AVR-ISP500। ছবি 2 দেখায় কিভাবে ISP ডিভাইসটি ATMega328P (অদ্ভুতভাবে চিহ্নিত ICSP) এর সাথে Arduino Uno R3 বোর্ডে সংযুক্ত হয় (ছবি 3 ISP পিন আউট দেয়)। এটি একটি এসটিআই ইন্টারফেসের মাধ্যমে একটি এটমেল মাইক্রোকন্ট্রোলারকে একটি আরডুইনো ইউনো ব্যবহার করে আইএসপি (ছবি 4) দিয়ে প্রোগ্রাম করাও সম্ভব, এখানে ইউএনও একটি ATMega328P প্রোগ্রাম করার জন্য ব্যবহৃত হচ্ছে।

পরবর্তী পদ্ধতি (2) এক্সিকিউটেবল কোড মেমরিতে স্থায়ীভাবে বসবাসকারী 'বুটলোডার' নামে পরিচিত একটি ছোট কোড স্টাব ব্যবহার করে (সাধারণত দুর্ঘটনাক্রমে ওভাররাইটিং পিক 5 রোধ করতে লক করা থাকে)। এই কোডটি পাওয়ার আপ বা ডিভাইস রিসেট করার পরে প্রথম কাজটি সম্পাদন করা হয় এবং মাইক্রোকন্ট্রোলারকে তার নিজের ইন্টারফেসের মাধ্যমে প্রাপ্ত একটি নতুন কোড দিয়ে পুনরায় প্রোগ্রাম করার অনুমতি দেয়। আরডুইনো আইডিই পিসিতে ইউএসবি কম পোর্ট হিসেবে ম্যাপ করা (বা ম্যাক, লিনাক্স বক্স ইত্যাদি, পিক)) আরডুইনো আইডিই দ্বারা বুটলোডার পদ্ধতি ব্যবহার করে এবং আরডুইনো ইউনো এর ক্ষেত্রে এটির মাধ্যমে এটমেল ডিভাইসের সাথে যোগাযোগ করে ATMega328P এর IC পিন 2 এবং 3 তে সিরিয়াল ইন্টারফেস। এছাড়াও Arduino Uno (ATMega328P মাইক্রোকন্ট্রোলার সরিয়ে দিয়ে) বুটলোডার পদ্ধতির মাধ্যমে ATMega328P প্রোগ্রাম করার জন্য ব্যবহার করা যেতে পারে যা কার্যকরভাবে USB থেকে সিরিয়াল অ্যাডাপ্টার ডিভাইস (ছবি 7) হিসাবে কাজ করে।

ইউএসবি থেকে সিরিয়াল অ্যাডাপ্টার কি?

একটি ইউএসবি টু সিরিয়াল অ্যাডাপ্টার হল হার্ডওয়্যারের একটি টুকরা যা আপনার পিসি ইউএসবি পোর্টে প্লাগ করে এবং একটি সিরিয়াল কম পোর্টের মতো দেখায় (আগের সময়গুলির একটি উত্তরাধিকার যখন কম্পিউটারগুলি একটি সিরিয়াল যোগাযোগ মান ব্যবহার করে যা EIA-232, V24 বা RS232 নামে পরিচিত) আপনাকে অনুমতি দেয় মাইক্রোকন্ট্রোলারের একই বৈদ্যুতিক স্তরে সিরিয়াল ডেটা পাঠান এবং গ্রহণ করুন। যখন আপনি Arduino IDE থেকে সরঞ্জাম -> পোর্ট -> COMx নির্বাচন করেন তখন আপনি আপনার পিসিকে আপনার Arduino এর সাথে সংযুক্ত/ইন্টারফেস করছেন।

এইরকম একটি যন্ত্রকে কখনও কখনও FTDI (ছবি 8, যা আসলে একটি ব্র্যান্ড নাম) বা CH340G ইত্যাদি হিসাবে উল্লেখ করা হয়। নিচে.

স্পষ্টতার জন্য ছবি 9 দুটি Atmel ডিভাইস এবং Arduino Uno R3 এ তাদের নিজ নিজ ISP সংযোগকারীগুলিকে চিহ্নিত করে।

দ্রষ্টব্য 1: যদি আপনি FTDI ডিভাইস রুট থেকে নেমে যেতে চান তবে নিশ্চিত করুন যে আপনি একজন সম্মানিত বিক্রেতার কাছ থেকে কিনছেন কারণ বাজারে অনেক সস্তা নকল ডিভাইস রয়েছে যা উইন্ডোজ আপডেট প্রয়োগে ব্যর্থ হয়েছে।

প্রস্তাবিত: