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

   

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 25-10-2013, 07:21 PM المشاركة 17   
افتراضي



تمام اخواني الاعزاء
الي الان الموضوع بدا يوضح لي ولكم..
ان شاء الله تنطلق ابداعاتكم لكي يتم كتابة الكود كامل واجربه ونستفيد جميعا من تلك التجربه
بارك الله فيكم ومتابع لكي اتعلم منكم ...
سلام عليكم
تم كتابة الكود وبلغة مايكروسي
http://arabsh.com/files/0c36454364f0/new_ok-rar.html

ولكن أستخدمت البك 16f877a ولكن اذا كان لديك البك 16f883 or 16f884 or or 16f885 16f886 لكون هذه المتحكمات 28 طرف وسعة ذاكره أكبر من 4 كيلوبايت

طبعا انا استخدمت معلومات كما في مثال المبين في ملف حساس
طريقة العمل يتم ضغط على سويج فسارسل البك هذه البيانات
02H, 01H, 00H, 00H, 03H
ثم ينتظر أستجابة من سنسر

أخي كريم
انا جربت مشروع بعمل محاكاة بشكل بسيط قمت بأرسال هذه البيانات بأستخدام الارسال عبر uart اي انني قمت بارسال بيانات الى البك بدلا من حساس
02H, 10H, 01H, F4H, E7H
وعندها قام بعرض قراءة على الشاشه=500m
ملاحظة مهمة البايت الخامس الموجود في البيانات الحساس سابقا قلت أني لااعرف عنه اي لااعرف مهمته من خلال قراءة وتحليل بيانات المثال تبين أنه يمثل check للبايتات الاربعة كيف ذلك أنظر الى الشرح من منول
Check: the XOR of STX, parameter, and data. Check=SBUF0 XOR SBUF1 XOR SBUTF2 XOR SBUF3.
اي انه يقوم بعمل XOR للبايتات الاربعة والنتيجة هي نفسها البايت خامس
لذا بسوفت وير علينا أن نعمل check لهذا البايت كيف ذلك بعد أن أحصل على الداتا أعمل XOR مع كل بايت مع بايت الاخر وأقوم بمقارنه النتيجه مع البايت الخامس فأذا كان متساوي فأن البيانات الاربعة التي أستلمتها من حساس هي صحيحة واذا كانت غير متساويه فبيانات غير صحيحة
اي ان بايت الخامس هو التاكيد على ان البيانات هي فعلا من حساس

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

اعلانات

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 25-10-2013, 07:27 PM المشاركة 18   
افتراضي


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


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

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

الصورة الرمزية عريبى محمود
عريبى محمود
:: ( رحمه الله عليه ) ::
تاريخ التسجيل: Feb 2009
الدولة: لا تسأل الطغاه لماذا طغو بل اسأل العبيد لماذا انحنو
المشاركات: 3,126
نشاط [ عريبى محمود ]
قوة السمعة:
قديم 26-10-2013, 03:01 AM المشاركة 19   
x4


السلام عليكم ورحمة الله وبركاته
----------------------------------
اخى الكريم حسن هادى
هل من الممكن ان تضع لى كود لمقياس مسافة يستخدم البيك16F877A بحساس
المسافة العادى المرفق بمشاركتى الاولى
ولك جزيل الشكر مقدما


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 26-10-2013, 05:01 AM المشاركة 20   
افتراضي


السلام عليكم ورحمة الله وبركاته
----------------------------------
اخى الكريم حسن هادى
هل من الممكن ان تضع لى كود لمقياس مسافة يستخدم البيك16F877A بحساس
المسافة العادى المرفق بمشاركتى الاولى
ولك جزيل الشكر مقدما
ان شالله أخي كريم
ولكن هل تمتلك معادلة هذا حساس لكي تساعدني في أكمال كتابة الكود
وهل تريد من الكود فقط أظهار المسافة على الشاشة؟


عبدالله نعمان
:: مهندس متواجد ::
تاريخ التسجيل: May 2006
المشاركات: 173
نشاط [ عبدالله نعمان ]
قوة السمعة:
قديم 26-10-2013, 10:03 AM المشاركة 21   
افتراضي


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


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 26-10-2013, 10:36 AM المشاركة 22   
افتراضي


جزاك الله كل خيرا اخي الكريم والمبدع حسن..
انا قمت بمحاكاة البرنامج علي البروتوس وعمل جيدا
=============
ساجربه علي ارض الواقع خلال هذا الاسبوع حيث ساشتري الاغراض المطلوبه..
بعد اذنك هل جربت المحاكاه مع مسافات اخري غير ال 500 متر؟؟
وماذا كانت النتيجه؟؟
======
ياريت لو تشرحلي الكود جزء جزء اكون شاكر ليك جدا يا اخي الكريم...
نعم أخي كريم انا جربت ذلك وبطبع البرنامج يقيس لغاية 65535 متر
شاهد هذا الفيديو بسيط
http://www.mediafire.com/?ydg8zgxxyianchc
انظر الى هذه الصور
http://img03.arabsh.com/uploads/imag...4c4966f70d.png
http://img03.arabsh.com/uploads/imag...4c4966f70c.png
http://img03.arabsh.com/uploads/imag...4c4966f605.png
http://img03.arabsh.com/uploads/imag...4c4966f604.png


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 26-10-2013 الساعة 11:11 AM

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 26-10-2013, 11:21 AM المشاركة 23   
افتراضي


سلام عليكم
تم كتابة الكود وبلغة مايكروسي
http://arabsh.com/files/0c36454364f0/new_ok-rar.html

ولكن أستخدمت البك 16f877a ولكن اذا كان لديك البك 16f883 or 16f884 or or 16f885 16f886 لكون هذه المتحكمات 28 طرف وسعة ذاكره أكبر من 4 كيلوبايت

طبعا انا استخدمت معلومات كما في مثال المبين في ملف حساس
طريقة العمل يتم ضغط على سويج فسارسل البك هذه البيانات
02H, 01H, 00H, 00H, 03H
ثم ينتظر أستجابة من سنسر

أخي كريم
انا جربت مشروع بعمل محاكاة بشكل بسيط قمت بأرسال هذه البيانات بأستخدام الارسال عبر uart اي انني قمت بارسال بيانات الى البك بدلا من حساس
02H, 10H, 01H, F4H, E7H
وعندها قام بعرض قراءة على الشاشه=500m
ملاحظة مهمة البايت الخامس الموجود في البيانات الحساس سابقا قلت أني لااعرف عنه اي لااعرف مهمته من خلال قراءة وتحليل بيانات المثال تبين أنه يمثل check للبايتات الاربعة كيف ذلك أنظر الى الشرح من منول
Check: the XOR of STX, parameter, and data. Check=SBUF0 XOR SBUF1 XOR SBUTF2 XOR SBUF3.
اي انه يقوم بعمل XOR للبايتات الاربعة والنتيجة هي نفسها البايت خامس
لذا بسوفت وير علينا أن نعمل check لهذا البايت كيف ذلك بعد أن أحصل على الداتا أعمل XOR مع كل بايت مع بايت الاخر وأقوم بمقارنه النتيجه مع البايت الخامس فأذا كان متساوي فأن البيانات الاربعة التي أستلمتها من حساس هي صحيحة واذا كانت غير متساويه فبيانات غير صحيحة
اي ان بايت الخامس هو التاكيد على ان البيانات هي فعلا من حساس

أخي كريم
جرب مشروع واذا عمل معاك دون مشاكل فسيقوم بشرح الكود اذا كنت ترغب بذلك
وأعتذر عن تأخير
أتمنى لك التوفيق
السلام عليكم
كود فيه خطأ بسيط وتم تصحيحه
وهذا هو كود
http://arabsh.com/files/0c36464a62f0/new_ok-rar.html

حيث كان خطأ
كود:
 case 6 :  {
                if(recevie >='0' && recevie <='9') recevie_data[2]=(recevie-'0')<<4;
                else if(recevie >='A' && recevie <='F') recevie_data[2]=(recevie-'0')<<4;

                cont=7;
                break;
               }
وطبعا هذا خطأ لان الارقام من 0 الى 9 تطرح منها 48 او تكتب '0' بينما الحروف من A الى F حسب اسكي كود لازم أطرح منها 65 او تكتب 'A' وبما ان A بنظام سادس عشر =10 بنظام عشري وجب هنا أضافه رقم 10 الى رقم
وهذا هو كود بعد تصحيحه
كود:
 case 6 :  {
                if(recevie >='0' && recevie <='9') recevie_data[2]=(recevie-'0')<<4;
                else if(recevie >='A' && recevie <='F') recevie_data[2]=(recevie-'A'+10)<<4;

                cont=7;
                break;
               }
يظهر هذا الخطا عند ما تقيس مسافة 61440 وبطبع في الكود سابق لن تشاهد هذا الخطأ وهو طبعا خطأ نتيجة نسخ ولصق فنسيت تعديل عليه


الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 26-10-2013, 07:23 PM المشاركة 24   
افتراضي


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



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