09-22-2011, 04:37 PM
|
|
التدريب الخامس : أسس برمجة التحويل من تناظرى إلى رقمى : Analog-to-digital conversion (ADC) الوصف : التحويل من تناظرى لرقمى ADC ضرورى لأن الأنظمة التى تضم الميكروكونترولر تتناول القيم الرقمية بينما البيئة المحيطة الحقيقية عبارة عن إشارات تناظرية مثل درجة الحرارة والسرعة والضغط وخرج الميكروفون ...ألخ . كل هذه الإشارات تحتاج للتحويل إلى بيانات رقمية قبل علاجها بالميكروكونترولر . سوف نتناول طريقة قراءة إشارة تناظرية خارجية باستخدام الميكروكونترولر PIC16F877 وعرض نتيجة (خرج) التحويل (عدد رقمى ) على وحدة عرض LCD . إشارة الدخل التناظرى سوف تكون جهد متغير بين 0V و 5V باستخدام مقاومة متغيرة . تذكر بعض المعلومات النظرية المطلوبة : - يمتلك الميكروكونترولر PIC16F877 ضمن بنائه الداخلى محول من تناظرى لرقمى ADC ذو سعة 10-bit بثمانى قنوات كمداخل .
- يتم التحكم فى عمل وظيفة موديول التحويل A/D module عن طريق السجلات هى : ADCON1, ADCON0
- القنوات الثمانية التناظرية متاحة على الأطراف :
RA0, RA1, RA2, RA3, RA5, RE0, RE1, RE2 . ولها أسماء بديلة هى AN0-AN7 .- يتم اختيار جهد الدخل المراد تحويله من على الطرف (القناة ) الذى يتصل بوحدة (موديول) التحويل ADC عن طريق الثلاثة خانات (bit3-bit5)CHS0-CHS2 "خانات اختيار القناة" بالسجل ADCON0" سجل التحكم فى المحول AD رقم 0 ) . الوضع الافتراضى لجميع خانات هذا السجل هو أصفار وهذا يعنى أن القناة AN0 فى الوضع الافتراضى تكون متصلة بالمحول (000) ومن ثم يمكن استخدام هذه القناة دون إعدادات جديدة لهذا السجل أى أن ADCON0=0 تعنى توصيل الطرف (القناة) AN0 بموديول ADC كما فى الشكل التالى .
- يتم التحكم فى اختيار استخدام الأطراف " تناظرى A – جهد مرجع موجب Vref+ – جهد مرجع سالب Vref- – مدخل /مخرج رقمى D " عن طريق الأربع خانات bit0-bit3 من سجل التحكم ADCON1 كما فى الشكل التالى ونلاحظ :
# الوضع الافتراضى لجميع الخانات هو أصفار (الصف الأول) نتيجة لذلك تكون جميع الأطراف الثمانية تناظرية A و يستخدم جهد المرجع الموجب Vref+ = Vdd وجهد المرجع السالب Vref- = Vss أى 8 تناظرى وصفر جهد مرجع وهو ما يعنيه " C/R=8/0 " # لاستخدام جميع الأطراف كمداخل / مخارج رقمية نستخدم الصف الذى يحتوى على C/R=0/0. # استخدام الطرف AN0 فقط كمدخل تناظرى وباقى الأطراف كمداخل / مخارج رقمية نستخدم الصف الذى يحتوى على C/R=1/0 (واحد تناظرى والجهود المرجعية الداخلية Vdd وVss ) قبل الأخير وفيه الخانات الأربعة "1110" أى أن ADCON1 = 0b00001110= 0x0E تعنى اختيار الطرف AN0 فقط كطرف تناظرى وباقى الأطراف كمداخل / مخارج رقمية . نتيجة التحويل بسعة 10-bit تحفظ فى سجلات نتيجة التحويل ADC وهى : السجل ADRESH "سجل البايت العلوى للنتيجة" والسجل ADRESL "سجل البايت السفلى للنتيجة". كل من هذين السجلين بسعة 8-bit . الدائرة الكهربية :
__________________
angel4angel4angel4angel4angel4
|