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

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

abdo123456
:: مهندس ::
تاريخ التسجيل: May 2010
المشاركات: 13
نشاط [ abdo123456 ]
قوة السمعة:0
قديم 01-06-2010, 08:53 PM المشاركة 1   
افتراضي شرح كيفية استخدام المقارن الموجود ب pic16f628 Twitter FaceBook Google+



السلام عليكم

احببت في اول مشاركة لي ان أشرح استخدام المقارن الموجود بالقطعة المذكورة
وتجدر الإشارة الى انه سيتخدم لغة البروتون في هذا الشرح
زالله الموفق


بعض انواع المايكروكونترولر مثل pic16f628 يحتوي على مقارن للجهد حيث يمكن استخدامه للمقارنة بين جهدين وتجدر الإشارة الى كون بع انواع المايكروكونترولر قد يكون بها مقارنان او اكثر كما في حاله المايكروكونترولر انف الذكر والذي يحتوي على اثنان
وفي الفقرة التالبة سنتناول كيفية مقارنة جهد خارجي مع مرجع خارجي وكذلك مع مرجع داخلي
ملاحظة: لن اتناول استخدام المقاطة او interrupt مع المقارن انما ساكتفي بإختبار output bit للمقارن فقط
المسجلات أو Registers لواجب الإطلاع عليها قبل برمجة المايكروكونترولر
1- CMCON
2- VRCON

CMCON
هذا المسجل يحتوي على ثمان بت ولكن منها وظيفته وهي على النحو التالي
Bit7 : هي مخرج المقارن الثاني
وتكون 1 في حالة ان الجهد على مدخل المقارن الموجب اعلى من السالب و 0 إذا كان الجهد على المدخل السالب اعلى من الموجب
وستنعكس الحالات المذكوهره سابقا اذا تم تفعيل بت عكس الخرج وهي بت 5 في هذا السجل


Bit6 : هي مخرج المقارن الأول
وتكون 1 في حالة ان الجهد على مدخل المقارن الموجب اعلى من السالب و 0 إذا كان الجهد على المدخل السالب اعلى من الموجب
وستنعكس الحالات المذكوهره سابقا اذا تم تفعيل بت عكس الخرج وهي بت 4 في هذا السجل


Bit5 : وهي تستخدم كما ذكر سابقا لعكس خرج المقارن الثاني
إذا 1 سيتم تفعيل العكس وأما اذا كان 0 فسيبقى العكس غير مفعل

Bit4 : وهي تستخدم كما ذكر سابقا لعكس خرج المقارن الأول
إذا 1 سيتم تفعيل العكس وأما اذا كان 0 فسيبقى العكس غير مفعل


Bit3 : وهي تستخدم لإسناد المداخل الى اضلاع محدده وهذ البت يستخدم فقط في حالتين 001 و الحالة 010 من وضعيات المقارن
في حالة اختيار الوضعية 001
إذا 1 سيكون المدخل السالب للمقارن الأول متصل بالضلع porta.3
و أما اذا كان 0 فسيكون موصول بالضلع للمقارن الأول porta.0

وأما في حالة وضعية 010
اذا كان 1
سيكون الضلع ىالسالب للمقارن الأول موصول ب porta.3
و سيكون الضلع ىالسالب للمقارن الثاني موصول ب porta.2
وأما اذا كان 0
سيكون الضلع ىالسالب للمقارن الأول موصول ب porta.0
و سيكون الضلع ىالسالب للمقارن الثاني موصول ب porta.1

Bit 0-2
فعن طريقها سيتم اختيار الوعية المناسبة للمقارن

على العموم لن اتطرق الى كل الوضعيات انما الى نوعان فقط كما ذكرت في المقدمة
والنوعان هما
1- 010 والمستخدم لمقارنة الجهد الخارجي مع مرجع داخلي
وفي هذه الحالة سيستخدم مقارنان كل على حدى
وسيتم اسناد الطرف السالب للمقارن الأول إما الى porta.0 أو porta.3
وكذلك سيتم اسناد الطرف السالب للمقارن الثاني إما الى porta.1 أو porta.2

وسنكمل ان شاء الله في المشاركة القادمة

اعلانات

abdo123456
:: مهندس ::
تاريخ التسجيل: May 2010
المشاركات: 13
نشاط [ abdo123456 ]
قوة السمعة:0
قديم 01-06-2010, 09:00 PM المشاركة 2   
افتراضي


ونكمل ما بدأناه



وأما بالنسبة الى السجل VRCON
فهو يستخدم لتحديد الجهد المرجعي الداخلى
وهو يحتوي على 8 بت

Bit 7 وتستخدم لتفعيل الحهد المرجعي
Bit 6 وتستخدم لإسناد المخرج الى الضلع porta.2 من عدمه
Bit 5 ويستخدم لتحديد نوع مجال الأختيار من الجهد
إذا 1 سيكون المجال المنخفض
وأما اذا كان 0 سيكون المجال العالي
Bit 0-3 ويستخدم لإحتيار الجهد المرجعي بسحب القانونين التاليين

إذا تم اختيار المجال المنخفض (bit5=1 ) ستكون المعادلة ( قيمة bit0-3) / 24 * قيمة جهد التغذية

وأما في حالة اختيار المرتفع (bit 5 =0) فإن المعادلة ستكون * جهد التغذية + (قيمة bit 0-3 ) * جهد التغذية


وفي المثاليين التاليين سيتم التوضيح اكثر

مثال 1
استخدام المقارن لمقارنة جهدين خارجيين مع مرجع خارجي دخلي مع عكس المخارج حتى يتم اضاءة portb.0 في حالة كان الجهد المسلط على porta.0 اكبر من الجهد المرجعي و كذلك بالنسبة الى المقارن الثاني على الضلع portb.1


كود:
Device 16F628A
Xtal 4
           
Dim test As Byte
test=0
TRISB=0
CMCON=%00110011
'CMCON=%00110010
PORTB=0
TRISA=7
'VRCON=%10101111

main:
    PORTB.0=CMCON.6
    PORTB.1=CMCON.7

GoTo main
والدائرة كما هي موضحة بالشكل التالي






المثال الثاني
استخدام المقارن لمقارنة جهدين خارجيين مع مرجع جهد دخلي مع عكس المخارج حتى يتم اضاءة portb.0 في حالة كان الجهد المسلط على porta.0 اكبر من الجهد المرجعي و كذلك بالنسبة الى المقارن الثاني على الضلع portb.1
البرنامج


كود:
Device 16F628A
Xtal 4
           
Dim test As Byte
test=0
TRISB=0
'cmcon=%00110011
CMCON=%00110010
PORTB=0
TRISA=7
VRCON=%10101111

main:
    PORTB.0=CMCON.6
    PORTB.1=CMCON.7

GoTo main
والدائرة المستخدمة هي


وتجدر الأشارة الى انه في البرنامج تم ظبط الجهد المرجهي الداخلي على المجال المنخفض و بقيمة 15
وبعد التعويض في المعادلة
يكون الجهد المراد المقارنه به هو 15/24* 5 = 3.125 فولت


والكود والسميوليشن للمثالين في اللينكين التاليين
http://www.4shared.com/file/XpDnDaXc/Comparator_1.html
http://www.4shared.com/file/fRj5J_B0/Comparator2.html

ولا تنسونا من دعائكم الصالح


التعديل الأخير تم بواسطة : abdo123456 بتاريخ 01-06-2010 الساعة 09:07 PM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

نايف نظمي
:: مهندس جيد ::
تاريخ التسجيل: Jul 2009
الدولة: الاردن
المشاركات: 274
نشاط [ نايف نظمي ]
قوة السمعة:0
قديم 01-06-2010, 10:01 PM المشاركة 3   
افتراضي


بارك الله فيك وجعله في ميزان حسناتك

تسلم الايادي .. استمر على هذا المنوال


metalljack
:: عضو ذهبي ::
تاريخ التسجيل: Mar 2008
الدولة: syria
المشاركات: 900
نشاط [ metalljack ]
قوة السمعة:103
قديم 01-06-2010, 10:37 PM المشاركة 4   
افتراضي


موضوع مهم الله يبارك فيك ويعطيك العافية على مجهودك وتعبك


الصورة الرمزية أبو زكووور
أبو زكووور
:: عضو فضي ::
تاريخ التسجيل: Mar 2009
الدولة: سوريا العروبة
المشاركات: 436
نشاط [ أبو زكووور ]
قوة السمعة:81
قديم 01-06-2010, 11:35 PM المشاركة 5   
attension السلام عليكم


شكراً لك أخي abdo123456 .... بارك الله فيك
موضوع هام و مميز
ولكن من وجهة نظري أن خاصية ADC أهم و فائقة الدقة
و لها تطبيقات عديدة مثل المقاييس ( فولت آمبير حرارة ضوء وزن ......)
أقترح وضع مثل هكذا موضوع
بالتوفيق إنشاء الله .












.


metalljack
:: عضو ذهبي ::
تاريخ التسجيل: Mar 2008
الدولة: syria
المشاركات: 900
نشاط [ metalljack ]
قوة السمعة:103
قديم 02-06-2010, 12:48 AM المشاركة 6   
افتراضي


كيف حالك أبو زكور انت حبيت atmega8 حتى صار أغلى من pic أكيد وصلتك أسعاره الجديدة ههههههه والله شي بيبكي


abdo123456
:: مهندس ::
تاريخ التسجيل: May 2010
المشاركات: 13
نشاط [ abdo123456 ]
قوة السمعة:0
قديم 02-06-2010, 05:50 AM المشاركة 7   
افتراضي


السلام عليكم

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

ومثال ذلك
ثمن PIC16F628 حوالي2 دولار
بالمقابل PIC16F88 حوالي4 دولار

والأولى بها مقارن
والثانية بها ADC

وشكرا


الصورة الرمزية أبو زكووور
أبو زكووور
:: عضو فضي ::
تاريخ التسجيل: Mar 2009
الدولة: سوريا العروبة
المشاركات: 436
نشاط [ أبو زكووور ]
قوة السمعة:81
قديم 02-06-2010, 08:13 AM المشاركة 8   
attension


كيف حالك أبو زكور انت حبيت atmega8 حتى صار أغلى من pic أكيد وصلتك أسعاره الجديدة ههههههه والله شي بيبكي
أهلاً أخي عصام
صحيح هو الآن مفقود عالمياً , لأنه رغم سرعته و كبر الذاكرة فيه
إلا أنه يتم الآن تطويره ليصبح أسرع و ذاكرته أكبر و أكبر

و الحمدلله عندي حوالي 1000 متحكم M16 و M8
و حوالي 500 قطعة M32 smd



إضافة رد

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

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

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


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

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