قسم الميكروكنترولر والروبوت ودوائر الاتصال بالحاسب الالي قسم المتحكمات الـ microcontroller و المعالجات microprocessor و التحكم الرقمي بالكمبيوتر CNC والانظمة الآلية والروبوت Robots

أدوات الموضوع

الصورة الرمزية F.Abdelaziz
F.Abdelaziz
:: استاذ و مشرف قسم الالكترونيات ::
تاريخ التسجيل: May 2007
المشاركات: 6,894
نشاط [ F.Abdelaziz ]
قوة السمعة:332
قديم 11-03-2011, 10:40 PM المشاركة 1   
افتراضي أسرارتفاصيل منافذ الدخل والخرج وطرق التعامل معها input / output ports المنفذ portB Twitter FaceBook Google+



أسرارتفاصيل منافذ الدخل والخرج وطرق التعامل معها input / output ports - المنفذ port B


سجل المنفذ PORTB وسجل التحكم فيه TRISB
المنفذ B Port ذو سعة (عرض) 8 خانات 8-bit ثنائى الاتجاه . خانات السجل TRISB تحدد وظيفة أطراف السجل Port B .






كتابة المنطق واحد (1) بالسجل TRISB يؤدى إلى إعداد الطرف المناظر بالمنفذ Port B كمدخل بينما كتابة المنطق صفر (0) يؤدى إلى إعداد الطرف كمخرج .
ستة أطراف من هذا المنفذ تعمل كمداخل تناظرية (AN) . خانات السجل ANSELH تحدد أى الأطراف تعد كمداخل تناظرية وأيها يعد كمداخل / مخارج رقمية كما يلى :
RB0 = AN12 : تتحدد بالخانة ANS12 بالسجل ANSELH .
RB1 = AN10 : تتحدد بالخانة ANS10 بالسجل ANSELH .
RB2 = AN8 : تتحدد بالخانة ANS8 بالسجل .
RB3 = AN9 : تتحدد بالخانة ANS9 بالسجل ANSELH .
RB4 = AN11 : تتحدد بالخانة ANS11 للسجل ANSELH .
RB5 = AN13 : تتحدد بالخانة ANS13 بالسجل ANSELH .
كل طرف من أطراف المنفذ Port B يمتلك وظيفة إضافية ترتبط ببعض الوحدات الطرفية الموجودة ضمن البناء الداخلى للميكروكونترولر والتى سوف نتعرض لها فيما بعد .

هذا المنفذ يمتلك عدة خصائص تميزه عن المنافذ الأخرى وتجعل أطرافه شائعة الاستخدام :
  • جميع أطراف المنفذ portB تمتلك (ضمن البناء الداخلى للميكروكونترولر) مقاومات "جذب لأعلى"
pull-up resistors والتى تجعله مثاليا لتوصيله بالمفاتيح الضاغطة (لوحة المفاتيح) والمفاتيح العادية والروابط الضوئية .لتوصيل هذه المقاومات بأطراف المنفذ يجب عمل set (1) للخانة المناظرة للسجل WPUB .










نظرا لأن قيمة المقاومات مرتفعة (فى حدود عدة كيلوأوم) فإن هذه المقاومات التخيلية لا تؤثر على إعداد الأطراف كمخارج ولكنها تساعد كمكمل مفيد للمداخل .









ملحوظة : بعيدا عن خانات السجل WPUB توجد خانة أخرى تؤثر على عمل جميع مقاومات الجذب أعلى . هذه الخانةهى RBPU بالسجل OPTION_REG .
  • عند التمكين فإن كل خانة من خانات المنفذ port B والمعدة كمدخل يمكن أن تسبب مقاطعة عن طريق تغيير الحالة المنطقية للخانة . لتمكين الخانات لتسبب مقاطعة يتم عمل set = 1 الخانة المناظرة بالسجل IOCB "المقاطعة عند تغير حالة أطراف المنفذ port B "





بفضل هذه الخواص تستخدم أطراف المنفذ port B بكثرة فى التحقق من المفاتيح الضاغطة بلوحة المفاتيح keyboard لإنها ذات تسجيل وضغط غير منتظم .
لذلك فليس هناك حاجة لعمل مسح ‘scan’ لجميع المداخل طوال الوقت .





عند إعداد الأطراف X, Y , Z كمخارج وجعلها عند المنطق واحد (1) من الضرورى فقط الانتظار حتى حدوث طلب مقاطعة والذى يصل عند ضغط أى مفتاح ضاغط .
بعد ذلك بعمل مزيج من الأصفار والأحاد لتلك المخارج يمكن التعرف على أى مفتاح تم الضغط عليه .

دعنا نفعل ذلك باستخدام mikroC :
  • يتم إعداد الطرف PORTB.1 كمدخل رقمى وأى تغير فى حالته المنطقية سوف يتسبب فى المقاطعة . هذا الطرف يتم تمكينه لاستخدام مقاومة الجذب لأعلى . باقى جميع أطراف المنفذ PORT B يتم إعدادها كمخارج رقمية :
  • إعداد جميع أطراف المداخل / المخارج لتكون رقمية :
ANSEL ANASELH = 0 ;
  • تصفير جميع أطراف المنفذ PORT B :
PORTB = 0 ;
  • إعداد جميع أطراف المنفذ PORT B كمخارج فيما عدا الخانة الثانية PORTB.1 :
TRISB = 0b00000010 ;
  • تمكين مقاومات الجذب لأعلا للمنفذ PORT B :
RBOU = 0 ;
  • توصيل مقاومة الجذب لأعلى بالطرف الثانى PORTB.1 .
WPUB1 = 1 ;
  • المقاطعة عند تغيير الحالة المنطقية للطرف الثانى PORTB.1 :
IOCB1 = 1;
  • تمكين المقاطعات :
RBIE = GIE = 1 ;











الطرف RB0/INT :
هذا الطرف هو المصدر الوحيد للمقاطعة الخارجية الحقيقية .يمكن إعداده ليتفاعل مع الأشارة ذات الحافة الصاعدة ( إنتقال من صفر إلى واحد ) أو ذات الحافة الهابطة ( إنتقال من واحد إلى صفر ) . الخانة INTEDG "حافة المقاطعة" بالسجل OPTION_REG تختار الإشارة المطلوبة .

الأطراف RB6 و RB7 :
الميكروكونترولر PIC16F887 ليس له أى أطراف خاصة للبرمجة (عملية كتابة البرنامج على ذاكرة ROM) .أطراف المنفذ والتى عادة ما تكون متاحة كأطراف مداخل / مخارج للأغراض العامة تستخدم لهذا الغرض . بدقة أكثر نتحدث عن أطراف المنفذ port B المستخدمة فى نبضات الساعة (RB6) وفى نقل البيانات (RB7) خلال تحميل البرنامج . بجانب ذلك من الضرورى توصيل جهد مصدر القدرة Vdd (5V) بالأضافة إلى جهد مناسب Vpp (12-14V) لبرمجة الذاكرة من نوع FLASH . خلال البرمجة يتم توصيل الجهد Vpp إلى الطرف MCLR . لست مضطرا أن تفكر فى جميع تفاصيل هذه العملية ولا فى أى الجهود يتم توصيله أولا لأن إلكترونيات البرمجة هى المسؤولة عن ذلك . الشىء المهم هنا هو أن البرنامج قد يتم تحميله بالميكروكونترولر حتى بعد لحامه فى مكانه بالجهاز . عادة يمكن تغيير البرنامح المحمل بنفس الطريقة . هذه الوظيفة تسمى ICSP (In-Circuit Serial Programming) " البرمجة التسلسلية بالدائرة" . من أجل استخدام هذه الوظيفة بشكل صحيح من الضروري أن نخطط لها .
من الضروري فقط تركيب موصل 5 – طرف فى الجهاز المقصود وذلك لإمداد الميكروكونترولر بجهود البرمجة اللازمة . لمنع هذه الجهود من التداخل مع إلكترونيات الجهاز الأخرى والمتصلة بأطراف الميكروكونترولر ينبغي قطع توصيل كافة الأجهزة الطرفية الإضافية خلال عملية البرمجة باستخدام مقاومات أو كبارى jumpers .






كما</SPAN>هو مبين بالشكل فأن الجهود الموصلة لسوكيت جهاز البرمجة مثل تلك المستخدمة فى عملية البرمجة بالدائرة ICSP .

السجل PORTC وسجل تحكمه TRISC

اعلانات

الصورة الرمزية سعيد قادر
سعيد قادر
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2009
الدولة: العراق/ كوردستان
المشاركات: 2,916
نشاط [ سعيد قادر ]
قوة السمعة:151
قديم 12-03-2011, 05:16 AM المشاركة 2   
افتراضي


بارك الله فيك استاذى العزيز وجزاك الله كل الخير

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

hamadalla31
:: مهندس متميز ::
تاريخ التسجيل: Mar 2009
المشاركات: 587
نشاط [ hamadalla31 ]
قوة السمعة:0
قديم 12-03-2011, 04:18 PM المشاركة 3   
افتراضي بسم الله ماشاء الله


بسم الله ماشاء الله ربنا يزيدك من علمه وفضله

إضافة رد

العلامات المرجعية

«     الموضوع السابق       الموضوع التالي    »
أدوات الموضوع

الانتقال السريع إلى


الساعة معتمدة بتوقيت جرينتش +3 الساعة الآن: 06:07 PM
موقع القرية الالكترونية غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسئولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي موقع القرية الالكترونية ولايتحمل الموقع أي مسؤولية قانونية حيال ذلك (ويتحمل كاتبها مسؤولية النشر)

Powered by vBulletin® Version 3.8.6, Copyright ©2000 - 2025