منتدى التحكم الآلي والإلكترونيات
مرحبا بك عزيزي الزائر يشرفنا أن تقوم بالدخول إذا كنت من الأعضاء أو التسجيل إذا كنت زائرا ويمكنك إنشاء حسابك ببساطة ويمكنك التفعيل عن طريق البريد أو الانتظار قليلا حتى تقوم الإدارة بالتفعيل
منتدى التحكم الآلي والإلكترونيات

Automatic control , PLC , Electronics , HMI , Machine technology development , Arabic & Islamic topics , Management studies and more
 
الرئيسيةالبوابة*مكتبة الصوراليوميةس .و .جبحـثالتسجيلقائمة الاعضاءالمجموعاتدخول

شاطر | 
 

 6- فكره عامة عن السجلات : Registers

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل 
كاتب الموضوعرسالة
F.Abdelaziz
عقيد
عقيد


عدد الرسائل : 639
تاريخ التسجيل : 20/05/2009

مُساهمةموضوع: 6- فكره عامة عن السجلات : Registers    الجمعة 15 أكتوبر 2010 - 7:56



6- فكره عامة عن السجلات : Registers


السجل هو مكان داخل الميكروكونترولر والذى يمكن الكتابة عليه أو القراءة منه أو كليهما معا لذلك يسمى سجل أو ملف .

فكر فى السجل كما لو كان قطعة من الورق ، حيث يمكنك أن تنظر إليه (قراءة) وتكتب معلومات به .

الشكل يوضح خريطة لتفاصيل السجلات أو الملفات لميكروكونترولر PIC16F84 .

لا تقلق إذا لم تكن رأيت مثلها من قبل فهى الآن فقط لإظهار أين تتواجد الخانات والسجلات المختلفة داخل الميكروكونترولر كما إنها سوف تساعد فى شرح وتفسير بعض الأوامر .





أول شيء ستلاحظه أنه ينقسم إلى قسمين كل قيم يسمى بنك Bank (بمعنى مجموعة أو قسم أو كومة ) ويسميان البنك 0 ( Bank 0 ) و البنك1 (Bank 1) 1) ) .

البنك 1 يستخدم للتحكم في التشغيل الفعلي للميكروكونترولر فعلى سبيل المثال : أن نخبر الميكروكونترولر أى خانات المنفذ A تكون دخلا وأيها يكون خرجا كما سنرى .

البنك 0 يستخدم لمعالجة البيانات.

مثال على ذلك :

دعونا نقول إننا نريد أن نجعل خانة واحدة من المنفذ A مرتفعة .
أولا نحن بحاجة إلى الذهاب إلى البنك 1 لتعيين أو تحديد أو تخصيص الخانة bit أو الطرف pin المطلوب بالمنفذ A كخرج . ثم نعود الى البنك 0 ونرسل المنطق 1 (الحالة المرتفعة) إلى هذا الطرف .

السجلات الأكثر شيوعا وشهرة في البنك 1 والتى سنستخدمها هي STATUS و TRISA و TRISB

السجل STATUS فى البنك 0 يسمح لنا بالتحول الى البنك 1 .




السجل TRISA يسمح لنا باختيار و بتحديد أى الأطراف (بنات – دبابيس) من المنفذ A كخرج وأيها كدخل .

السجل TRISB يسمح لنا باختيار و بتحديد أى الاطراف (بنات – دبابيس) من المنفذ B كخرج وأيها كدخل.

السجل الأول STATUS فى البنك 1 يسمح لنا بالعودة الى البنك 0

دعونا نلقي نظرة فاحصة على هذه السجلات الثلاثة.

سجل الحالة STATUS :

فى بداية تشغيل البرنامج فان الوضع الافتراضى هو البنك 0 , للانتقال من البنك 0 إلى البنك 1 فإننا نخبر مسجل الحالة بذلك , و نفعل ذلك بجعل الخانة رقم 5 بمسجل الحالة تساوى1 .

للعودة إلى البنك 0 مرة أخرى نجعل الخانة 5 لمسجل الحالة تساوى 0 .

يقع سجل الحالة بالعنوان 03h و h تعنى سداسى عشر .

سجلات التحكم فى المنافذ TRISA و TRISB:

عنوان TRISA هو 85h وعنوان TRISB هو 86h .

لبرمجة أى طرف كخرج أو كدخل ببساطة نرسل إما 0 أو 1 إلى الخانة المطلوبة بالسجل .

ويمكن أن يتم ذلك إما بشكل ثنائي أو سداسى عشر أو الاثنين معا لأن الثنائى يساعد فى توضيح حالة المنفذ .

إذا كنت لا تألف التحويل من ثنائي إلى سداسى عشر أو بالعكس يمكنك استخدم آلة حاسبة علمية.

لدينا بالمنفذ A خمسة أطراف وبالتالى لدينا 5 خانات .

إذا أردنا أن نجعل أحد الأطراف كدخل نرسل '1' إلى الخانة المناظرة ذات الصلة.

وإذا أردنا أن نجعل أحد الاطراف كخرج نجعل الخانة المناظرة ذات الصلة '0'

الخانات ترتب تماما بنفس طريقة الاطراف .

وبعبارة أخرى الخانة 0 هى RA0 والخانة 1 هى RA1 ، والخانة 2 هى RA2 وهلم جرا.

دعنا نأخذ مثالا على ذلك:


إذا أردنا أن نجعل RA0 ، RA3 وRA4 كمخارج ونجعل RA1 وRA2 كمداخل :

نرسل العدد 00110 (06h). . للسجل TRISA , لاحظ أن الخانة 0 تكون فى اليمين كما هو مبين :





والشيء نفسه ينطبق على TRISB

سجلات المنافذ PORTA و PORTB

لجعل أحد أطراف الخرج مرتفعا ببساطة نرسل '1' (كتابة) إلى الخانة المناظرة في السجل PORTA أو السجل PORTB
نفس الشكل أو الهيئة أو الفورمة المتبعة فى كل من TRISA وTRISB متبعة هنا .

لقراءة ما إذا كان الطرف مرتفع أم منخفض نجرى فحص على الخانة المطلوبة ومعرفة إنها مرتفعة (1) ام منخفضة 0

قبل إعطاء مثال لكود أو شفرة فقط يجب شرح سجلان آخران هماw و f

السجل W

السجل W هو السجل العام الذي يمكنك وضع أي قيمة ترغب فيه .

وبمجرد وضع قيمة فى السجل W يمكنك إضافتها إلى قيمة أخرى ، أو نسخها .

إذا قمت بوضع قيمة أخرى فى السجل W فان القيمة السابقة تمحى وتكتب القيمة الجديدة بدلا منها.

السجل f

يمثل المتغير سواء أكان سجل خاص أو سجل عام .



الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
metwally.mustafa
فريق أول
فريق أول


عدد الرسائل : 4211
العمر : 30
الموقع : Egypt
العمل/الترفيه : automation engineer
تاريخ التسجيل : 12/01/2009

مُساهمةموضوع: رد: 6- فكره عامة عن السجلات : Registers    الجمعة 15 أكتوبر 2010 - 10:51

جزاكم الله خيرا اخى العزيز

_________________
I am so far behind, I think i am first
الرجوع الى أعلى الصفحة اذهب الى الأسفل
معاينة صفحة البيانات الشخصي للعضو
 
6- فكره عامة عن السجلات : Registers
استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة 
صفحة 1 من اصل 1

صلاحيات هذا المنتدى:لاتستطيع الرد على المواضيع في هذا المنتدى
منتدى التحكم الآلي والإلكترونيات :: منتديات التحكم الآلي والإلكترونيات :: منتدى الميكروكنترولر Micro Controller-
انتقل الى: