جدول المحتويات:
فيديو: Raspberry Pi - PCA9536 Input / Output Expander Java تعليمي: 4 خطوات
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:38
PCA9536 عبارة عن جهاز CMOS ذي 8 أسنان يوفر 4 بتات من توسع الإدخال / الإخراج المتوازي للأغراض العامة (GPIO) لتطبيقات I2C-bus / SMBus. وهو يتألف من سجل تكوين 4 بت لخدمة الغرض من تحديد الإدخال أو الإخراج ، وسجل منفذ الإدخال 4 بت ، وسجل منفذ الإخراج 4 بت ، وسجل انعكاس القطبية 4 بت النشط HIGH أو عملية منخفضة نشطة. هذا هو العرض التوضيحي مع raspberry pi باستخدام كود جافا.
الخطوة 1: ماذا تحتاج..
1. Raspberry Pi
2. PCA9536
الرابط:
3. كابل I²C
الرابط:
4. I²C Shield لـ Raspberry Pi
الرابط:
5. كابل إيثرنت
الخطوة الثانية: التوصيلات:
خذ درع I2C لـ Raspberry Pi وادفعه برفق فوق دبابيس gpio الخاصة بـ Raspberry Pi.
ثم قم بتوصيل أحد طرفي كابل I2C بمستشعر PCA9536 والطرف الآخر بغطاء I2C.
قم أيضًا بتوصيل كبل Ethernet بـ pi أو يمكنك استخدام وحدة WiFi.
تظهر الاتصالات في الصورة أعلاه.
الخطوة الثالثة: الكود:
يمكن تنزيل كود جافا الخاص بـ PCA9536 من مستودع جيثب- Dcube Store
هنا هو الرابط لنفسه:
github.com/DcubeTechVentures/PCA9536/blob/master/Java/PCA9536.java
لقد استخدمنا مكتبة pi4j لرمز جافا ، وخطوات تثبيت pi4j على Raspberry Pi موصوفة هنا:
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
{
يطرح main static void main (String args ) استثناء
{
// إنشاء ناقل 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 ("حالة إدخال / إخراج٪ d عالية٪ n"، i)؛
Thread.sleep (500) ؛
}
}
}
}
الخطوة 4: التطبيقات:
يمكن استخدام PCA9536 كموسع إدخال / إخراج. يوفر حلاً بسيطًا عند الحاجة إلى إدخال / إخراج إضافي. عادةً ما يتم استخدامه في الأنظمة التي تتطلب توسيعًا لمفاتيح الطاقة ACPI ، وأجهزة الاستشعار ، وأزرار الضغط ، ومصابيح LED ، والمراوح ، إلخ.
موصى به:
Raspberry Pi MCP9803 مستشعر درجة الحرارة Java تعليمي: 4 خطوات
Raspberry Pi MCP9803 مستشعر درجة الحرارة Java تعليمي: MCP9803 عبارة عن مستشعر درجة حرارة عالي الدقة بسلكين. وهي مُجسَّدة بسجلات قابلة للبرمجة بواسطة المستخدم تسهل تطبيقات استشعار درجة الحرارة. هذا المستشعر مناسب لنظام مراقبة درجة الحرارة متعدد المناطق المتطور للغاية. هنا
Raspberry Pi MCP9805 مستشعر درجة الحرارة Java تعليمي: 4 خطوات
Raspberry Pi MCP9805 مستشعر درجة الحرارة Java تعليمي: MCP9805 عبارة عن مستشعر درجة حرارة رقمي لوحدة الذاكرة. تم دمجه مع سجلات المستخدم القابلة للبرمجة والتي توفر المرونة لتطبيقات استشعار درجة الحرارة. تم تصميم هذا المستشعر ليتم دمجه في وحدة ذاكرة النظام الأساسي المحمول
Raspberry Pi TMP112 مستشعر درجة الحرارة Java تعليمي: 4 خطوات
Raspberry Pi TMP112 مستشعر درجة الحرارة Java تعليمي: TMP112 عالي الدقة ، منخفض الطاقة ، مستشعر درجة الحرارة الرقمية I2C وحدة صغيرة. يعتبر TMP112 مثاليًا لقياس درجة الحرارة الممتدة. يوفر هذا الجهاز دقة تبلغ ± 0.5 درجة مئوية دون الحاجة إلى معايرة أو تكييف إشارة مكون خارجي
Raspberry Pi CPS120 مستشعر الضغط Java تعليمي: 4 خطوات
Raspberry Pi CPS120 مستشعر الضغط Java تعليمي: CPS120 عبارة عن مستشعر ضغط مطلق سعوي عالي الجودة ومنخفض التكلفة مع إخراج معوض بالكامل. يستهلك طاقة أقل ويتألف من مستشعر ميكانيكي كهروميكانيكي صغير جدًا (MEMS) لقياس الضغط. دلتا سيجما
Raspberry Pi - BH1715 مستشعر الضوء المحيط الرقمي Java تعليمي: 4 خطوات
Raspberry Pi - BH1715 Digital Ambient Light Sensor Java تعليمي: BH1715 هو مستشعر رقمي للضوء المحيط بواجهة ناقل I²C. يتم استخدام BH1715 بشكل شائع للحصول على بيانات الإضاءة المحيطة لضبط طاقة الإضاءة الخلفية لشاشات الكريستال السائل ولوحة المفاتيح للأجهزة المحمولة. يوفر هذا الجهاز دقة 16 بت وميزة