3rmcTnUdr

3rmcTnUdr 3rmcTnUdr

micropediastore
from micropediastore More from this publisher
30.03.2015 Views

TRISB.B7 = 1; مثال:‏ جلعل الرجل RC7 تعمل كدخل:‏ ملحوظة هامة فيما خيص خمارج األنالوج:‏ ذكرنا من قبل أن كال من املخرج A واملخرج E من املمكن يستخدموا مع األنالوج وكذلك مع الدجييتال خبالف املخارج ,B ,C D الذين يعملون كدجييتال فقط،‏ وبالتالي فإنه للتعامل أي من املخرجني A واملخرج E البد أوال أن حندد هل سنوصل عليهم أنالوج أم دجييتال وإذا حددناهم كدجييتال نقوم بعد ذلك بتحديد ما إذا كانوا سيستخدموا كدخل أم كخرج.‏ يتم حتديد املخرج A واملخرج E كدجييتال عن طريق األمر التالي:‏ ADCON1 = 0x06; وبالتالي فإنه عند استخدام املخرج A واملخرج E كدجييتال جيب كتابة األمر السابق أوال ثم كتابة األمر TRIS لنحدد اجتاه الداتا.‏ جيب معرفة أن هذا األمر بهذا الشكل وهذه القيمة يستعمل مع البك 16F877A وإذا كان هناك ميكرو ميكروكنرتولر.‏ آخر فان التعامل قد يكون خمتلف وسنعرف الحقا كيف نتعامل مع أي ADCON1 = 0x06; TRISA.B2 = 1; مثال:‏ جلعل الرجل RA2 تعمل كخرج ‏)دجييتال(:‏ إدخال وإخراج داتا على أرجل امليكروكنرتولر باألوامر السابقة حنن فقط قمنا بتحديد اجتاه الداتا هل ستكون كخرج أم دخل،‏ مبعنى هل امليكرو سيخرج قيم على رجوله ‏)خرج(‏ أم سنضع حنن القيم على رجوله ‏)باستخدام أي مكون آخر كالسويتش(‏ ويقوم امليكرو بقراءتها ‏)دخل(.‏ ولكن إذا أردنا إخراج قيمة على رجول خرج أو قراءة قيمة من رجول دخل فماذا نفعل؟؟ فمثال لو قلنا أننا سنجعل املخرج B كخرج وسنوصله مبجموعة من الليدات لكي يقوم امليكرو أن خيرج على رجول املخرج B مخسة فولت ليضيء الليدات ... بإضاءتها فكيف سنخرب 71 ميكروبيديا - موسوعة امليكروكنرتولر elgammalelectronics.com

يتم هذا من خالل أمر مشابه يف كتابته امر TRIS وهو األمر PORT حيث يكتب بنفس الطريقة:‏ PORTB = 0B11111111; فمثال األمر هذا فإن يستخدم إلخراج مخسة فولت على كل رجول املخرج B ‏)فمن املعروف أن القيمة 1 يف النظام الثنائي تناظر مخسة فولت كجهد والصفر يناظر الصفر فولت(.‏ نذكر بأن هذا األمر البد أن يسبقه أمر حتديد االجتاه املذكور يف القسم السابق.‏ TRISB = 0B00000000; PORTB = 0B00000000; مثال:‏ إلطفاء كل الليدات املوجودة على املخرج B: الفصل الرابع:‏ أساسيات برجمة البك بلغة السي 74 elgammalelectronics.com

TRISB.B7 = 1;<br />

مثال:‏<br />

جلعل الرجل RC7 تعمل كدخل:‏<br />

ملحوظة هامة فيما خيص خمارج األنالوج:‏<br />

ذكرنا من قبل أن كال من املخرج A واملخرج E من املمكن يستخدموا مع األنالوج وكذلك مع<br />

الدجييتال خبالف املخارج ,B ,C D<br />

الذين يعملون كدجييتال فقط،‏ وبالتالي فإنه للتعامل أي<br />

من املخرجني A واملخرج E البد أوال أن حندد هل سنوصل عليهم أنالوج أم دجييتال وإذا حددناهم<br />

كدجييتال نقوم بعد ذلك بتحديد ما إذا كانوا سيستخدموا كدخل أم كخرج.‏<br />

يتم حتديد املخرج A واملخرج E كدجييتال عن طريق األمر التالي:‏<br />

ADCON1 = 0x06;<br />

وبالتالي فإنه عند استخدام املخرج A واملخرج E كدجييتال جيب كتابة األمر السابق أوال ثم<br />

كتابة األمر TRIS لنحدد اجتاه الداتا.‏<br />

جيب معرفة أن هذا األمر بهذا الشكل وهذه القيمة يستعمل مع البك 16F877A وإذا كان<br />

هناك ميكرو<br />

ميكروكنرتولر.‏<br />

آخر فان التعامل قد يكون خمتلف وسنعرف الحقا كيف نتعامل مع<br />

أي<br />

ADCON1 = 0x06;<br />

TRISA.B2 = 1;<br />

مثال:‏<br />

جلعل الرجل RA2 تعمل كخرج ‏)دجييتال(:‏<br />

إدخال وإخراج داتا على أرجل امليكروكنرتولر<br />

باألوامر السابقة حنن فقط قمنا بتحديد اجتاه الداتا هل ستكون كخرج أم دخل،‏ مبعنى هل امليكرو<br />

سيخرج قيم على رجوله ‏)خرج(‏ أم سنضع حنن القيم على رجوله ‏)باستخدام أي مكون آخر<br />

كالسويتش(‏ ويقوم امليكرو بقراءتها ‏)دخل(.‏<br />

ولكن إذا أردنا إخراج قيمة على رجول خرج أو قراءة قيمة من رجول دخل فماذا نفعل؟؟ فمثال لو قلنا<br />

أننا سنجعل املخرج B كخرج وسنوصله مبجموعة من الليدات لكي يقوم<br />

امليكرو أن خيرج على رجول املخرج B مخسة فولت ليضيء الليدات ...<br />

بإضاءتها فكيف سنخرب<br />

71 ميكروبيديا - موسوعة امليكروكنرتولر<br />

elgammalelectronics.com

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!