دورات هندسية

 

 

برمجة الحاكم الدقيق (الدرس الاول من 13)

النتائج 1 إلى 8 من 8
  1. [1]
    sockets
    sockets غير متواجد حالياً

    عضو

    تاريخ التسجيل: Aug 2006
    المشاركات: 14
    Thumbs Up
    Received: 0
    Given: 0

    برمجة الحاكم الدقيق (الدرس الاول من 13)

    بسم الله الرحمن الرحيم
    (1) المسجلات

    يعتبر المسجل مكان بداخل المتحكم الدقيق حيث بامكانك الكتابه عليه او القراءه منه او كلاهما , فلنعتبر المسجل كقطعه من الورق

    التى من خلالها يمكنك الإطلاع عليها و قراءة محتوياتها او الكتابه على هذه الورقة , الصوره التاليه توضح المسجلات التى يحويها

    المتحكم الدقيق PIC16F84 لا تقلق إذا كنت لا تعلم عن هذه المسجلات شيء فهذه فقط لعرض عناوين هذه المسجلات داخل


    المتحكم الدقيق , و كما ترون فى الصوره أن خريطة المسجلات تم قسمها إلى قسمين البنك 0 و البنك 1 او المنطقة صفر وواحد

    حيث يستخدم البنك 1 لتعريف المتحكم ايا من المنافذ نحتاجها لكى تكون خرج و اى من المنافذ من المتحكم نحتاجها لتكون دخل

    اما البنك 0 فهو يستخدم للتعامل مع البيانات, كمثال اذا كنا نريد ان نجعل احدى بتات المنفذ A عالى (خرج واحد رقمى) اذا فأولا

    نقوم بالذهاب إلى البنك 1 لتوصيف هذا البت فى المنفذ A كخرج ثم نعود ثانية الى البنك 0 الخاص بالتعامل مع البيانات ثم نعطى

    المتحكم امر بأخراج واحد بت الى هذا البت ليصبح عالى ,,,, و من اهم المسجلات التى سنقوم بالتعامل معها فى البنك 1 هى

    STATUS , TRISA ( Tri-state register for A) , TRISB (Tri-state register for B) فالمسجل الاول يمكنا

    من الانتقال بين المسجلات TRISA و TRISB والمسجل TRISA يمكننا من تحديد اى من البتات من المنفذ A ستكون

    خرج و ايهما سيكون دخل , و كذالك أيضا بالنذبه للمسجل TRISB . و المسجل STATUS فى البنك 0 يمكننا من الانتقال الى

    البنك 1 .
    نظره اشمل على هذه المسجلات

    1- المسجل STATUS :


    يستخدم فى الانتقال من البنك 0 الى البنك 1 , و يمكننا القيام بذالك عن طريق جعل قيمة البت الخامس من هذا المسجل

    STATUS بواحد رقمى , و يمكننا ايضا من العوده الى البنك 0 عن طريق جعل البت الخامس بصفر رقمى و للعلم

    عنوان المسجل STATUS فى البنك 0 ب 03H هكسا فنظام العنونه بنظام السادس عشر .

    2- المسجل TRISA و TRISB :

    و هما موجودون بالعناوين 85H و 86H على التوالى , لبرمجة اى بت من المنفذ A او المنفذ B ليكون دخل او

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

    المنفذ A دخل نرسل واحد رقمى الى البت الثالث من المسجل TRISA و هذا ايضا ينطبق على المنفذ B حيث يتم

    خيارات التصنيف الى المسجل TRISB ,,, اما اذا كنت تريد ان تجعل هذا البت كخرج فانك تقوم بإرسال صفر رقمى

    الى البت المناظر فى TRISA او TRISB .


    مثال عام : اذا كنا نريد ان نجعل RA0 , RA3 و RA4 خوارج و RA2 و RA1 كمدخلات سنقوم اولا كما قلنا

    من قبل بالانتقال الى البنك 0 عن طريق STATUS و ذلك بجعل البت الخامس منه واحد رقمى ثم نقوم بإرسال القيمه

    0 0 1 1 0 الى المسجل TRISA و بذلك جعلنا البت واحد و اثنين مدخلات بأعطاء المسجل TRISA و احد و و احد

    رقمى و جعلنا البت رقم صفر و ثلاثه و اربعه كمخرجات . و ينطبق هذا ايضا على المسجل TRISB .


    3- المسجل PORTA و PORTB :

    المسجلات PORTA و PORTB هما المنافذ A و B و لجعل و احد من بتات هذه الاطراف واحد رقمى او صفر رقمى

    يجب اولا اعداده كمخرج من مسجل TRISA او TRISB ثم اخراج البيانات التى تريدها الى المنفذ مع العلم ان اى نوع

    من البيانات التى يتم إرسالها لهذان المنفذان يجب ان يمروا اولا بالمركم (W REGISTER) و يعتبر هذا المركم هو

    مسجل عام , حيث يمكنك وضع اى بيانات فيه و يمكنك أيضا جمع قيمة الموجود بالمركم لاى شىء آخر و يمكنك أيضا نقل

    الموجود به الى اى مسجل آخر ,,, مع العلم إذا قمت باذاحة بيانات لهذا المسجل ستمسح البيانات القديمه التى كانت موجوده

    بها .


    مثال عام على ما تم شرحه


    1- الكود الخاص بالتنقل من البنك 0 الى البنك 1 و ذالك كما قلنا بجعل البت الخامس من المسجل status بواحد رقمى

    حيث ان عنوان هذا المسجل 03h

    BSF 03H, 5
    BSF تعتبر اختصار لbit set f و معناه إرسال واحد رقمى الى البيت رقم 5 من العنوان 03h و هو المسجل status

    و ذالك طبعا للانتقال للبنك 1 . الان نحن فى بنك 1 ,,,


    2- الكود الثانى هو تصنيف البتات , مخرجات و مدخلات فكما قلنا فى المثال اللذى شرحناه فى المسجلات

    TRISA,TRISB وضعنا 0 0 1 1 0 فى مسجل ال TRISA و لكن قلنا انه يجب ان يمر على المركم اولا

    لانه لا يمكن ارساله الى المسجل TRISA مباشرة و الامر هو :


    MOVLW 00110

    و لقد قمنا بكتابه القيمه بالنظام الثنائى و يقصد بالامر Move Literal To W register , اى قم باذاحة القيمه

    المزكوره الى المركم . و الامر الذى سياتى بعد ذالك هو اذاحة القيمه التى اذيحت الى المركم الى ال TRISA و الكود

    هو
    MOVWF 85H
    و بذالك تم تصنيف بتات المنفذ PORTA من حيث المدخلات و المخرجات . الان نريد ان نرجع مرة اخرى الى البنك

    0 لانه هو الذى يتولى القيام بالعممليات و الكود هو ....

    BCF 03H,5
    والامر يعنى Bit Clear F بمعنى أخلى البت الخامس من العنوان 03h و هو عنوان المسجل STATUS و بذلك

    قمنا بالرجوع الى البنك 0 و بأمكاننا القيام بالعمليات العاديه


    الكود الاخير هو
    BSF 03H,5
    MOVLW 00110(06H)
    MOVWF 85H
    BCF 03H,5
    حتى الان انتهينا من اربعة اوامر فقط من 35 امر من طاقم اوامر المتحكم PIC16F84 تابع معى الدرس الثانى

    و هو الكتابه الى المنافذ

    ولا تبخلوا علينا بدعاء
    لاى استفسار المراسله على ال*****
    Die_another_day69*************

  2. [2]
    m_jammal
    m_jammal غير متواجد حالياً
    عضو


    تاريخ التسجيل: Dec 2005
    المشاركات: 19
    Thumbs Up
    Received: 0
    Given: 0
    الله يعطيك الف عافيه و ننتظر جديدك .............

    0 Not allowed!



  3. [3]
    الباحث1980
    الباحث1980 غير متواجد حالياً
    جديد


    تاريخ التسجيل: Jul 2003
    المشاركات: 5
    Thumbs Up
    Received: 0
    Given: 0
    أخي الكريم .. لم أجد الصورة على الصفحة.. ممكن تضعها مرة أخرى حتى تكون عندي الصورة أوضح...
    شكرا جزيلا

    0 Not allowed!


    لأستسهلن الصعب أو أدرك المنى فما انقادت الآمال إلا لصابر

  4. [4]
    Think
    Think غير متواجد حالياً
    جديد


    تاريخ التسجيل: Sep 2006
    المشاركات: 5
    Thumbs Up
    Received: 0
    Given: 0
    يعطيك العافية أخوي بس الصور مو موجودة للتوضيح ليسهل الفهم

    0 Not allowed!



  5. [5]
    روند احسان
    روند احسان غير متواجد حالياً
    جديد


    تاريخ التسجيل: Mar 2007
    المشاركات: 1
    Thumbs Up
    Received: 0
    Given: 0
    ارجو المواصلة في هذه الدروس لانها مفيدة جدا
    والله يجزيكم خيرا
    اخوكم روند من العراق

    0 Not allowed!



  6. [6]
    profshimo
    profshimo غير متواجد حالياً
    عضو متميز جداً


    تاريخ التسجيل: Jun 2006
    المشاركات: 1,318
    Thumbs Up
    Received: 1
    Given: 0
    جزاك الله خيرا ونرجو استكمال الدروس فى أقرب وقت

    0 Not allowed!



  7. [7]
    Apprentice_1
    Apprentice_1 غير متواجد حالياً
    جديد


    تاريخ التسجيل: May 2007
    المشاركات: 7
    Thumbs Up
    Received: 0
    Given: 0
    جزاك الله خيرا

    0 Not allowed!



  8. [8]
    ادور
    ادور غير متواجد حالياً
    عضو متميز جداً
    الصورة الرمزية ادور


    تاريخ التسجيل: Jul 2006
    المشاركات: 1,176
    Thumbs Up
    Received: 0
    Given: 5
    مشكوررررررررررررر

    0 Not allowed!



  
الكلمات الدلالية لهذا الموضوع

عرض سحابة الكلمة الدلالية

RSS RSS 2.0 XML MAP HTML