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

   

الصورة الرمزية wleed antar
wleed antar
:: عضو ماسي ::
تاريخ التسجيل: May 2006
الدولة: القاهرة - مصر
المشاركات: 1,484
نشاط [ wleed antar ]
قوة السمعة:
قديم 18-11-2012, 07:46 PM المشاركة 57   
افتراضي



السلام عليكم
مهندس وليد عنتر جزاك الله خير دائما مواضيعك متميزة
انا عندى مشكلة واقتراح للعلم (انا لست متمكن تماما من البرمجة )
اولا بالنسبة لزيادة تردد اشارة الدخل اعتقد اننا مقيدين بسرعة الميكرو وبالاخص سرعة ال ADC مارايك لو استخدمنا الprescaler لزيادة التردد الذى يعمل علية الميكرو او نستخدم ADC خارجى يربط مع الميكرو serial or parallel وفى الحالة دى سوف نجعل وظيفة الميكرو هى الرسم وعمل العمليات الحسابية فقط (شيلنا الحمل من عليه)

ثانيا :المشكلة هى انى ىاشتريت شاشة جرافيك 128*64 ولكن اطرافها مختلفة تماما عن الموجودة فى الميكرو سى والبروتس ومش عارف اربطها مع 18f4550 ياريت تقدر تساعدنى

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

اعلانات

goldfinger2
:: عضوية غير مفعلة ::
تاريخ التسجيل: Oct 2006
الدولة: egypt
المشاركات: 186
نشاط [ goldfinger2 ]
قوة السمعة:
قديم 19-11-2012, 02:13 AM المشاركة 58   
افتراضي


السلام عليكم
بالنسبة لرقم الشاشة. Qc12864B انااشتريتها من الصين

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

الصورة الرمزية mohamedalikahli
mohamedalikahli
:: مهندس متواجد ::
تاريخ التسجيل: Dec 2010
الدولة: مصر -- الاسكندرية
المشاركات: 153
نشاط [ mohamedalikahli ]
قوة السمعة:
قديم 19-11-2012, 11:42 AM المشاركة 59   
افتراضي


السلام عليكم......
استاذ وليد.....ماذا عن قراءة القيم السالبة ....فالبيك يقرارا علي انها تساوي صفر ...و ليس لها قيمة حاولت كثيرا لكن لم افلح.....
راودني ..... بعض التفكير ...لقد درست في في متحكمات انها تحتوي علي علم يسمي علم الاشارة sign flag ......او يسمي علم السالبية nigative flag ....و يكون هذا الغلم مفعل (1)...عندما تكون اخر عملية قام بها المعالج سالبة و يكون غير مفعل عندما يكون اخر عملية قام بها المعالج موجبة .....فهل هذا يمكن ان يساعدنا او ان البيك يحتوي علي هذا النوع من الاعلام...
و السلام عليكم و رحمة الله و بركاته.......


الصورة الرمزية mohamedalikahli
mohamedalikahli
:: مهندس متواجد ::
تاريخ التسجيل: Dec 2010
الدولة: مصر -- الاسكندرية
المشاركات: 153
نشاط [ mohamedalikahli ]
قوة السمعة:
قديم 19-11-2012, 12:11 PM المشاركة 60   
x4


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


الصورة الرمزية Semmoor
Semmoor
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
المشاركات: 300
نشاط [ Semmoor ]
قوة السمعة:
قديم 19-11-2012, 03:47 PM المشاركة 61   
افتراضي


السلام عليكم

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

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

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


كود:
tmp = tmp * 64 ; tmp = tmp >> 10 ;
كود:


حيث أن tmp هى متغير من نوع unsigned long
كى يحتوى على أكبر قدر من البتات ،
ثم نقوم بعد ذلك بضرب القيمة التى قرأها من دخل الإشارة وحولها لبتات رقمية فى الرقم 64 حيث أن 64 هو عدد صفوف الشاشة الأفقية والتى على أساسها سيكون ارتفاع النقطة أو انخفاضها بحسب الفولت ،

ونرى الحلقة التكرارية فى البرنامج والتى تعمل على اعطاء النقطة رقم عمود من أعمدة الشاشة الـ 128 رقم جديد حتى يتم عمل مسح كامل أى رسم بكامل صفحة الشاشة يشكل لنا الموجة الداخلة للبيك !

نستطيع أن نؤخر عملية الرسم أو نثبتها ولكن يبقى السؤال كيف نقوم بتسريع الرسم ؟ وهذا أهم ما فى الموضوع وبناءا عليه تزداد أهمية جهاز راسم الموجات لأنه كلما زادت قدرته على الرسم بسرعة أعلى يستطيع أن يرسم الموجات الأعلى ترددا ، وإلا فسيكون مقتصرا على الموجات الأقل ترددا .

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

فيمكننا زيادة تردد الكريستالة بما يتناسب مع المتحكم كى تزداد سرعة المتحكم فى الأداء ،

ثانيا سير البرنامج يمكننا أن نكتب برنامجا كالذى كتبناه ولكن نلاحظ أننا كتبنا برنامج يستقبل الفولت ويقوم بضربه فى 64 ثم ازاحة 10 بتات ثم أخذ الناتج ووضعه فى احداثية النقطة لإظهارها على الشاشة ثم العودة من جديد !

أليست كل هذه الخطوات تستهلك من الزمن ؟

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

هكذا :-

كود:
for ( Xx=0; Xx<128; Xx++) { tmp = ADC_Read(0); tmp = tmp * 64 ; tmp = tmp >> 10 ; Var[xx] = tmp; }
وبذلك نكون وفرنا زمن الرسم على الشاشة لصالح سرعة القراءة من الإشارة !!

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

ثم سررت بما تم وأخذت أفكر فى كيفية زيادة السرعة أكثر حتى وصلت لطريقة أكثر سرعة

ونتناولها فى الحلقة القادمة

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

وفى نهاية الموضوع سأرفع لكم إن شاء الله مشروع متكامل مع ملفات اللوحات المطبوعة لشاشة 240*128 ليستفيد منه الجميع

ولكن نفكر فى زيادة السرعة أكثر من هذه الحلقة

فاصل ونواصل



السلام عليكم ورحمة الله وبركاته كيف حالك مهندس وليد

انا جربت الطريقة الثانية التي طرحتها ولكن لم يظهر اي شي على الشاشة!!

هذا هو الكود بعد التعديل:
http://upload.qariya.info/images/qar...b6413a258b.png


الصورة الرمزية Semmoor
Semmoor
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
المشاركات: 300
نشاط [ Semmoor ]
قوة السمعة:
قديم 19-11-2012, 03:51 PM المشاركة 62   
افتراضي


هذه الصورة توضح عدم ظهور رسم على الشاشة:
http://upload.qariya.info/images/qar...dc40af3e36.png


goldfinger2
:: عضوية غير مفعلة ::
تاريخ التسجيل: Oct 2006
الدولة: egypt
المشاركات: 186
نشاط [ goldfinger2 ]
قوة السمعة:
قديم 19-11-2012, 06:50 PM المشاركة 63   
افتراضي


السلام عليكم
هل جربت تغير نوع الTemp من unsigned long. الى signedlong حيث انه فى الحالة الثانية يحفظ الداتا باشارتها لان سعة هذا المتغير من سالب رقم الى موجب نفس الرقم اا اذكر هذالرقم بالتحديد هو حوالى 65000


الصورة الرمزية Semmoor
Semmoor
:: مهندس متميز ::
تاريخ التسجيل: Oct 2011
المشاركات: 300
نشاط [ Semmoor ]
قوة السمعة:
قديم 19-11-2012, 07:14 PM المشاركة 64   
افتراضي


اكتشفت الخطا نسيت حلقة التكرار لعرض الاشارات المخزنة في المصفوفة.



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