সুচিপত্র:

স্ব-তৈরি আরডুইনো বোর্ড: 8 টি ধাপ
স্ব-তৈরি আরডুইনো বোর্ড: 8 টি ধাপ

ভিডিও: স্ব-তৈরি আরডুইনো বোর্ড: 8 টি ধাপ

ভিডিও: স্ব-তৈরি আরডুইনো বোর্ড: 8 টি ধাপ
ভিডিও: গোবরে পা দিয়ে ইনফেকশন হয়ে গেল 2024, জুলাই
Anonim
স্বনির্মিত Arduino বোর্ড
স্বনির্মিত Arduino বোর্ড

আপনার নিজস্ব Arduino- বোর্ড ডিজাইন করে আপনি কিছু নতুন উপাদান এবং ইলেকট্রনিক সার্কিট সম্পর্কে জানতে পারবেন, যার মধ্যে রয়েছে বিদ্যুৎ সরবরাহ, টাইমিং সার্কিট এবং এটিমেগা আইসি (ইন্টিগ্রেটেড সার্কিট) ব্যবহারের মতো কিছু উন্নত বিষয়।

এটি ভবিষ্যতে আপনার নিজস্ব প্রকল্প যেমন আবহাওয়া স্টেশন, হোম অটোমেশন শিল্ড ইত্যাদি তৈরি করতে আপনাকে সহায়তা করবে।

স্বনির্মিত Arduino এর সুবিধা হল যে এটি একটি কম শক্তি খরচ এবং নিশ্চিত করে যে একটি প্রকল্প একটি ব্যাটারিতে দীর্ঘ সময় চলতে পারে।

উপরন্তু আপনি ডিজিটাল বা এনালগ পোর্ট সম্প্রসারণ বা কিছু যোগাযোগ মডিউল যোগ করে বোর্ড প্রসারিত করতে পারেন।

সরবরাহ

হার্ডওয়্যার

একটি ন্যূনতম Arduino তৈরি করতে, আপনার নিম্নলিখিত হার্ডওয়্যার প্রয়োজন হবে:

Arduino বুটলোডারের সাথে 1x ATmega328P-PU মাইক্রোকন্ট্রোলার

1x 7805 লিনিয়ার ভোল্টেজ রেগুলেটর (5v আউটপুট, 35v সর্বোচ্চ ইনপুট)

1x ব্রেডবোর্ড (আমি 830 পিন বোর্ড ব্যবহার করছি)

বিভিন্ন সংযোগকারী তারের

1x 16 MHz স্ফটিক অসিলেটর

1x 28 পিন আইসি সকেট

1x 1 μF, 25 V ইলেক্ট্রোলাইটিক ক্যাপাসিটর

1x 100 μF, 25 V ইলেক্ট্রোলাইটিক ক্যাপাসিটর

2x 22 pF, 50 V সিরামিক ক্যাপাসিটার

2x 100 nF, 50 V সিরামিক ক্যাপাসিটার

2x 330 Ohms প্রতিরোধক (R1 এবং R2)

1x 10 kOhm প্রতিরোধক (R3)

আপনার পছন্দের 2x LEDs (LED1 এবং LED2)

1x পুশ বোতাম

Xচ্ছিক 2x 6-পিন হেডার এবং 3x 8-পিন হেডার

1x PP3- টাইপ ব্যাটারি স্ন্যাপ

1x 9 V PP3- টাইপ ব্যাটারি

1x FTDI প্রোগ্রামিং অ্যাডাপ্টার

ধাপ 1: 7805 লিনিয়ার ভোল্টেজ রেগুলেটর

7805 লিনিয়ার ভোল্টেজ রেগুলেটর
7805 লিনিয়ার ভোল্টেজ রেগুলেটর
7805 লিনিয়ার ভোল্টেজ রেগুলেটর
7805 লিনিয়ার ভোল্টেজ রেগুলেটর
7805 লিনিয়ার ভোল্টেজ রেগুলেটর
7805 লিনিয়ার ভোল্টেজ রেগুলেটর

একটি লিনিয়ার ভোল্টেজ রেগুলেটরে একটি সাধারণ সার্কিট থাকে যা একটি ভোল্টেজকে অন্য ভোল্টেজে রূপান্তর করে। 7805 রেগুলেটর 7 থেকে 30 ভোল্টের মধ্যে একটি ভোল্টেজকে একটি নির্দিষ্ট 5 ভোল্টে রূপান্তর করতে পারে, যার কারেন্ট 1 এমপি পর্যন্ত, যা আমাদের Arduino- বোর্ডের জন্য উপযুক্ত।

আমরা পাওয়ার সাপ্লাই সার্কিট তৈরির সাথে শুরু করব যার মধ্যে TO-220 ফর্মের একটি 7805 ভোল্টেজ রেগুলেটর এবং প্রতিটি 100 μF সহ দুটি ক্যাপাসিটার রয়েছে।

যখন আপনি 7805 চিপের সামনের দিকে তাকান - বাম দিকের পিনটি ইনপুট ভোল্টেজের জন্য, কেন্দ্রের পিনটি GND এর সাথে সংযোগ করে এবং ডান দিকের পিনটি 5 V আউটপুট সংযোগ। আমি একটি তাপ সিঙ্ক স্থাপন করার সুপারিশ করব, কারণ যখন সার্কিটটি সর্বোচ্চ 1 এমপি কারেন্ট পর্যন্ত টানবে তখন 7805 চিপটি শান্ত গরম থাকবে (আপনি যখন এটি স্পর্শ করবেন তখন আপনি আপনার আঙুলের ডগা বার্ন করতে পারেন)।

নিয়ন্ত্রক এবং ভূমির IN এর মধ্যে 100 μF ক্যাপাসিটর এবং পাওয়ার এবং মাটির মধ্যে ডান রেলটিতে a100 μF ক্যাপাসিটরের রাখুন। আপনাকে অবশ্যই সতর্ক থাকতে হবে - ইলেক্ট্রোলাইটিক ক্যাপাসিটরটি পোলারাইজড (ক্যাপাসিটরের সিলভার স্ট্রিপ গ্রাউন্ড লেগকে নির্দেশ করে) এবং অবশ্যই পরিকল্পিত অনুযায়ী স্থাপন করতে হবে।

আপনার ভোল্টেজ রেগুলেটর যেখানে থাকবে তার জন্য পাওয়ার এবং গ্রাউন্ড ওয়্যার যুক্ত করুন, প্রতিটি রেলকে মাঝখানে এবং বোর্ডের ডানদিকে সংযুক্ত করুন। এইভাবে আমরা ব্রেডবোর্ডের উপরের এবং নীচের রেল থেকে 5 ভোল্ট পাওয়ার সাপ্লাই পাই। অতিরিক্তভাবে আমরা একটি লাল LED অন্তর্ভুক্ত করব যা বিদ্যুৎ চালু হলে জ্বলবে, এইভাবে আমরা সবসময় দেখতে পাব কখন আমাদের বোর্ড চালিত হবে।

একটি LED একটি ডায়োড এবং এটি শুধুমাত্র বৈদ্যুতিক স্রোতকে এক দিকে প্রবাহিত করতে দেয়। লম্বা পায়ে এবং ছোট পা থেকে বিদ্যুৎ প্রবাহিত হওয়া উচিত। এলইডি ক্যাথোডের একটি সামান্য চ্যাপ্টা দিকও রয়েছে, যা এলইডি -র সংক্ষিপ্ত, নেতিবাচক পায়ের সাথে মিলে যায়।

আমাদের সার্কিটে 5 ভোল্টের পাওয়ার সাপ্লাই আছে এবং একটি লাল LED এর রেটিং প্রায় 1.5 - 2 ভোল্ট। ভোল্টেজ কমাতে আমাদের অবশ্যই LED এর সাথে সিরিজের রেসিস্টর সংযোগ করতে হবে যা LED ধ্বংসকে প্রতিরোধ করার জন্য প্রবাহিত বিদ্যুতের পরিমাণ সীমিত করে। কিছু ভোল্টেজ প্রতিরোধক দ্বারা ব্যবহৃত হবে এবং এটির একটি উপযুক্ত অংশ LED জুড়ে প্রয়োগ করা হবে। LED এর সংক্ষিপ্ত পা এবং চিপের ডান হাতের কালো তারের ধারণকারী সারির (GND) মধ্যে রোধক সন্নিবেশ করান।

ভোল্টেজ রেগুলেটরের বাম দিকে লাল এবং কালো তারগুলি যেখানে আপনার পাওয়ার সাপ্লাই প্লাগ ইন করা হবে। লাল তারের শক্তি এবং কালো তারের স্থল (GND) জন্য।

দ্রষ্টব্য: আপনি শুধুমাত্র 7-16V এর মধ্যে একটি পাওয়ার সাপ্লাই সংযুক্ত করতে পারেন। কোন কম এবং আপনি আপনার নিয়ন্ত্রক থেকে 5V পাবেন না, এবং 17 ভোল্টেজ বেশি হলে আপনার চিপ ক্ষতিগ্রস্ত হবে। একটি 9V ব্যাটারি, 9V ডিসি পাওয়ার সাপ্লাই, বা 12V ডিসি পাওয়ার সাপ্লাই উপযুক্ত।

এবং আরও কিছু অগ্রিম সার্কিটের জন্য আপনি নিয়মিত ভোল্টেজ সহ একটি ভোল্টেজ নিয়ন্ত্রক স্থাপন করতে পারেন। এইভাবে আপনি বোর্ডে কিছু 3.3 V সেন্সর যুক্ত করতে পারেন বা 9 V DC মোটরকে শক্তি দিতে পারেন।

রৈখিক ভোল্টেজ নিয়ন্ত্রকদের সম্পর্কে আরো -

www.instructables.com/id/Introduction-to-Linear-Voltage-Regulators

ধাপ 2: ATmega328P-PU মাইক্রোকন্ট্রোলার

ATmega328P-PU মাইক্রোকন্ট্রোলার
ATmega328P-PU মাইক্রোকন্ট্রোলার
ATmega328P-PU মাইক্রোকন্ট্রোলার
ATmega328P-PU মাইক্রোকন্ট্রোলার
ATmega328P-PU মাইক্রোকন্ট্রোলার
ATmega328P-PU মাইক্রোকন্ট্রোলার

ব্রেডবোর্ডে একটি Arduino তৈরি করতে আপনার একটি ATmega328P-PU মাইক্রোকন্ট্রোলার প্রয়োজন যা আমাদের স্বনির্মিত Arduino- বোর্ডের মস্তিষ্ক। স্কিম্যাটিক্সে দেখানো হিসাবে এটি রাখুন এবং সাবধান থাকুন - যদি আপনি তাদের জোর করেন তবে পা ভেঙ্গে যেতে পারে, অথবা আপনি 28 পিন আইসি সকেট ব্যবহার করতে পারেন। IC ব্রেডবোর্ডের বাম দিকে একটি চাঁদের আকৃতির কাটা দিয়ে স্থাপন করা উচিত (পিনের সংখ্যা 1 থেকে 28 ঘড়ির কাঁটার বিপরীতে)।

দ্রষ্টব্য: সমস্ত ATmega IC তে Arduino বুটলোডার থাকে না (সফ্টওয়্যার যা এটি একটি Arduino এর জন্য লেখা স্কেচ ব্যাখ্যা করতে দেয়)। আপনার স্বনির্মিত আরডুইনো জন্য একটি মাইক্রোকন্ট্রোলার খুঁজছেন, ইতিমধ্যে বুটলোডার অন্তর্ভুক্ত যে একটি নির্বাচন করতে ভুলবেন না।

এখানে কিছু মাইক্রোকন্ট্রোলার তত্ত্ব।

একটি মাইক্রোকন্ট্রোলার হল একটি ক্ষুদ্র কম্পিউটার যা একটি প্রসেসরের সাথে নির্দেশাবলী সম্পাদন করে। আমাদের প্রোগ্রাম (স্কেচ) থেকে তথ্য এবং নির্দেশনা রাখার জন্য এটির বিভিন্ন ধরণের মেমরি রয়েছে; ATmega328P-PU- তে তিন ধরনের মেমরি রয়েছে: 32kB ISP (ইন-সিস্টেম প্রোগ্রামিং) ফ্ল্যাশ মেমরি যেখানে স্কেচ সংরক্ষণ করা হয়, 1kB EEPROM (ইলেক্ট্রিক্যালি ইরেজেবল প্রোগ্রামযোগ্য পঠনযোগ্য মেমরি) দীর্ঘমেয়াদী ডেটা স্টোরেজ এবং 2kB SRAM (স্ট্যাটিক র্যান্ডম-অ্যাক্সেস মেমরি) ভেরিয়েবল সংরক্ষণ করার জন্য যখন একটি স্কেচ চলছে।

দ্রষ্টব্য: মাইক্রোকন্ট্রোলারের ক্ষমতা সরানো হলে ফ্ল্যাশ মেমরি এবং EEPROM- এর ডেটা বজায় রাখা গুরুত্বপূর্ণ।

মাইক্রোকন্ট্রোলারে 13 ডিজিটাল সাধারণ-উদ্দেশ্য ইনপুট/আউটপুট (জিপিআইও) লাইন এবং ছয়টি 10-বিট (0 থেকে 1023 এর মধ্যে মান) এনালগ থেকে ডিজিটাল কনভার্টার (এডিসি) জিপিআইও লাইনে পিনে ভোল্টেজকে ডিজিটাল মান রূপান্তর করতে পারে। 0 এবং 255 এর মধ্যে মান সহ দুটি 8-বিট টাইমার সহ তিনটি টাইমার এবং 0 এবং 65535 এর মধ্যে মান সহ একটি 16-বিট টাইমার রয়েছে, যা একটি স্কেচে বিলম্ব () ফাংশন বা পালস প্রস্থ মডুলেশন (PWM) দ্বারা ব্যবহৃত হয় ।

পাঁচটি সফটওয়্যার নির্বাচনযোগ্য বিদ্যুৎ সাশ্রয়ী মোড রয়েছে এবং মাইক্রোকন্ট্রোলার 1.8V এবং 5.5V এর মধ্যে কাজ করে। আপনি ATmega328P-PU এর পিন লেআউটের রেফারেন্স হিসেবে ছবিটি ব্যবহার করতে পারেন।

পোর্টগুলির তিনটি গ্রুপ রয়েছে: PB, PC, এবং PD যথাক্রমে 8, 7, এবং 8 পিন সহ, দুটি গ্রাউন্ড (GND) পিন, সাপ্লাই ভোল্টেজ (AVCC) সহ 5V পিন (VCC), এবং এনালগ রেফারেন্স ভোল্টেজ (AREF) এনালগ-টু-ডিজিটাল কনভার্টার (এডিসি) এর জন্য পিন।

ধাপ 3: ATmega328P-PU আন্তconসংযোগ

ATmega328P-PU আন্তconসংযোগ
ATmega328P-PU আন্তconসংযোগ

IC রাখার পর, ATMEGA এর পিন 7, 20, এবং 21 কে ব্রেডবোর্ডের পজিটিভ পাওয়ার রেল এবং 8 এবং 23 পিনেট নেগেটিভ পাওয়ার রেলের সাথে সংযুক্ত করুন, উভয় পাশে পজিটিভ এবং GND পাওয়ার রেল সংযোগ করতে জাম্পার তার ব্যবহার করুন। বোর্ড, ছবিতে দেখানো হয়েছে।

পিন 7 - Vcc - ডিজিটাল সাপ্লাই ভোল্টেজ

পিন 8 - GND

পিন 22 - GND

পিন 21 - AREF - ADC এর জন্য এনালগ রেফারেন্স পিন

পিন 20 - AVcc - ADC কনভার্টারের জন্য সরবরাহ ভোল্টেজ। যদি আমাদের উদাহরণের মতো ADC ব্যবহার না করা হয় তবে বিদ্যুতের সাথে সংযুক্ত হওয়া প্রয়োজন। যদি আপনি ভবিষ্যতে এটি ব্যবহার করতে চান তাহলে এটি একটি কম পাস ফিল্টারের মাধ্যমে চালিত হতে হবে (গোলমাল কমাতে)।

তারপরে কিছু চৌদ্দ-উপায় হেডার পিন রাখুন-এটি আরডুইনো জিপিআইওগুলির মতো হবে।

ধাপ 4: রিসেট বোতাম

রিসেট বোতাম
রিসেট বোতাম
রিসেট বোতাম
রিসেট বোতাম

ছোট স্পর্শযোগ্য সুইচ যোগ করুন যাতে আপনি Arduino রিসেট করতে পারেন এবং একটি নতুন প্রোগ্রাম আপলোড করার জন্য চিপ প্রস্তুত করতে পারেন। এই সুইচের একটি দ্রুত ক্ষণস্থায়ী প্রেস চিপটি পুনরায় সেট করবে।

আমরা আমাদের সার্কিটে রিসেট বোতামটি সন্নিবেশ করাব যেমনটি চিত্রে দেখানো হয়েছে, যখন আমরা এটি টিপব তখন বৈদ্যুতিক সার্কিটটি 1kOhm রোধকে অতিক্রম করে GND এ সংক্ষিপ্ত হবে এবং এটিমেগা পিন 1 কে GND এর সাথে সংযুক্ত করবে। তারপরে, সুইচের নিচের বাম পা থেকে এটিমেগা চিপের রিসেট পিন এবং সুইচের উপরের বাম পা থেকে মাটিতে একটি তার যুক্ত করুন।

অতিরিক্তভাবে, রিসেট পিন থেকে 10 k ওহম পুল-আপ প্রতিরোধক যোগ করুন যাতে স্বাভাবিক অপারেশনের সময় চিপটি পুনরায় সেট করা থেকে বিরত থাকে। এই প্রতিরোধক 5 ভোল্ট বিদ্যুৎ সরবরাহের সাথে সংযুক্ত হবে, পিন 1 থেকে 5 ভোল্ট 'টান আপ'। এবং যখন আপনি একটি প্রতিরোধক ছাড়াই পিন 1 থেকে 0V সংযোগ করেন, চিপটি পুনরায় বুট হবে। রিবুট মাইক্রোকন্ট্রোলারে একটি নতুন প্রোগ্রাম আপলোড করার জন্য দেখুন (নতুন কিছু না পাঠালে পাওয়ার-আপে, এটি পাঠানো শেষ প্রোগ্রামটি চালায়)।

প্রতিরোধকের চারটি রঙের ডোরা রয়েছে। ব্রাউন = 1, কালো = 0, কমলা = 3 পড়া আমাদের 103 নম্বর দেয়।)।

আমাদের সার্কিট আপগ্রেড করার জন্য - আমরা 'decoupling' ক্যাপাসিটরের 'স্থাপন করতে পারি। একটি 100 nF (ন্যানো ফ্যারাড) সিরামিক ক্যাপাসিটর রাখুন। এটি '104 মার্কিং' সহ দুটি তারের একটি ছোট ডিস্ক এবং এই ধরনের ক্যাপাসিটরের কোনটিই পোলারাইজড নয় এবং যেকোনো ওরিয়েন্টেশনে স্থাপন করা যায়।

এই 'ডিকোপলিং' ক্যাপাসিটর বৈদ্যুতিক স্পাইকগুলিকে মসৃণ করে, তাই পিন 1 এর মাধ্যমে প্রেরিত রিবুট সংকেতটি নির্ভরযোগ্যভাবে সনাক্ত করা হয়। 104 অঙ্কের বৈজ্ঞানিক স্বরলিপিতে পিকো ফ্যারাডে তার ধারণক্ষমতা দেখায়। শেষ চিত্র '4' আমাদের বলে কতগুলি শূন্য যোগ করতে হবে। ক্যাপাসিট্যান্স '10' শুরু হয় এবং তারপর আরও 4 টি শূন্যের সাথে চলতে থাকে - 100, 000 পিকো ফ্যারাড, এবং যেহেতু 1000 পিকো ফ্যারাডগুলি 1 ন্যানো ফ্যারাড, তাই 100 ন্যানো ফ্যারাড (104) রয়েছে।

চিপের উপরের বাম পায়ের মধ্যে ক্যাপাসিটর (োকান (পিন 1, অর্ধচন্দ্রের আকৃতি থেকে ঘড়ির কাঁটার বিপরীত দিকে)

ধাপ 5: ক্রিস্টাল অসিলেটর

ক্রিস্টাল অসিলেটর
ক্রিস্টাল অসিলেটর
ক্রিস্টাল অসিলেটর
ক্রিস্টাল অসিলেটর

এখন আমরা IC এর জন্য ঘড়ি বানাবো। এটি একটি 16 মেগাহার্টজ কোয়ার্টজ এবং দুটি সিরামিক ক্যাপাসিটার 22pF (পিকো ফ্যারাড)। স্ফটিক অসিলেটর একটি খুব সঠিক ফ্রিকোয়েন্সি সহ একটি বৈদ্যুতিক সংকেত তৈরি করে। এই ক্ষেত্রে, ফ্রিকোয়েন্সি 16 মেগাহার্টজ, যার অর্থ মাইক্রোকন্ট্রোলার প্রতি সেকেন্ডে 16 মিলিয়ন প্রসেসরের নির্দেশনা কার্যকর করতে পারে।

16 মেগাহার্টজ স্ফটিক (চিত্র) আরডুইনোকে সময় গণনা করতে দেয় এবং ক্যাপাসিটারগুলি সরবরাহের ভোল্টেজ মসৃণ করতে কাজ করে।

কোয়ার্টজ স্ফটিক পা উভয় একই - আপনি এটি পিছনে তারের করতে পারবেন না। ATMEGA চিপে 9 টি পিন করার জন্য স্ফটিকের এক পা এবং অন্য পা 10 টি পিনে সংযুক্ত করুন। চিত্রে দেখানো.

দ্রষ্টব্য: ডিস্ক ক্যাপাসিটারগুলি নন-পোলারাইজড এবং যে কোনও উপায়ে ertedোকানো যেতে পারে।

এটি উল্লেখ করার মতো যে, 22pF ক্যাপাসিটরের মধ্যে তারের দৈর্ঘ্য দৈর্ঘ্যে সমান হতে হবে এবং সার্কিটের অন্যান্য অংশের সাথে মিথস্ক্রিয়া এড়াতে কন্ট্রোলারের যতটা সম্ভব কাছাকাছি হওয়া উচিত।

ধাপ 6: পিন 13 এ LED যোগ করা

পিন 13 এ LED যোগ করা
পিন 13 এ LED যোগ করা
পিন 13 এ LED যোগ করা
পিন 13 এ LED যোগ করা
পিন 13 এ LED যোগ করা
পিন 13 এ LED যোগ করা

এখন আমরা সবুজ LED (Arduino এ ডিজিটাল পিন 13) যুক্ত করব।

লাল তারের নীচে সারিতে একটি এলইডি লম্বা পা (োকান (চিপের ডানদিকে - পাওয়ার, বা 5 ভোল্ট) এবং মাইক্রোকন্ট্রোলারের নীচে প্রথম খালি সারিতে ছোট পা।

এই 330 ওহম প্রতিরোধক LED এর সাথে ধারাবাহিকভাবে সংযুক্ত, LEDs ধ্বংস প্রতিরোধের জন্য প্রবাহিত বিদ্যুতের পরিমাণ সীমিত করে।

LED এর সংক্ষিপ্ত লেগের মধ্যে প্রতিরোধক ertোকান এবং চিপের ডানদিকে কালো তারের ধারণকারী সারি (GND বা 0Volts)

সাধারণ Arduino বোর্ডে উপলব্ধ সমস্ত এনালগ, ডিজিটাল এবং অন্যান্য পিনগুলি আমাদের রুটিবোর্ড সংস্করণেও পাওয়া যায়। আপনি রেফারেন্স হিসাবে এটিমেগা স্কিম্যাটিক এবং পিন টেবিল ব্যবহার করতে পারেন।

ধাপ 7: ইউএসবি থেকে সিরিয়াল সংযোগকারী

ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী
ইউএসবি থেকে সিরিয়াল সংযোগকারী

ATmega 328P-PU মাইক্রোকন্ট্রোলার তিনটি কমিউনিকেশন মোড প্রদান করে: একটি সিরিয়াল প্রোগ্রামযোগ্য USART (ইউনিভার্সাল সিঙ্ক্রোনাস এবং অ্যাসিঙ্ক্রোনাস রিসিভার-ট্রান্সমিটার), একটি SPI (সিরিয়াল পেরিফেরাল ইন্টারফেস) সিরিয়াল পোর্ট এবং একটি দুই তারের সিরিয়াল ইন্টারফেস। ইউএসএআরটি ডেটার বাইট গ্রহণ করে এবং পৃথক বিটগুলি ক্রমানুসারে প্রেরণ করে, যার জন্য প্রেরণ (টিএক্স) এবং রিসিভ (আরএক্স) যোগাযোগ লাইন প্রয়োজন। SPI চারটি যোগাযোগ লাইন ব্যবহার করে: মাস্টার-আউট স্লেভ-ইন (MOSI), মাস্টার-ইন স্লেভ-আউট (MISO) এবং সিরিয়াল ক্লক (SCK) প্রতিটি ডিভাইসের জন্য আলাদা স্লেভ সিলেক্ট (SS) লাইন। I2C কমিউনিকেশন টু ওয়্যার ইন্টারফেস (TWI) বাস দুটি সিগন্যাল লাইন ব্যবহার করে: সিরিয়াল ডেটা (SDA) এবং সিরিয়াল ক্লক (SCL)।

একটি স্কেচ ডাউনলোড করার জন্য Arduino IDE এর সাথে আমাদের বোর্ডকে পিসিতে সংযুক্ত করতে, আমরা একটি USB থেকে সিরিয়াল UART ইন্টারফেস যেমন FT232R FTDI ব্যবহার করব।

একটি FTDI কেবল কেনার সময় নিশ্চিত করুন যে এটি 5 V মডেল, কারণ 3.3 V মডেলটি সঠিকভাবে কাজ করবে না। এই তারের (চিত্রে দেখানো হয়েছে) এক প্রান্তে একটি ইউএসবি প্লাগ এবং অন্যদিকে ছয়টি তারের একটি সকেট রয়েছে।

যখন আপনি কেবলটি সংযুক্ত করছেন, নিশ্চিত করুন যে কালো তারের সাথে সকেটের পাশটি রুটিবোর্ডের হেডার পিনের GND পিনের সাথে সংযুক্ত। একবার তারটি সংযুক্ত হয়ে গেলে, এটি সার্কিটেও বিদ্যুৎ সরবরাহ করে, যেমন একটি সাধারণ Arduino বোর্ড করবে।

তারপরে আমরা আমাদের এফটিডিআইকে আমাদের স্বনির্মিত আরডুইনো-বোর্ডের সাথে সংযুক্ত করব; রেফারেন্সের জন্য আপনি টেবিল এবং পরিকল্পিত ব্যবহার করতে পারেন।

একটি 0.1μF ইলেক্ট্রোলাইটিক ক্যাপাসিটর ইউএসবি -তে সিরিয়াল ইউআরটি ইন্টারফেস এবং মাইক্রোকন্ট্রোলার রিসেটের ডিটিআর (ডেটা টার্মিনাল রেডি) পিনের মধ্যে সংযুক্ত থাকে, যা ইউএসবি -র সাথে সিরিয়াল ইন্টারফেসে সিঙ্ক্রোনাইজ করার জন্য মাইক্রোকন্ট্রোলার রিসেট করে।

দ্রষ্টব্য: Oneclever অংশটি হল যে মাইক্রোকন্ট্রোলার RX পিনটি অবশ্যই USB এর TX এর সাথে সিরিয়াল অ্যাডাপ্টারের সাথে এবং একটি ডিভাইসের TX এর সাথে অন্যটির RX এর সাথে সংযুক্ত থাকতে হবে।

ইউএসবি -তে সিরিয়াল UART ইন্টারফেসে CTS (ক্লিয়ার টু সেন্ড) পিন মাইক্রোকন্ট্রোলারের সাথে সংযুক্ত নয়।

আরডুইনো আইডিই -তে মাইক্রোকন্ট্রোলারের একটি স্কেচ ডাউনলোড করতে Tools ➤ Port মেনু থেকে প্রাসঙ্গিক যোগাযোগ (COM) পোর্ট নির্বাচন করুন এবং Tools ➤ বোর্ড মেনু থেকে Arduino/Genuino Uno নির্বাচন করুন। স্কেচটি Arduino IDE তে সংকলিত হয় এবং তারপর ইউএসবি দিয়ে সিরিয়াল UART ইন্টারফেসে মাইক্রোকন্ট্রোলারে লোড করা হয়। যখন স্কেচ ডাউনলোড করা হয়, ইউএসবি-থেকে-সিরিয়াল UART ইন্টারফেস TXD এবং RXD ফ্লিকার সবুজ এবং লাল LEDs।

ইউএসবি থেকে সিরিয়াল ইউএআরটি ইন্টারফেস সরানো যায় এবং মাইক্রোকন্ট্রোলারের সাথে 5V পাওয়ার সাপ্লাই সংযুক্ত থাকে। একটি LED এবং 220kΩ প্রতিরোধক মাইক্রোকন্ট্রোলার পিন 19 এর সাথে সংযুক্ত, আরডুইনো পিন 13 এর সমতুল্য, ব্লিঙ্ক স্কেচ চালানোর জন্য।

ধাপ 8: স্কেচ আপলোড করা বা বুটলোডার ইনস্টল করা

স্কেচ আপলোড করা বা বুটলোডার ইনস্টল করা
স্কেচ আপলোড করা বা বুটলোডার ইনস্টল করা
স্কেচ আপলোড করা বা বুটলোডার ইনস্টল করা
স্কেচ আপলোড করা বা বুটলোডার ইনস্টল করা

যদি আপনার ইউএসবি থেকে সিরিয়াল রূপান্তরকারী না থাকে-আপনি স্ব-তৈরি বোর্ডে একটি স্কেচ বা বুটলোডার আপলোড করতে অন্য আরডুইনো (আমার ক্ষেত্রে আরডুইনো ইউএনও) ব্যবহার করতে পারেন।

ATmega238P-PU মাইক্রোকন্ট্রোলারদের Arduino IDE থেকে স্কেচ আপলোড এবং চালানোর জন্য একটি বুটলোডারের প্রয়োজন; যখন মাইক্রোকন্ট্রোলারে পাওয়ার প্রয়োগ করা হয় তখন বুটলোডার নির্ধারণ করে একটি নতুন স্কেচ আপলোড করা হচ্ছে কিনা, এবং তারপর মাইক্রোকন্ট্রোলার মেমরিতে স্কেচ লোড করে। যদি আপনার বুটলোডার ছাড়া ATmega328P-PU থাকে, তাহলে আপনি দুটি বোর্ডের মধ্যে SPI যোগাযোগ ব্যবহার করে বুটলোডার আপলোড করতে পারেন।

এখানে আপনি কিভাবে ATmega IC তে বুটলোডার আপলোড করবেন।

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

ধাপ 1: আমাদের Arduino UNO কে ISP হিসাবে কনফিগার করা

নিচের আপলোড চলাকালীন ATmega IC সংযোগ করবেন না।

  • একটি পিসিতে আরডুইনো প্লাগ করুন
  • Arduino IDE খুলুন
  • উপযুক্ত বোর্ড (সরঞ্জাম> বোর্ড> আরডুইনো ইউএনও) এবং COM পোর্ট (সরঞ্জাম> পোর্ট> COM?) নির্বাচন করুন
  • খুলুন> উদাহরণ> ArduinoISP
  • স্কেচ আপলোড করুন

তারপরে আপনি পরিকল্পিতভাবে দেখানো সার্কিট অনুসরণ করে আপনার নিজের বোর্ডকে Arduino UNO- এর সাথে সংযুক্ত করতে পারেন। এই পর্যায়ে আপনার নিজের বোর্ডকে বিদ্যুৎ সরবরাহ করার কোন প্রয়োজন নেই কারণ Arduino প্রয়োজনীয় শক্তি সরবরাহ করবে।

ধাপ 2: একটি স্কেচ বা বুটলোডার আপলোড করা

সবকিছু সংযুক্ত করার সাথে সাথে আপনার তৈরি করা ফোল্ডার থেকে IDE খুলুন (কপি)।

  • সরঞ্জাম> বোর্ড থেকে Arduino328 নির্বাচন করুন
  • সরঞ্জাম> প্রোগ্রামার থেকে আইএসপি হিসাবে আরডুইনো নির্বাচন করুন
  • বার্ন বুটলোডার নির্বাচন করুন

একটি সফল বার্নের পরে আপনি একটি "সম্পন্ন বার্ন বুটলোডার" পাবেন।

বুটলোডারটি এখন মাইক্রোকন্ট্রোলারে লোড করা হয়েছে, যা টুলস -পোর্ট মেনুতে COM পোর্ট পরিবর্তন করার পরে একটি স্কেচ পাওয়ার জন্য প্রস্তুত।

প্রস্তাবিত: