আই 2 সি এবং আরডুইনো ইন্টারফেস

সুচিপত্র:

আই 2 সি এবং আরডুইনো ইন্টারফেস
আই 2 সি এবং আরডুইনো ইন্টারফেস

ভিডিও: আই 2 সি এবং আরডুইনো ইন্টারফেস

ভিডিও: আই 2 সি এবং আরডুইনো ইন্টারফেস
ভিডিও: কিভাবে I2C কমিউনিকেশন কাজ করে এবং কিভাবে Arduino এর সাথে ব্যবহার করতে হয় 2024, মে
Anonim

এই নিবন্ধে আমরা একটি আই 2 সি ইন্টারফেস (আই-টু-সি, আই-টু-সিএস) কী, এর বৈশিষ্ট্যগুলি কী কী এবং এটির সাথে কীভাবে কাজ করা যায় সে সম্পর্কে আমরা নজর দেব।

আই 2 সি ইন্টারফেস
আই 2 সি ইন্টারফেস

এটা জরুরি

  • - আরডুইনো;
  • - ডিজিটাল পোটানোমিটার AD5171;
  • - হালকা নির্গমনকারী ডায়োড;
  • - 220 ওহম প্রতিরোধক;
  • - 4.7 কোহম জন্য 2 প্রতিরোধক;
  • - সংযোগ তারের।

নির্দেশনা

ধাপ 1

আইআইসি সিরিয়াল যোগাযোগ প্রোটোকল (একে আই 2 সিও বলা হয় - ইন্টার-ইন্টিগ্রেটেড সার্কিট) ডেটা স্থানান্তর করতে দুটি দ্বি দ্বিচঞ্চল যোগাযোগ লাইন ব্যবহার করে, এটি এসডিএ (সিরিয়াল ডেটা) বাস এবং এসসিএল (সিরিয়াল ক্লক) বাস বলে। দুটি পাওয়ার লাইনও রয়েছে। এসডিএ এবং এসসিএল বাসগুলি প্রতিরোধকের মাধ্যমে পাওয়ার বাসে টানা হয়।

নেটওয়ার্কে কমপক্ষে একজন মাস্টার রয়েছেন যা ডেটা সংক্রমণ শুরু করে এবং সিঙ্ক্রোনাইজেশন সিগন্যাল উত্পন্ন করে। নেটওয়ার্কটিতে এমন দাসও রয়েছে যা মাস্টারের অনুরোধে ডেটা সংক্রমণ করে। প্রতিটি ক্রীতদাস ডিভাইসের একটি স্বতন্ত্র ঠিকানা থাকে যেখানে মাস্টার এটি সম্বোধন করে। ডিভাইসের ঠিকানাটি পাসপোর্টে (ডেটাশিট) নির্দেশিত। একাধিক মাস্টার সহ এক আই 2 সি বাসে 127 টি ডিভাইস সংযুক্ত থাকতে পারে। অপারেশন চলাকালীন ডিভাইসগুলি বাসের সাথে সংযুক্ত হতে পারে, যেমন। এটি গরম প্লাগিং সমর্থন করে।

আই 2 সি সংযোগ ডায়াগ্রাম
আই 2 সি সংযোগ ডায়াগ্রাম

ধাপ ২

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

অন্যান্য বোর্ড মডেলের জন্য:

আরডুইনো প্রো এবং প্রো মিনি - এ 4 (এসডিএ), এ 5 (এসসিএল)

আরডুইনো মেগা - 20 (এসডিএ), 21 (এসসিএল)

আরডুইনো লিওনার্দো - 2 (এসডিএ), 3 (এসসিএল)

আরডুইনো ডিউ - 20 (এসডিএ), 21 (এসসিএল), এসডিএ 1, এসসিএল 1

এসডিএ এবং এসসিএল বাসগুলিতে আরডুইনো পিন ম্যাপিং
এসডিএ এবং এসসিএল বাসগুলিতে আরডুইনো পিন ম্যাপিং

ধাপ 3

আই 2 সি বাসের মাধ্যমে ডিভাইসগুলির সাথে ডেটা আদান প্রদানের সুবিধার জন্য, আরডুইনোর জন্য একটি স্ট্যান্ডার্ড "ওয়্যার" লাইব্রেরি লেখা হয়েছে। এটিতে নিম্নলিখিত ফাংশন রয়েছে:

আরম্ভ (ঠিকানা) - গ্রন্থাগারের সূচনা এবং আই 2 সি বাসের সংযোগ; যদি কোনও ঠিকানা নির্দিষ্ট না করা থাকে, তবে সংযুক্ত ডিভাইসটিকে মাস্টার হিসাবে বিবেচনা করা হয়; 7-বিট ঠিকানা ব্যবহার করা হয়;

অনুরোধফ্রম () - দাসের কাছ থেকে নির্দিষ্ট সংখ্যক বাইটের জন্য অনুরোধ করার জন্য মাস্টার দ্বারা ব্যবহৃত;

startTransmission (ঠিকানা) - নির্দিষ্ট ঠিকানায় স্লেভ ডিভাইসে ডেটা স্থানান্তরের সূচনা;

endTransmission () - ক্রীতদাসে ডেটা সংক্রমণ সমাপ্তি;

লিখুন () - একটি অনুরোধের জবাবে দাসের কাছ থেকে ডেটা লেখা;

উপলভ্য () - দাসের কাছ থেকে প্রাপ্ত তথ্যের বাইট সংখ্যা প্রদান করে;

() পড়ুন - ক্রীতদাস থেকে মাস্টার বা মাস্টার থেকে দাসের কাছে স্থানান্তরিত একটি বাইট পড়ুন;

অনারসিপ () - দাস যখন মাস্টারের কাছ থেকে সংক্রমণ গ্রহণ করে তখন ডাকা ফাংশনটি নির্দেশ করে;

onRequest () - মাস্টার ক্রীতদাসের কাছ থেকে সংক্রমণ প্রাপ্ত হলে ডাকা একটি ফাংশন নির্দেশ করে।

পদক্ষেপ 4

আসুন দেখে নেওয়া যাক আরডুইনো ব্যবহার করে কীভাবে আই 2 সি বাসে কাজ করবেন।

প্রথমে, আমরা সার্কিটটি একত্র করব, যা চিত্রে দেখানো হয়েছে। আমরা AD5171 64-পজিশনের ডিজিটাল পোটেন্টিওমিটার ব্যবহার করে LED এর উজ্জ্বলতা নিয়ন্ত্রণ করব, যা I2C বাসের সাথে সংযোগ স্থাপন করে। আমরা পেন্টিওমিটারকে যে ঠিকানাতে উল্লেখ করব তা হ'ল 0x2c (দশমিক ৪৪)।

ডিজিটাল পোটেন্টিওমিটার এবং আরডুইনো ব্যবহার করে LED কন্ট্রোল সার্কিট
ডিজিটাল পোটেন্টিওমিটার এবং আরডুইনো ব্যবহার করে LED কন্ট্রোল সার্কিট

পদক্ষেপ 5

এখন "ওয়্যার" লাইব্রেরির উদাহরণগুলি থেকে একটি স্কেচ খুলুন:

ফাইল -> নমুনা -> তার -> ডিজিটাল_পটেন্টিওমিটার। এর এটি আরডিনো মেমোরিতে লোড করা যাক। এটি চালু করা যাক।

আপনি দেখুন, এলইডি এর উজ্জ্বলতা চক্রাকারে বেড়ে যায়, এবং তারপরে হঠাৎ বাইরে চলে যায়। এই ক্ষেত্রে, আমরা I2C বাসের মাধ্যমে আরডুইনো ব্যবহার করে পেন্টিওমিটারটি নিয়ন্ত্রণ করি।

প্রস্তাবিত: