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

   

chafteyes
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 225
نشاط [ chafteyes ]
قوة السمعة:
قديم 31-10-2010, 04:50 PM المشاركة 17   
افتراضي



سلام الله عليكم
اسف لكن ارغب بطرح سؤال اخر قبل بدئ المشاريع
بالنسبة للرجستر adcon1 من البيت0-3 ما اهميتهم ادا كنا نحدد بن الدخل من خلال adcon0 والبيتات 3-5
ارجو من الله ان يتسع صدرك لي اخي العزيز واسف ان كنت اثقلث عليك
لك مني جزيل الشكر على كل شيء
في امان الله

اعلانات

chafteyes
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 225
نشاط [ chafteyes ]
قوة السمعة:
قديم 31-10-2010, 11:20 PM المشاركة 18   
افتراضي


سلام الله عليكم
الايوجد اي شرح واضح لطلبي وشكرا
في امان الله

اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

mysterious
:: مهندس ::
تاريخ التسجيل: Oct 2010
المشاركات: 11
نشاط [ mysterious ]
قوة السمعة:
قديم 01-11-2010, 09:20 AM المشاركة 19   
افتراضي


سلام الله عليكم
اسف لكن ارغب بطرح سؤال اخر قبل بدئ المشاريع
بالنسبة للرجستر adcon1 من البيت0-3 ما اهميتهم ادا كنا نحدد بن الدخل من خلال adcon0 والبيتات 3-5
ارجو من الله ان يتسع صدرك لي اخي العزيز واسف ان كنت اثقلث عليك
لك مني جزيل الشكر على كل شيء
في امان الله

السلام عليكم

ان البتات 0-3 في الريجستر ADCON1 تستخدم من اجل تحديد نوع الاطراف : هل الاطراف انالوج او ديجيتال او مداخل للجهد المرجعي ... طبعا لا توجد جميع الاحتمالات ...كل ما يمكنك فعله هو الاختيار حسب الجدول المرفق في الداتا شيت (الجدول الازرق في الشرح السابق) تبعا لحاجتك.

طبعا لم تثقل علي ابدا ... ان سؤالك واضح ولكن لم يكن لدي الوقت بالامس للاجابة ..ان شاء الله تكون الامور واضحة كليا الان ...


chafteyes
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 225
نشاط [ chafteyes ]
قوة السمعة:
قديم 01-11-2010, 01:06 PM المشاركة 20   
افتراضي


السلام عليكم

ان البتات 0-3 في الريجستر ADCON1 تستخدم من اجل تحديد نوع الاطراف : هل الاطراف انالوج او ديجيتال او مداخل للجهد المرجعي ... طبعا لا توجد جميع الاحتمالات ...كل ما يمكنك فعله هو الاختيار حسب الجدول المرفق في الداتا شيت (الجدول الازرق في الشرح السابق) تبعا لحاجتك.

طبعا لم تثقل علي ابدا ... ان سؤالك واضح ولكن لم يكن لدي الوقت بالامس للاجابة ..ان شاء الله تكون الامور واضحة كليا الان ...
سلام الله عليكم
شكرا غلى الايضاح اخي العزيز
في امان الله


mysterious
:: مهندس ::
تاريخ التسجيل: Oct 2010
المشاركات: 11
نشاط [ mysterious ]
قوة السمعة:
قديم 16-11-2010, 11:51 PM المشاركة 21   
Talking كل عام وانتم بخير ..بشرى سارة


السلام عليكم

استغل هذه الفرصة لاهنئكم جميعا بقدوم عيد الاضحى المبارك واتمنى للجميع دوام الصحة والعافية.وارجو من الله العلي القدير ان يوفقنا جميعا لما يحبه ويرضاه..

اعتذر على التاخير الكبير .. ولكن لم اجد اي رد او ملاحظة على الموضوع (وهذا ليس بمهم على اعتبار الموضوع مفهوم الى هنا) ..

وان شاء الله تعالى سنبدا بالقسم العملي بنهاية هذا الاسبوع على الاكثر وسيكون اول مشروع عملي هو ابسط مشروع ممكن ...

هل خطر على بالك ان تصمم مقياس فولتميتر بسيط تقيس به الجهود المستمرة ؟؟ اذن فقم بتجهيز نفسك الان وقم بمراجعة الدروس السابقة سريعا لاننا على وشك تصميم ابسط فولتميتر يقيس الجهود من 0 - 5 فولت ..وميزة ان هذا الفولتميتر هو من تصميمنا نحن ولن نحتاج الى شراءه ..فكل العناصر متوافرة لدينا..ارجو ان يكونل الموضوع مفيدا لجميع... وان ينفع بهذا العمل الكثير ان شاء الله.. ادعو الله العلي القدير ان يجعل هذا العمل خالصا لوجهه الكريم ..

سبحان الله وبحمده .. اشهد ان لا اله الا الله .. استغفره واتوب اليه ..


chafteyes
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 225
نشاط [ chafteyes ]
قوة السمعة:
قديم 18-11-2010, 02:57 PM المشاركة 22   
افتراضي


سلام الله عليكم
عيد مبارك سعيد عليكم و على كل الامة الاسلاميةان شاء الله
توكل على بركة الله كثير منا في انتظار الدرس الاول
شكرا على هده المبادرة
في امان الله سلام


mysterious
:: مهندس ::
تاريخ التسجيل: Oct 2010
المشاركات: 11
نشاط [ mysterious ]
قوة السمعة:
قديم 07-12-2010, 10:55 PM المشاركة 23   
افتراضي فولتميتر يقيس الجهد من 0 وحتى 5 فولت ..


السلام عليكم جميعا

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

هناك مفاجاة بسيطة بالنسبة للمحول وجدتها عندما حاولت ان اكتب البرنامج العملي بواسطة الميكروسي وعند عمل المحاكاة بواسطة البروتوس ..وهي تتعلق بمسجلات التحكم ADCON0 و ADCON1.

1-بالنسبة للمسجل ADCON0: والذي يحتوي على بتات التحكم بعملة التحويل فان النتيجة كانت عند استخدام الامر ADC_READ( ) .. فان التردد يتم وضعه تلقائيا على التردد الناتج عن الهزاز R-C الداخلي حتى لو تم وضع اعدادات مختلفة في بداية البرنامج .وتفعيل المبدل ومراقبة انتهاء عملية التحويل كلها يتحكم فيها الامر ADC_READ( ) لوحده دون تدخل من المستخدم ابدا.

2-بالنسبة للمسجل ADCON1: والذي يحتوي على انواع الاطراف BIT0-BIT3 هل هي ديجيتال او اناولوج ام جهد مرجعي بالاضافة الى نوع نتيجة المبدل (تعديل الى اليمين او تعديل الى اليسار BIT7) فان الامر ADC_READ( ) يجعل التعديل الى اليسار BIT7= 1 تلقائيا .ولكنه يترك فقط تحديد انواع المداخل BIT0-BIT3 فقط للمستخدم ..

الخلاصة : انه حتى تتعامل مع المبدل من انالوج الى ديجيتال فانه يكفي فقط تحديد البتات BIT0-BIT3 فقط وسيقوم الامور ADC_READ( ) بباقي عمليات الضبط لعملية التحويل ... اما في حال لم تضع أي قيمة في هذه البتات فان البيك تلقائيا سيقوم بتعريف المداخل الانالوج كلها كانها مداخل انالوج وليس ديجيتال .


الان نبدا بمشروعنا وهو مشروع فولتميتر بسيط لقياس الجهد من ( 0 – 5 فولت ) وعرض القيمة على شاشة LCD (بالمللي فولت )..

الدارة التي سنستخدمها كالتالي:



والبرنامج المستخدم هو التالي:



شرح البرنامج :

في السطر رقم 1 تم تعريف المتغير( Volt_res ) من نوع float وهذا النوع يمكن ان يحتوي على فاصلة مثل 7.142 على عكس المتغيرات العادية والتي لا تقبل أي ارقام بعد الفاصلة .

السطر رقم 2 تم تعريف مصفوفة من النوع ( char) تتكون من 6 عناصر من هذا النوع ( Volt[6] ) .

السطر رقم 4 يبدا البرنامج الرئيسي ( Void main ( ) ) .

تبدا عملية التعريفات بشكل عام في السطر رقم 7 مثل تعريف الطرف A0 كمدخل من خلال التعليمة ( TRISA.F0=1; ) كما تم تعريف ربط شاشة اال سي دي على البورت C ومن ثم استخدام امر مسح الشاشة.. في وبما انه ليس هناك أي اعدادات او تغييرات على المسجلات ADCON0 &ADCON1 كما قلت وبما اننا لن نستخدم سوى طرف واحد من البورت A كمدخل انالوج ولن نحتاج لاي طرف اخر كمداخل ديجيتال فقد قمت باهمال تعليمة تحديد البتات BIT0-BIT3 في المسجل ADCON1 كما قلت في الخلاصة السابقة .

الان تبدا حلقة لانهائية لقراءة المدخل الانالوج ومن ثم اظهار القيمة على شاشة LCD والتاخير نصف ثانية ثم مسح الشاشة وقراءة المدخل الانالوج من جديد وهكذا .. والتوضيح :

في السطر رقم 14 يتم قراءة المدخل الانالوج رقم صفر ووضع القيمة في المتغير Volt_res من خلال الامر Volt_res=ADC_READ(0) / طبعا الان القيمة الموجودة في المتغير Volt_res هي قيمة مستوى الجهد أي قيمة من 0 وحتى 1023 .

في السطر 15 حساب قيمة الفولت على المدخل الانالوج .. الان لدينا اكبر مجال لاشارة الدخل هو 5 فولت =5000ميللي فولت (وهذه تقابل المستوى الاعظم للدخل أي 1023 ) ... والجهد الموجود على الدخل يقابل المستوى الموجود في المتغير ( Volt_res) أي :



وبالضرب التبادلي حسب الرياضيات نحصل على العلاقة في السطر 15 .حيث يصبح لدينا قيمة الجهد الموجود على المدخل الانالوج وهو يحتوي على فواصل .فنستخدم الامر ( WordToStr ) من اجل تقريب القيمة (بدون فواصل) الموجودة في المتغير Volt_Res ووضعها في المصفوفة Volt[6] لنتمكن من اظهارها على الشاشة .

يتم في السطر 18 اخراج الجملة ( THE VOLTAGE ) في السطر الاول والعمود الثاني من الشاشة.
يتم في السطر 19 اخراج ( IS ) في السطر الثاني والعمود الاول من الشاشة.
يتم في السطر 20 اخراج قيمة المصفوفة VOLT[6] في العمود الثاني والسطر الخامس (هذا سبب تحويل القيمة الى متسلسة لنستطيع اخراجها على شاشة ال LCD بسهولة ودون مشاكل.
يتم في السطر 21 اخراج (mv ) مباشرة في اخر موقع بعد اخراج المصفوفة.
يتم في السطر 22 عمل تاخير زمني بمقدار نصف ثانية وبعدها مسح الشاشة وعودة مرة اخرى لقراءة القيمة على مدخل الانالوج وهكذا ...

البرنامج بالميكروسي مع المحاكاة على البروتوس موجودة على الرابط التالي:

http://arabsh.com/r2l4ks34nc7p.html

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

سبحان الله وبحمده .. اشهد ان لا اله الا الله .. استغفره واتوب اليه ..


chafteyes
:: مهندس جيد ::
تاريخ التسجيل: Mar 2009
المشاركات: 225
نشاط [ chafteyes ]
قوة السمعة:
قديم 07-12-2010, 11:03 PM المشاركة 24   
افتراضي


سلام الله عليكم
شكرا لك اخي على هدا المجهود المحمود ارجو من الله ان يجعله في ميزان حسناتك
يسرني ان اكون اول من يعلق على مجهودك
في امان الله
سلام



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