সুচিপত্র:
- ধাপ 1: আপনার কি দরকার?
- ধাপ 2: একটি ব্রেডবোর্ডে মেগা-আইএসপি প্রোগ্রামার তৈরি করা
- ধাপ 3: স্কেচ আপলোড করা
- ধাপ 4: Avrdude দিয়ে ব্যবহার করা
- ধাপ 5: একটি Attiny2313 এ USBtinyISP ফার্মওয়্যার বার্ন করা
- ধাপ 6: Arduino বুটলোডার বার্ন করা
- ধাপ 7: সমস্যা সমাধান
ভিডিও: কিভাবে একটি AVR (arduino) অন্য Arduino এর সাথে প্রোগ্রাম করতে হয়: 7 টি ধাপ
2024 লেখক: John Day | [email protected]. সর্বশেষ পরিবর্তিত: 2024-01-30 08:04
এই নির্দেশাবলী দরকারী যদি:
* আপনি আপনার arduino atmega168 দিয়ে পেয়েছেন এবং আপনি আপনার স্থানীয় ইলেকট্রনিক্স দোকানে একটি atmega328 কিনেছেন। এটিতে একটি arduino বুটলোডার নেই * আপনি এমন একটি প্রকল্প তৈরি করতে চান যা arduino ব্যবহার করে না - শুধু একটি নিয়মিত AVR চিপ (যেমন USBTinyISP) - আপনার একটি পরিষ্কার attiny2313/attiny48 ইত্যাদি আছে যা আপনি ফার্মওয়্যার বার্ন করতে চান। সাধারণত আপনার নতুন চিপ প্রোগ্রাম করার জন্য USBTinyISP এর মত একটি ISP (ইন সিস্টেম প্রোগ্রামার) থাকতে হবে। আরডুইনো থাকার ফলে আপনি এটি একটি প্রোগ্রামার হতে শেখাতে পারেন র্যান্ডাল বনের একটি দুর্দান্ত কাজের জন্য ধন্যবাদ। তিনি মেগা -আইএসপি তৈরি করেছেন - একটি আরডুইনো স্কেচ যা প্রোগ্রামারের মতো কাজ করে।
ধাপ 1: আপনার কি দরকার?
* একটি কার্যকরী Arduino (অথবা একটি ক্লোন - আমি BBB ব্যবহার করছি - BareBonesBoard এবং একটি RBBB - RealBareBonesBoard by ModernDevices) * একটি চিপ যা আপনি প্রোগ্রাম করতে চান (atmega8, atmega168, atmega368, attiny2313, attiny13) * একটি ব্রেডবোর্ড বা আইএসপি হেডার সহ একটি বোর্ড * 3 এলইডি + 3 প্রতিরোধক * ব্রেডবোর্ডের তার
ধাপ 2: একটি ব্রেডবোর্ডে মেগা-আইএসপি প্রোগ্রামার তৈরি করা
একটি চিপ প্রোগ্রাম করার জন্য আপনার Arduino সংযোগ করার দুটি উপায় আছে।
আপনি আপনার এভিআর চিপটি একটি রুটিবোর্ডে প্লাগ করতে পারেন এবং 5v এবং GND কে সংশ্লিষ্ট পিনগুলিতে সংযুক্ত করতে পারেন (ডেটশীটটি পরীক্ষা করুন!) + একটি পুলআপ রেসিস্টর রিসেট করতে এবং আপনার arduino থেকে চিপে তারের পিনগুলি সংযুক্ত করতে পারেন। এগুলি হল Arduino এবং তাদের ফাংশন 13 - SCK 12 - MISO 11 - MOSI 10 - RST (রিসেট) অথবা আপনি একটি 2x3pin ISP হেডার তৈরি করতে পারেন যা আপনি একটি বোর্ডে প্লাগ করতে পারেন যা একটি (অন্য arduino বোর্ড) প্রদান করে। আইএসপি হেডারের জন্য পিনআউট হল তৃতীয় ছবিতে প্রোগ্রামারের অবস্থা নির্দেশ করার জন্য 3 টি এলইডি আছে। পিন 9 - নীল নেতৃত্বাধীন - এটি প্রোগ্রামারের শ্রবণশক্তি। পিন 8 - লাল নেতৃত্ব - একটি ত্রুটি নির্দেশ করে পিন 7 - সবুজ নেতৃত্ব - নির্দেশ করে যে প্রোগ্রামিং হচ্ছে মেগা-আইএসপি ieldাল। ইয়ারোস্লাভ ওসাদচি agগলে ieldাল ডিজাইন করেছিলেন। আপনি তার সাইটে agগল ফাইল পেতে পারেন:
ধাপ 3: স্কেচ আপলোড করা
মেগা-আইএসপি গুগল কোড থেকে স্কেচ ডাউনলোড করুন। (লেখার সময় avrisp.03.zip)। এটি আনপ্যাক করুন এবং arduino ide চালান এবং avrisp.pde খুলুন। এটি আপনার arduino বোর্ডে আপলোড করুন। হৃদস্পন্দনের নেতৃত্ব দেওয়া শুরু করা উচিত।
ধাপ 4: Avrdude দিয়ে ব্যবহার করা
Avrdude (এবং এটি ব্যবহার করে এমন সমস্ত GUIs) ব্যবহার করার জন্য আপনাকে 'avrisp' প্রোগ্রামার নির্বাচন করতে হবে। সবচেয়ে নিরাপদ বিটরেট হল 19200।
কমান্ডলাইন থেকে আপনার নতুন atmega168 পরীক্ষা করার জন্য চেষ্টা করুন: $ avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 /dev /USB0 হল পোর্ট যা arduino আমার লিনাক্স বক্সের সাথে সংযুক্ত (আপনার com5 হতে পারে)। এটি সরঞ্জাম -> সিরিয়াল পোর্টে arduino IDE তে চেক করা যেতে পারে। আপনার পাওয়া উচিত: [kabturek@hal -9000 ~]# avrdude -p m168 -P /dev /ttyUSB0 -c avrisp -b 19200 avrdude: AVR ডিভাইসটি আরম্ভ করা হয়েছে এবং নির্দেশ গ্রহণ করার জন্য প্রস্তুত পড়া | ############################################ | 100% 0.13s avrdude: ডিভাইসের স্বাক্ষর = 0x1e9406 avrdude: safemode: Fuses OK avrdude সম্পন্ন। ধন্যবাদ. তার মানে সবকিছু ঠিক আছে। যদি আপনি ত্রুটি পান - শেষ ধাপটি পরীক্ষা করুন।
ধাপ 5: একটি Attiny2313 এ USBtinyISP ফার্মওয়্যার বার্ন করা
ইউএসবিটিনিআইএসপি লেডিএডা থেকে একটি দুর্দান্ত প্রোগ্রামার যা সত্যিই সস্তা - 22 $। আমি একটি অতিরিক্ত attiny2313 এবং কিছু অংশ ছিল তাই আমি নিজেই একটি তৈরি করার সিদ্ধান্ত নিয়েছে। যদি আপনার পিসিবি তৈরির কোন অভিজ্ঞতা না থাকে তবে আমি আপনাকে কিটটি কেনার পরামর্শ দিচ্ছি কারণ এটি আপনার নিজের তৈরি করার চেয়ে উচ্চমানের:)। কমপক্ষে পিসিবি কিনুন যদি আপনি এটি তৈরি করতে চান। আপনি এটি Adafruit থেকে পেতে পারেন। ATTiny2313 সংযুক্ত করুন শেষ ছবিতে আপনি লাল রঙে ISP- এর জন্য ব্যবহৃত পিনের সাথে attiny2313 দেখতে পারেন। ছবিটি লেডিএডা এভিআর টিউটোরিয়াল থেকে। ফার্মওয়্যার বার্ন করা: USBTinyISP ফার্মওয়্যার আনপ্যাক করুন। Spi dir এ যান এবং $ avrdude -p pt2313 -P /dev /ttyUSB0 -c avrisp -b 19200 চালান যাতে চিপ দিয়ে সবকিছু ঠিক আছে কিনা। এখন ফিউজ সেট করুন: । এবং ফার্মওয়্যার বার্ন করুন: $ avrdude -B 1 -pt2313 -U ফ্ল্যাশ: w: main.hex -P /dev /ttyUSB0 -c avrisp -b 19200 Voila। আপনার attiny2313- এ USBTinyISP ফার্মওয়্যার আছে।
ধাপ 6: Arduino বুটলোডার বার্ন করা
সংযোগগুলি সহজ করার জন্য আমি একটি RBBB ব্যবহার করেছি বলে আমি কিছুটা প্রতারণা করেছি। স্কিমা ছবি #2 এ রয়েছে। যদি আপনি 2 টি arduinos ব্যবহার করেন তবে ছবি #3 ব্যবহার করুন এবং ISP পিনটি ICSP 2x3header এর সাথে দ্বিতীয় (স্লেভ) arduino তে সংযুক্ত করুন শুধুমাত্র প্রথম বোর্ডের সাথে USB পাওয়ার সংযোগ করুন। GUI উপায় এটি একটি সামান্য চতুর কারণ আপনি শুধু Tools-> Burn Bootloader-> w/ AVR ISP ব্যবহার করতে পারবেন না কারণ ডিফল্ট গতি মেগা-আইএসপি-র জন্য অনেক বড়। Avrdude.conf খুঁজুন যা arduino IDE (arduino/হার্ডওয়্যার/সরঞ্জাম/avrdude.conf তে) এর সাথে আসে এবং 115200 থেকে 19200 পর্যন্ত avrisp প্রোগ্রামারের সীমানা পরিবর্তন করুন (312 লাইনের কাছাকাছি) avrdude.conf প্রোগ্রামার আইডি = "avrisp" খুঁজুন; desc = "Atmel AVR ISP"; baudrate = 115200; # ডিফল্ট হল 115200 টাইপ = stk500;; থেকে: প্রোগ্রামার আইডি = "avrisp"; desc = "Atmel AVR ISP"; baudrate = 19200; # ডিফল্ট হল 115200 টাইপ = stk500;; এখন আপনি টুলস ব্যবহার করতে পারেন -> বার্ন বুটলোডার -> w/AVR ISP (টুলস মেনু থেকে সঠিক বোর্ড নির্বাচন করার পরে) কমলাইন আপনি কমান্ডলাইনটিও ব্যবহার করতে পারেন: arduino/হার্ডওয়্যার/বুটলোডার/atmega/Makefile সম্পাদনা করুন এবং ISPTOOL/PORT পরিবর্তন করুন /SPEED to: # avrdude isp টুল ISPTOOL = avrisp ISPPORT = /dev /ttyUSB0 ISPSPEED = -b 19200 না প্যারামিটার লিখুন না আপনি $ make diecimila_isp ফিউজ এবং বুটলোডার বার্ন করতে লিখতে পারেন। জ্বলন্ত জ্বলুন!
ধাপ 7: সমস্যা সমাধান
Avrdude ত্রুটি: avrdude: ser_open (): ডিভাইস খুলতে পারে না "/dev/ttyUSB0": এমন কোন ফাইল বা ডিরেক্টরি নেই আপনার ভুল পোর্ট (-P) নির্দিষ্ট আছে অথবা আপনার arduino সংযুক্ত নয়। সংযোগ পরীক্ষা করুন avrdude: ডিভাইসের স্বাক্ষর = 0x000000 avrdude: হ্যাঁ! অবৈধ ডিভাইসের স্বাক্ষর। ডাবল চেক কানেকশন এবং আবার চেষ্টা করুন, অথবা এই চেকটি ওভাররাইড করতে -F ব্যবহার করুন। এটি একটি সাধারণ ত্রুটি। আপনার চিপটি স্বীকৃত নয়। বোর্ডে কানেকশন চেক করুন (GND/5V পিনের সাথে সংযুক্ত?) আপনি এই ত্রুটিটি পাবেন যখন আপনার চিপ একটি বহিরাগত দোলক ব্যবহার করার জন্য কনফিগার করা হয় এবং এটি কাজ করছে না (একটি নেই বা এটি সঠিকভাবে দোলনা নয় - 22pf ক্যাপ অনুপস্থিত?)
প্রস্তাবিত:
কিভাবে একটি এমুলেটরের সাথে একটি কন্ট্রোলার ইনস্টল, চালানো এবং সংযুক্ত করতে হয়: 7 টি ধাপ
কিভাবে একটি এমুলেটরের সাথে একটি কন্ট্রোলার ইনস্টল, চালানো এবং সংযুক্ত করতে হয়: আপনি কি কখনও বসে আছেন এবং আপনার ছোটবেলাকে একজন তরুণ গেমার হিসাবে মনে রেখেছেন এবং কখনও কখনও ইচ্ছা করেন যে আপনি অতীতের সেই পুরোনো রত্নগুলিকে আবার দেখতে পারেন? আচ্ছা, এর জন্য একটি অ্যাপ আছে …. আরো বিশেষভাবে গেমারদের একটি সম্প্রদায় আছে যারা প্রোগ্রাম তৈরি করে
কিভাবে একটি 555 টাইমার ব্যবহার করে একটি জাল গাড়ির অ্যালার্ম তৈরি করতে হয়: 5 টি ধাপ
কিভাবে একটি 555 টাইমার ব্যবহার করে একটি নকল গাড়ির অ্যালার্ম তৈরি করা যায়: এই প্রকল্পটি দেখায় কিভাবে NE555 ব্যবহার করে পাঁচ সেকেন্ড বিলম্বের সাথে একটি ঝলকানি LED আলো তৈরি করা যায়। এটি একটি ভুয়া গাড়ী এলার্ম হিসাবে কাজ করতে পারে, কারণ এটি একটি গাড়ী এলার্ম সিস্টেমের নকল করে যার সাথে এটি উজ্জ্বল লাল ঝলকানি LED। অসুবিধা স্তর সার্কিট নিজেই কঠিন নয়
রোটারি এনকোডার: এটি কিভাবে কাজ করে এবং কিভাবে Arduino এর সাথে ব্যবহার করতে হয়: 7 টি ধাপ
রোটারি এনকোডার: এটি কিভাবে কাজ করে এবং কিভাবে Arduino এর সাথে ব্যবহার করতে হয়: আপনি এই এবং অন্যান্য আশ্চর্যজনক টিউটোরিয়ালগুলি ইলেক্ট্রোপিকের অফিসিয়াল ওয়েবসাইট ওভারভিউ পড়তে পারেন প্রথমে, আপনি ঘূর্ণনশীল এনকোডার সম্পর্কে কিছু তথ্য দেখতে পাবেন এবং তারপরে আপনি কীভাবে শিখবেন
স্পর্শ সুইচ - কিভাবে একটি ট্রানজিস্টর এবং ব্রেডবোর্ড ব্যবহার করে একটি টাচ সুইচ তৈরি করতে হয় ।: 4 ধাপ
স্পর্শ সুইচ | কিভাবে একটি ট্রানজিস্টর এবং ব্রেডবোর্ড ব্যবহার করে একটি টাচ সুইচ তৈরি করতে হয় ।: টাচ সুইচ ট্রানজিস্টর প্রয়োগের উপর ভিত্তি করে একটি খুব সহজ প্রকল্প। এই প্রকল্পে BC547 ট্রানজিস্টার ব্যবহার করা হয়েছে যা টাচ সুইচ হিসাবে কাজ করে। ভিডিওটি দেখার জন্য নিশ্চিত থাকুন যা আপনাকে প্রকল্প সম্পর্কে সম্পূর্ণ বিবরণ দেবে
কিভাবে একটি নির্দিষ্ট সময়ে রেকর্ড করার জন্য অডাসিটি প্রোগ্রাম করতে হয়: 8 টি ধাপ
কিভাবে একটি নির্দিষ্ট সময়ে রেকর্ড করার জন্য অডাসিটি প্রোগ্রাম করা যায়: এটি একটি দ্রুত কৌশল, এটি গুপ্তচরবৃত্তির জন্য ব্যবহার করুন, একটি ফোন কল রেকর্ড করার জন্য অথবা কেবল আপনার ইতিহাস ক্লাসের বক্তৃতা রেকর্ড করার জন্য যখন আপনি জনপ্রিয় ওপেন-সোর্স অ্যাপ ব্যবহার করে Audacitylet এর শুরু