সুচিপত্র:

রাস্পবেরি পাই - PCA9536 ইনপুট/আউটপুট এক্সপেন্ডার জাভা টিউটোরিয়াল: 4 টি ধাপ
রাস্পবেরি পাই - PCA9536 ইনপুট/আউটপুট এক্সপেন্ডার জাভা টিউটোরিয়াল: 4 টি ধাপ
Anonim
Image
Image

PCA9536 হল একটি 8-পিন CMOS ডিভাইস যা I2C-bus/SMBus অ্যাপ্লিকেশনের জন্য সাধারণ উদ্দেশ্য সমান্তরাল ইনপুট/আউটপুট (GPIO) সম্প্রসারণের 4 বিট প্রদান করে। এটি ইনপুট বা আউটপুট নির্বাচনের উদ্দেশ্যে 4-বিট কনফিগারেশন রেজিস্টার, 4-বিট ইনপুট পোর্ট রেজিস্টার, 4-বিট আউটপুট পোর্ট রেজিস্টার এবং 4-বিট পোলারিটি ইনভার্সন রেজিস্টার সক্রিয় উচ্চ বা সক্রিয় কম অপারেশন নিয়ে গঠিত। এখানে জাভা কোড ব্যবহার করে রাস্পবেরি পাই দিয়ে এর প্রদর্শন।

ধাপ 1: আপনার যা প্রয়োজন..

তুমি কি চাও..!!
তুমি কি চাও..!!

1. রাস্পবেরি পাই

2. PCA9536

লিঙ্ক:

3. I²C কেবল

লিঙ্ক:

4. রাস্পবেরি পাই এর জন্য I²C শিল্ড

লিঙ্ক:

5. ইথারনেট কেবল

ধাপ 2: সংযোগ:

সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ
সংযোগ

রাস্পবেরি পাই এর জন্য একটি I2C ieldাল নিন এবং রাস্পবেরি পাই এর জিপিও পিনের উপর আলতো করে চাপ দিন।

তারপর I2C তারের এক প্রান্তকে PCA9536 সেন্সর এবং অন্য প্রান্তটি I2C ieldালের সাথে সংযুক্ত করুন।

এছাড়াও ইথারনেট কেবল কে পাই এর সাথে সংযুক্ত করুন অথবা আপনি একটি ওয়াইফাই মডিউল ব্যবহার করতে পারেন।

উপরের ছবিতে কানেকশন দেখানো হয়েছে।

ধাপ 3: কোড:

কোড
কোড

PCA9536 এর জন্য জাভা কোডটি আমাদের github repository- Dcube স্টোর থেকে ডাউনলোড করা যাবে

এখানে একই জন্য লিঙ্ক:

github.com/DcubeTechVentures/PCA9536/blob/master/Java/PCA9536.java

আমরা জাভা কোডের জন্য pi4j লাইব্রেরি ব্যবহার করেছি, রাস্পবেরি পাইতে pi4j ইনস্টল করার ধাপগুলি এখানে বর্ণনা করা হয়েছে:

pi4j.com/install.html

আপনি এখান থেকে কোডটি অনুলিপি করতে পারেন, এটি নিম্নরূপ দেওয়া হয়েছে:

// একটি স্বাধীন ইচ্ছা লাইসেন্স দিয়ে বিতরণ করা হয়।

// এটি যে কোন উপায়ে ব্যবহার করুন, মুনাফা বা বিনামূল্যে, যদি এটি তার সংশ্লিষ্ট কাজের লাইসেন্সের সাথে খাপ খায়।

// PCA9536

// এই কোডটি PCA9536_I2CIO I2C মিনি মডিউলের সাথে কাজ করার জন্য ডিজাইন করা হয়েছে ControlEverything.com থেকে।

//

আমদানি com.pi4j.io.i2c. I2CBus;

com.pi4j.io.i2c. I2CDevice আমদানি করুন;

আমদানি com.pi4j.io.i2c. I2CFactory;

java.io. IOException আমদানি করুন;

পাবলিক ক্লাস PCA9536

{

পাবলিক স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আর্গস ) ব্যতিক্রম ছুঁড়ে দেয়

{

// I2C বাস তৈরি করুন

I2CBus বাস = I2CFactory.getInstance (I2CBus. BUS_1);

// I2C ডিভাইস পান, PCA9536 I2C ঠিকানা হল 0x41 (65)

I2CDevice ডিভাইস = Bus.getDevice (0x41);

// কনফিগারেশন রেজিস্টার নির্বাচন করুন

// সমস্ত পিন ইনপুট হিসাবে কনফিগার করা হয়েছে

device.write (0x03, (বাইট) 0xFF);

// পর্দায় আউটপুট

System.out.printf ("সমস্ত পিন স্টেট উচ্চ %n");

Thread.sleep (500);

// 1 বাইট ডেটা পড়ুন

বাইট ডেটা = নতুন বাইট [1];

ডেটা [0] = (বাইট) device.read (0x00);

// তথ্য 4-বিট রূপান্তর

int data1 = (data [0] & 0x0F);

জন্য (int i = 0; i <4; i ++)

{

যদি ((data1 এবং ((int) Math.pow (2, i))) == 0)

{

System.out.printf ("I/O Pin %d State is LOW %n", i);

}

অন্য

{

System.out.printf ("I/O Pin %d State is high %n", i);

Thread.sleep (500);

}

}

}

}

ধাপ 4: অ্যাপ্লিকেশন:

PCA9536 একটি I/O সম্প্রসারণকারী হিসাবে নিযুক্ত করা যেতে পারে। অতিরিক্ত ইনপুট/আউটপুট প্রয়োজন হলে এটি একটি সহজ সমাধান প্রদান করে। সাধারণত এটি এমন সিস্টেমে নিযুক্ত হয় যার জন্য ACPI পাওয়ার সুইচ, সেন্সর, পুশ বোতাম, এলইডি, ফ্যান ইত্যাদির সম্প্রসারণ প্রয়োজন।

প্রস্তাবিত: