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

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

الصورة الرمزية yasirh88
yasirh88
:: مهندس متواجد ::
تاريخ التسجيل: Dec 2014
المشاركات: 156
نشاط [ yasirh88 ]
قوة السمعة:0
قديم 27-09-2015, 08:49 PM المشاركة 1   
sun مساعدة في ربط السيريال RS232 بالمايكروكونترولر Twitter FaceBook Google+



كل عام وانتم بخير

مطلوب مساعدتكم في ربط السيريال RS232 بالمايكروكونترولر
قمت بتنزيل برنامج لصنع منافذ وهمية virtual port وهذه الصورة توضح ربط البرنامج ببرنامجي الفيجوال بيسك والبروتس




والاسهم الحمرة تبين وجود ارسال واستقبال عند الضغط على كوماند معين

وهذا كود المايكروسي




وهذه صورة تبين الربط




مع ملاحظة عند الضغط على احدى الكوماند لبرنامج الفيجوال بيسك يبدأ البن الخاص بال RS232 بن رقم 2 - RXD - يصبح لون احمر ويرجع اخضر دلالة على وجود استجابة بين البرنامج والفيجوال بيسك

وهذا كود الفيجوال بيسك




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


مع جزيل الشكر


التعديل الأخير تم بواسطة : yasirh88 بتاريخ 27-09-2015 الساعة 08:53 PM
اعلانات

ماجد عباس محمد
:: نائب المشرف العام
::
تاريخ التسجيل: Jun 2009
الدولة: القاهرة - مصر
المشاركات: 12,214
نشاط [ ماجد عباس محمد ]
قوة السمعة:409
قديم 28-09-2015, 07:01 AM المشاركة 2   
افتراضي


أنت لم تهيء MSComm1 تهيئه كاملة
هذا المكون له Buffer للإرسال و آخر للإستقبال وهو لا يراسل الفيجيوال بيزك إلا عند إمتلائه فى الإستقبال
كليك بالأيمن و اختار Properties و راجع خواصة و اجعله يتعامل بعد العدد من البايت التى تريد استقبالها و الإستجابة لها

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

الصورة الرمزية yasirh88
yasirh88
:: مهندس متواجد ::
تاريخ التسجيل: Dec 2014
المشاركات: 156
نشاط [ yasirh88 ]
قوة السمعة:0
قديم 28-09-2015, 03:47 PM المشاركة 3   
افتراضي


اخي العزيز
لا اعرف كيف اهيء ال mscomm
كل الذي اعرفه انه تم تهيئته بواسطة الكود
mscomm1.commport=1
mscomm1.setting="9600,n,8,1

وهذه الصور توضح الخصائص للبورت


وهذه بقية الصور لبقية الخصائص





فانت حر اذا حبيت ان تشرح الخصائص بصورة سريعة وان تخبرني ماذا يعني الرقم 9600 , n , 8 ,1 وحسب علمي ال 9600 سرعة نقل البيانات فقط والبقية لا اعرف
واذا حبيت انه فقط ان تقول لي قم بتغير هذه الخاصية الى هذا الرقم والاخرى الى الرقم الاخر في كلا الحالتين تكون افدتني
وشكراا مرة اخرى على الظهور في استفساراتي


ماجد عباس محمد
:: نائب المشرف العام
::
تاريخ التسجيل: Jun 2009
الدولة: القاهرة - مصر
المشاركات: 12,214
نشاط [ ماجد عباس محمد ]
قوة السمعة:409
قديم 29-09-2015, 06:29 AM المشاركة 4   
افتراضي


اخي العزيز
لا اعرف كيف اهيء ال mscomm
كل الذي اعرفه انه تم تهيئته بواسطة الكود
mscomm1.commport=1
mscomm1.setting="9600,n,8,1
أولا من أدراك أن Commport1 خالى و غير مستخدم بواسطة الويندوز؟؟
تذكر الواجهة التى ذكرتها لك عن USB فى الموضوع الآخر تجد فيها إن كان خاليا أم تحتاج لفتح port آخر لذلك و يجب أن يكون متصل بالمنفذ الذى تستخدمه لمشروعك

أو تربطه بنفس البورت الذى عملته فى أول مشاركة لك وهو 3 أو 4


وهذه الصور توضح الخصائص للبورت


وهذه بقية الصور لبقية الخصائص

هذه ما ذكرتها لك وقلت لك أن له Buffer يجب أن تحدده وهو هنا 1024 يعنى سينتظر 1024 بايت قبل أن يرد على الفيجيوال بيزك كما أنه سينتظر حتى تملأ البفر ب 512 بايت قبل أن يرسل للخارج
لا تقل لى أى برنامج كذا يومض ليدات دليل أن
هذا ما تقوله الشركة التى صنعت الفيجيوال بيزك أما ما تراه فهو إشارات قد تكون من شيء آخر


فانت حر اذا حبيت ان تشرح الخصائص بصورة سريعة وان تخبرني ماذا يعني الرقم 9600 , n , 8 ,1 وحسب علمي ال 9600 سرعة نقل البيانات فقط والبقية لا اعرف
واذا حبيت انه فقط ان تقول لي قم بتغير هذه الخاصية الى هذا الرقم والاخرى الى الرقم الاخر في كلا الحالتين تكون افدتني
وشكراا مرة اخرى على الظهور في استفساراتي
9600 عدد البتس فى الثانية Bits/Sec
8 تعنى انك ترسل وحدة من 8 بت - بعض الأنظمة تستخدم ارقام أخرى
N تعنى No parity bit
1 تعنى one stop bit


التعديل الأخير تم بواسطة : ماجد عباس محمد بتاريخ 29-09-2015 الساعة 06:32 AM

الصورة الرمزية yasirh88
yasirh88
:: مهندس متواجد ::
تاريخ التسجيل: Dec 2014
المشاركات: 156
نشاط [ yasirh88 ]
قوة السمعة:0
قديم 29-09-2015, 09:16 PM المشاركة 5   
افتراضي


أولا من أدراك أن Commport1 خالى و غير مستخدم بواسطة الويندوز؟؟
تذكر الواجهة التى ذكرتها لك عن USB فى الموضوع الآخر تجد فيها إن كان خاليا أم تحتاج لفتح port آخر لذلك و يجب أن يكون متصل بالمنفذ الذى تستخدمه لمشروعك

أو تربطه بنفس البورت الذى عملته فى أول مشاركة لك وهو 3 أو 4
اخي العزيز اذا كنت تقصد ال device manager فهذه الصورة توضح البورتات
واستخدمت 4 بورتات بدل الاثنين رجعت للحالة الاولى التي عملتها في السابق



وانه غير مستخدم كما تشاهد بالبرنامج مع ذلك قمت بعمل بورتين وهميين كوم 3 كوم 4 كما بالصورة



كوم 3 مربوط ببرنامج الفيجوال بيسك كوم 4 مربوط ببرنامج البروتس ولكني لم اشغل البروتس عند تشغيل البروتس يبدا الربط وينكتب امتداد البروتس

هذه ما ذكرتها لك وقلت لك أن له Buffer يجب أن تحدده وهو هنا 1024 يعنى سينتظر 1024 بايت قبل أن يرد على الفيجيوال بيزك كما أنه سينتظر حتى تملأ البفر ب 512 بايت قبل أن يرسل للخارج
قمت بتغيير ال buffer الى القيم 64 مرة و 8 مرة اخرى وارجاعها كما كانت ونفس النتيجة -- مداخلة ما المقصود بمصطلح buffer فانا اعرفه انه دائرة الكترونية التي تكلمنا عنها سابقا هل هنا معناه ذاكرة تملا بعدد بايتات

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

9600 عدد البتس فى الثانية Bits/Sec
8 تعنى انك ترسل وحدة من 8 بت - بعض الأنظمة تستخدم ارقام أخرى
N تعنى No parity bit
1 تعنى one stop bit
شرح واضح ورائع ولا توجد مشكلة

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


رابط الملفات


التعديل الأخير تم بواسطة : yasirh88 بتاريخ 29-09-2015 الساعة 09:20 PM

ماجد عباس محمد
:: نائب المشرف العام
::
تاريخ التسجيل: Jun 2009
الدولة: القاهرة - مصر
المشاركات: 12,214
نشاط [ ماجد عباس محمد ]
قوة السمعة:409
قديم 30-09-2015, 07:52 AM المشاركة 6   
افتراضي


أولا معذرة لأنى منذ فترة طويلة بعد تلف الهارد و إعادة تنصيب جديد لم أضع VB6 مرة أخرى على الحاسب و نسيت بعض الأمور
أولا حدث اختلاط لدى بين Buffer و Threshold و تذكرت عندما رأيت الصورة فالبفر هو مخزن لإستقبال الوارد حتى تستخدمه بأمر القراءة و للإرسال فهو يحفظ ما ترسلة حتى يطلبه الجهاز الخارجى
أما Threshold فهو حد الذى عنده يعطى interrupt للحاسب - إقرا المساعدة Help File المرافق لهذا المكون لتعلم خباياه و تعلم هل يجب أن يكون صفر أو 1 ليرسل بايت واحدة أو تضبطه على عدد البايتات الواردة من الميكرو

اخي العزيز اذا كنت تقصد ال device manager فهذه الصورة توضح البورتات
واستخدمت 4 بورتات بدل الاثنين رجعت للحالة الاولى التي عملتها في السابق

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


كوم 3 مربوط ببرنامج الفيجوال بيسك كوم 4 مربوط ببرنامج البروتس ولكني لم اشغل البروتس عند تشغيل البروتس يبدا الربط وينكتب امتداد البروتس
البورت لا يربط بشيء غير عامل

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

شرح واضح ورائع ولا توجد مشكلة

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


رابط الملفات
نعم و كانت هناك مشاكل فراسلت شركة أتميل فرشحوا لى هذا البرنامج
https://sites.google.com/site/terminalbpp/
وهو برنامج يوضح ما البورتات الموجودة و ما هو المتاح منها و ما الغير متاح منها
أقوم بتوصيل الميكرو على البورت و اتعامل مع هذا البرنامج
عندما أتأكد من أن الإرسال و الإستقبال بين الميكرو و هذا البرنامج سليم، ابدأ على الفيجيوال بيزك و انا واثق أن الطرف الآخر سليم ولو استقبل صح سيرد كما اتوقع


الصورة الرمزية yasirh88
yasirh88
:: مهندس متواجد ::
تاريخ التسجيل: Dec 2014
المشاركات: 156
نشاط [ yasirh88 ]
قوة السمعة:0
قديم 01-10-2015, 12:55 AM المشاركة 7   
افتراضي


أولا معذرة لأنى منذ فترة طويلة بعد تلف الهارد و إعادة تنصيب جديد لم أضع VB6 مرة أخرى على الحاسب و نسيت بعض الأمور
أولا حدث اختلاط لدى بين Buffer و Threshold و تذكرت عندما رأيت الصورة فالبفر هو مخزن لإستقبال الوارد حتى تستخدمه بأمر القراءة و للإرسال فهو يحفظ ما ترسلة حتى يطلبه الجهاز الخارجى
أما Threshold فهو حد الذى عنده يعطى interrupt للحاسب - إقرا المساعدة Help File المرافق لهذا المكون لتعلم خباياه و تعلم هل يجب أن يكون صفر أو 1 ليرسل بايت واحدة أو تضبطه على عدد البايتات الواردة من الميكرو

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



هل معنى ال inBuffersize انه سيقوم باستلام 1024 بايت وتخزينها وبعدها يرسلها الى الاجهزة المرتبطة ؟؟ ما معنى ال outBuffersize هل سيقوم باخراج فقط 512 بايت ام ماذا ؟؟

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

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

نعم و كانت هناك مشاكل فراسلت شركة أتميل فرشحوا لى هذا البرنامج
https://sites.google.com/site/terminalbpp/
وهو برنامج يوضح ما البورتات الموجودة و ما هو المتاح منها و ما الغير متاح منها
أقوم بتوصيل الميكرو على البورت و اتعامل مع هذا البرنامج
عندما أتأكد من أن الإرسال و الإستقبال بين الميكرو و هذا البرنامج سليم، ابدأ على الفيجيوال بيزك و انا واثق أن الطرف الآخر سليم ولو استقبل صح سيرد كما اتوقع
قمت بتنزيل البرنامج ولكن هذا البرنامج لا يقوم بعمل بورتات وهمية هو فقط يقرا البورتات الموجودة



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


ماجد عباس محمد
:: نائب المشرف العام
::
تاريخ التسجيل: Jun 2009
الدولة: القاهرة - مصر
المشاركات: 12,214
نشاط [ ماجد عباس محمد ]
قوة السمعة:409
قديم 01-10-2015, 07:10 AM المشاركة 8   
افتراضي


شرح واضح تماما ولا يوجد مشكلة فقط توضيح بسيط لهذه الصورة



هل معنى ال inBuffersize انه سيقوم باستلام 1024 بايت وتخزينها وبعدها يرسلها الى الاجهزة المرتبطة ؟؟ ما معنى ال outBuffersize هل سيقوم باخراج فقط 512 بايت ام ماذا ؟؟
أقرا المساعدة بالنقر على زر Help
لقد شرحت لك المرة الماضية هذه النقطة و قلت

"
فالبفر هو مخزن لإستقبال الوارد حتى تستخدمه بأمر القراءة و للإرسال فهو يحفظ ما ترسلة حتى يطلبه الجهاز الخارجى
أما Threshold فهو حد الذى عنده يعطى interrupt للحاسب - إقرا المساعدة Help File المرافق لهذا المكون لتعلم خباياه و تعلم هل يجب أن يكون صفر أو 1 ليرسل بايت واحدة أو تضبطه على عدد البايتات الواردة من الميكرو
"
فلو تتعامل مع ميكرو لن تحتاج لخزن بايتات كثيرة قبل الإرسال و لن تحتاج لإستقبال كمية كثيرة حتى تقرأ

لكن لو تتعامل مع جهاز سريع مثل كارت الفاكس مع حاسب آخر أو شبكة فقد ترسل حزمة من 1024 بايت معا و لن يتمكن من قراءة واحدة ثم يحللها و ينفذ المطلوب قبل أن تأتى الثانية لذا فمن الوارد أن تفقد البايتات لذا يمكنك تكبير البفر حسب الحاجة
هذه نسخة ويندوز xp
ربما 64 بت

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

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


هل يمكنك ان تعطي فكرة عامة عن عمل البرنامج وتشرح ما هي انواع ال handshake المذكورة بالصورة ما المقصود بها
-- مداخلة بسيطة قرات مواضيع كثيرة عن مشاكل في ربط البروتس بالسيريال مشاكل سوفتوير ساجرب ان اربط عملي وارى النتيجة لكن قبل ان اربط هل يوجد اعدادات خاصة يجب وضعها للسيريال بورت ام فقط اضع المتكاملة max232 لخفض الفولتية واربط المايكروكونترولر ويقوم بقراءته
البرنامج سهل ولا يحتاج شرح
اختار رقم البورت و حدد التردد و اختار باقى 8N1 ثم انقر Connect
لو نجحت سيتحول الزر إلى disconnect
ما يستقبله يمكنك عرضه بأى من الصور الثلاث هكس أو عشرى أو باينارى
ما تريد ارساله اكتبه فى خانة Send و انقر send
البروتوكولات هى قياسية ولا أذكرها الآن يمكنك أن تكتب RS232 protocole فى جوجل تجدها تفصيلا
لكن هى غير مستخدمة مع الميكرو كونتروللر
طبعا ممكن تسأل عن أى نقطة فيها

إضافة رد

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

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

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


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

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