3rmcTnUdr
3rmcTnUdr 3rmcTnUdr
برجمة رجول امليكروكنرتولر: حتديد اجتاه الداتا :Data direction البك 16F877A تؤدي وظيفة الدجييتال أي تعمل كدخل رقمي )لقراءة كمثال يوجد 22 رجل يف حالة سويتش مثال( أو كخرج رقمي )للتحكم يف إضاءة الليد مثال(، السؤال هنا: مبا أن الرجل الواحدة ميكن أن تعمل كدخل أو كخرج فكيف ميكن حتديد أن رجل حمددة من رجول امليكروكنرتولر تعمل كدخل وأخرى تعمل كخرج ؟؟؟ يتم ذلك من خالل أمر معني وهو األمر TRIS وله صيغة معينة وهي كاآلتي: TRISX = 0B10101010; حيث ميثل ال X اسم املخرج الذي نريد التحكم يف اجتاه الداتا على رجولة ويتم استبداله يف األمر بهذا االسم (A–B–C–D–E) وتستخدم ال 0B وهي عبارة عن صفر وحرف البى لتدل على أن الرقم الذي يليها هو رقم ممثل بالنظام الثنائي أي يكون صفر أو واحد كما هو مكتوب وال ينظر له كقيمة عشرية كما هو املعتاد. وحيث أن أغلب املخارج يتكون من 8 رجول فغالبا ما يكون بعد ال 0B يوجد 8 قيم مقابلة لكل رجل يف املخرج وكل قيمة منها تأخذ إما واحد وإما صفر حسب عمله كدخل أو كخرج، فلو افرتضنا مثال أننا حندد املخرج B ونريد التحكم يف وظيفة رجوله فسيكون األمر كالتالي: Reference 4 elgammalelectronics.com 69 ميكروبيديا - موسوعة امليكروكنرتولر
Reference 4 فمثال إذا كنت تريد أن جتعل الرجل RB7 تعمل كدخل وباقي رجول املخرج B تعمل كخرج فسوف يكون األمر كالتالي: وهذا معناه TRISB = 0B10000000; أنك إذا كنت تريد أن جتعل رجل معينة كدخل فاجعل القيمة املقابلة هلا يف األمر TRIS تكون بواحد، واجعل القيمة تساوى صفر إذا كنت تريد هذه الرجل أن تعمل كخرج. مثال: الرجل رقم 1 و1 و4 و2 يف املخرج B تعمل كخرج والباقي دخل: TRISB = 0B11110000; TRISB = 0B11111111; TRISB = 0B00000000; مثال: مثال: املخرج B كله يعمل كدخل: املخرج B كله خرج: مثال: الرجول 1 و4 و2 و6 يف املخرج C تعمل كخرج والباقي كدخل: TRISC = 0B10101010; ... هكذا تعلمنا كيفية التعامل مع خمرج كامل ... لكن هل ميكن التعامل مع رجل واحدة فقط؟؟؟ اإلجابة: نعم وذلك من خالل األمر اآلتي: حيث ميثل ال X اسم املخرج وميثل ال N رقم الرجل يف املخرج TRISX.BN = 0; TRISD.B3 = 0; مثال: جلعل الرجل RD3 تعمل كخرج: الفصل الرابع: أساسيات برجمة البك بلغة السي 71 elgammalelectronics.com
- Page 34 and 35: الفصل الثاني قراءة
- Page 36 and 37: وال clock عبارة عن إشا
- Page 38 and 39: امليكرو 16F877A السابق
- Page 40 and 41: اليت يوصل عليها الط
- Page 42 and 43: رجول املخرج RA0,RA1,RA2,R
- Page 44 and 45: الفصل الثالث الربا
- Page 46 and 47: برنامج من تصميم وإن
- Page 48 and 49: القائمة :View وتستخدم
- Page 50 and 51: قائمة :Build وتستخدم ل
- Page 52 and 53: الفصل الثالث: الر
- Page 54 and 55: وبعد االنتهاء من كت
- Page 56 and 57: نوافق على اتفاقية ت
- Page 58 and 59: نضغط إلجياد ملف الر
- Page 60 and 61: نغلق هذه النافذة بع
- Page 62 and 63: ثم اضغط Update النافذة
- Page 64 and 65: احلصول على املكونا
- Page 66 and 67: إضافة السويتش Switch م
- Page 68 and 69: ثانيا: إضافة املك
- Page 70 and 71: إضافة األرضي (Ground) ت
- Page 72 and 73: إضافة جهاز قياس )ك
- Page 74 and 75: الفصل الثالث: الر
- Page 76 and 77: توجد أنواع أخرى من
- Page 78 and 79: ثم اضغط زر الربجمة:
- Page 81 and 82: الفصل الرابع أساسي
- Page 83: ربال يتال فإذا كان
- Page 87 and 88: يتم هذا من خالل أمر
- Page 89 and 90: وبنفس طريقة األمر TR
- Page 91 and 92: • حيث متثل الكلمة ty
- Page 93 and 94: ملحوظة: املتغري ذ
- Page 95 and 96: الفصل اخلامس مشاري
- Page 97 and 98: يوجد مشكلة بسيطة يف
- Page 99 and 100: للمشروع حتى يتولد م
- Page 101 and 102: بقي خطوة إضافية وجد
- Page 103 and 104: • ملحوظات هامة هنا
- Page 105 and 106: الربوجرامر وكابل ا
- Page 107 and 108: ثانيا: توصيل املي
- Page 109 and 110: وعند تشغيل املشروع:
- Page 111 and 112: ثم قم بعمل Build للربن
- Page 113 and 114: وحيث أننا ال نريد ع
- Page 115 and 116: الفصل اخلامس: مشا
- Page 117 and 118: يتال مشروع العداد ا
- Page 119 and 120: احملاكاة اخلطوة ال
- Page 121 and 122: وهكذا حتى نصل إىل ا
- Page 123 and 124: أي أن األمر يكافئ ا
- Page 126 and 127: الفصل السادس التعا
- Page 128 and 129: ومن هنا فإنه يوجد ط
- Page 130 and 131: حيث مت توصيل كل الل
- Page 132 and 133: مشروع تطبيقي لشرح ك
Reference 4<br />
فمثال إذا كنت تريد أن جتعل الرجل RB7 تعمل كدخل وباقي رجول املخرج B تعمل كخرج فسوف<br />
يكون األمر كالتالي:<br />
وهذا معناه<br />
TRISB = 0B10000000;<br />
أنك إذا كنت تريد أن جتعل رجل معينة كدخل فاجعل القيمة املقابلة هلا يف األمر TRIS<br />
تكون بواحد، واجعل القيمة تساوى صفر إذا كنت تريد هذه الرجل أن تعمل كخرج.<br />
مثال:<br />
الرجل رقم 1 و1 و4 و2 يف املخرج B تعمل كخرج والباقي دخل:<br />
TRISB = 0B11110000;<br />
TRISB = 0B11111111;<br />
TRISB = 0B00000000;<br />
مثال:<br />
مثال:<br />
املخرج B كله يعمل كدخل:<br />
املخرج B كله خرج:<br />
مثال:<br />
الرجول 1 و4 و2 و6 يف املخرج C تعمل كخرج والباقي كدخل:<br />
TRISC = 0B10101010;<br />
...<br />
هكذا تعلمنا كيفية التعامل مع خمرج كامل ... لكن هل ميكن التعامل مع رجل واحدة فقط؟؟؟<br />
اإلجابة: نعم وذلك من خالل األمر اآلتي:<br />
حيث ميثل ال X اسم املخرج وميثل ال N<br />
رقم الرجل يف املخرج<br />
TRISX.BN = 0;<br />
TRISD.B3 = 0;<br />
مثال:<br />
جلعل الرجل RD3 تعمل كخرج:<br />
الفصل الرابع: أساسيات برجمة البك بلغة السي 71<br />
elgammalelectronics.com