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

   

الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 24-10-2011, 09:29 PM المشاركة 25   
افتراضي




أخى العزيز اشكرك على برنامج الفيجوال بورت ولقد قمت بقوصيل الدائرة كما يلي

http://upload.qariya.info/images/qariya-2febbee6b6.jpg

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

http://upload.qariya.info/images/qariya-0d5cf4bcee.jpg

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

فى العملي (التطبيق فى الواقع) اربط rx مع البن 14 و tx مع البن 13
واما فى البروتس لم اجربه

وحتي لا تدوخ فى الربط مع الماكس 232 اتبع الحالات الاتيه:

Rx لا توصل الا مع البن رقم 14 او 7 فى الماكس
tx لا توصل الا مع البن 13 او 8 فى الماكس

الحالات :

1-اذا وصلت RX (بورت ) مع البن 14 فيجب ان توصل البن 11 من الجانب الاخر مع البك
2-اذا وصلت RX (بورت ) مع البن 7 فيجب ان توصل البن 10 من الجانب الاخر مع البك

3-اذا وصلتTX (بورت ) مع البن 13 فيجب ان توصل البن 12 من الجانب الاخر مع البك
4-اذا وصلت TX (بورت ) مع البن 8 فيجب ان توصل البن 9 من الجانب الاخر مع البك

انت حر فى اختيار الحالات ...يمكن ان تختار (1.3) او (2.4) او (1.4) او (2.3) المهم ان تختار حاله للاستقبال وحاله للارسال وسوف ارفق لك صوره يمكن ان تفهم اتجاة الاشاره .
ولا تنسى شئ اخر مهم جداا وهو

اذا استعملت الحاله الاولي او الحاله الثانيه فيجب ربط البن 11 او 10 الى tx فى البك

اذا استعملت الحاله الثالثه او الحاله الرابعه فيجب ربط البن 12 او 9 الى rx فى البك



واتمني ان تكون قد استفدت ....واى حاجه اخري تفضل

على فكره ......
يجب ان توسع بالك لان الفكره معقده قليلاا بالنسبه لاول مره (لا تيأس من التجارب فى الربط من الكومبيوتر مع البك)


التعديل الأخير تم بواسطة : lovevb6 بتاريخ 24-10-2011 الساعة 10:13 PM
اعلانات

الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 24-10-2011, 10:09 PM المشاركة 26   
افتراضي


ويوجد شرح بالصوره هنا



وكل الكلام الذي شرحته هو على ارض الواقع ..تم تطبيقه على الواقع ولا اعرف كيف يتم التوصيل فى البروتس


ولكن فى احدي المشاركات قرات مره انه فى البروتس يتم التوصيل عكس الواقع
ولا اتذكر فى اى مشاركه بالظبط

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

الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 24-10-2011, 10:28 PM المشاركة 27   
افتراضي


لاحظ الاخ بروتس كيف يريد التوصيل العكسي للواقع




يريد rx من البورت ان توصل مع rx من البك ..و يريد tx من البورت ان توصل مع tx من البك وهذا مخالف للواقع


الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 24-10-2011, 10:33 PM المشاركة 28   
افتراضي


لاحظ الاخ بروتس كيف يريد التوصيل العكسي للواقع




الاخ بروتس يريد rx من البورت ان توصل مع rx من البك ..و يريد tx من البورت ان توصل مع tx من البك وهذا مخالف للواقع


وفى الصوره التاليه سوف تجد رسمه نهائيه لكي تتعامل مع الماكس



تمنياتي لك بالتوفيق


الصورة الرمزية 007
007
:: مهندس متواجد ::
تاريخ التسجيل: Apr 2005
الدولة: مدينة بورسعيد - مصر
المشاركات: 176
نشاط [ 007 ]
قوة السمعة:
قديم 26-10-2011, 06:08 PM المشاركة 29   
x4 شكرا على الإهتمام



أخى العزيز lovevb6
اشكرا على اهتمامك و قد تفذت التوصيلات التى اوصيت بها و لكن دون جدوي و عليه قمت بعمل إختبار جيد
لقد اعادت برمجة البك بحيث يقوم بإرسال كلمة "ok" بشكل دائم مع وذلك لاختبر استجابة البك لعملية الأرسال و الإستقبل و الكود كالتالي:

unsigned short Value ;
void main() {
TRISB=0;
PORTB=0;
Value=0;
UART1_Init(19200); // Initialize USART module
// (8 bit, 19200 baud rate, no parity bit…)
Delay_ms(100);
while (1) {
if (UART1_Data_Ready()==1) { // If data has been received
Value = UART1_Read(); // read it
PORTB=value;
//if( Value == 1) portb=1;
//if( Value == 0) portb=0;
} // end if
if (UART1_Tx_Idle() == 1) {
UART1_Write("ok");
}
}//end while
}//end main

ولاحظ عدم استجابة PORT حيث ان TX الخاصة بالبك تضئ و تنطفأ دليل على ان البك يقوم بأسال الكلمة فعلا و لكن برنامج فيجوال بورت لا يستجيب وقد لاحظت ذلك في نبد sent عند com3 داخل برنامج الفيجوال بورت وهذا موضح في صورة التالية:

http://upload.qariya.info/images/qariya-30681f11d7.jpg

ارجوا المساعدة و التفسير جزاك الله خيرا


الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 26-10-2011, 09:32 PM المشاركة 30   
افتراضي



أخى العزيز lovevb6
اشكرا على اهتمامك و قد تفذت التوصيلات التى اوصيت بها و لكن دون جدوي و عليه قمت بعمل إختبار جيد
لقد اعادت برمجة البك بحيث يقوم بإرسال كلمة "ok" بشكل دائم مع وذلك لاختبر استجابة البك لعملية الأرسال و الإستقبل و الكود كالتالي:

unsigned short Value ;
void main() {
TRISB=0;
PORTB=0;
Value=0;
UART1_Init(19200); // Initialize USART module
// (8 bit, 19200 baud rate, no parity bit…)
Delay_ms(100);
while (1) {
if (UART1_Data_Ready()==1) { // If data has been received
Value = UART1_Read(); // read it
PORTB=value;
//if( Value == 1) portb=1;
//if( Value == 0) portb=0;
} // end if
if (UART1_Tx_Idle() == 1) {
UART1_Write("ok");
}
}//end while
}//end main

ولاحظ عدم استجابة PORT حيث ان TX الخاصة بالبك تضئ و تنطفأ دليل على ان البك يقوم بأسال الكلمة فعلا و لكن برنامج فيجوال بورت لا يستجيب وقد لاحظت ذلك في نبد sent عند com3 داخل برنامج الفيجوال بورت وهذا موضح في صورة التالية:

http://upload.qariya.info/images/qariya-30681f11d7.jpg

ارجوا المساعدة و التفسير جزاك الله خيرا
يااخي ياريت تحاول الاتي
نحن قلنا ان بروتس يعمل عكس الواقع فى الاتصال مع الكومبيوتر ..متفقين ..اوكي
من خلال الصوره التى ارسلتها فى هذه المشاركه واضح ان التوصيل معكوس اي انه يجب توصيل البن رقم 11 من الماكس مع البن رقم 26 من البك
والبن رقم 12 من الماكس مع البن رقم 25 من البك

والشئ الاخر اتمني ان تنقص فى سرعه الاتصال من 12900 الى 2400
وتاكد ان كل الاعدادات المنفذ التخيلي على نفس السرعه 2400
والشي الاخر يوجد مكتبه بامتداد dll على ما اعتقد يجب ان تبحث عنها وتنزلها فى المجلد system 32
نسيت اسم الملف وسوف ابحث لك عنه
انا لم اجرب التوصيل عن طريق المنفذ التخيلي فكل تجاربي على ارض الواقع

هناك ملاحضه اخري انت كتبت فى كود الميكرو سي :
;TRISB=0
;PORTB=0
فى هذه الحاله سوف يعمل المايكرو على تشغيل كل البورت واطفائها فى زمن سريع جداا (لا يمكن ملاحضته )
فيجب عكسها كالاتي
;PORTB=0
;TRISB=0
طبعا كما قلت لك هذا الكلام حصل معي من خلال تجارب على الواقع

كما اني الاحظ ان المشروع ناقص ...لانه يوجد خطوه ناقصه وهي الذهاب الى DEVICE MANAGER وتقوم ببعض الاعدادات هناك (هذا فى حاله الاتصال التخيليى فقط) ولكني نسيت ما هي وسازودك ببعض الامعلومات قريبااا

انت فقط قم بالتعديلات الاخيره


الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 26-10-2011, 09:58 PM المشاركة 31   
افتراضي


هل تملك هذه الاداه فى جهازك ابحث عنها
MSCOMM32.OCX


واتمني ان تكون اعداداتك فى الفجوال بيسك (اذا كنت تعمل على الفجوال بيسك ) كما الاتي:
Private Sub Form_Load()

MSComm1.CommPort = 1
MSComm1.SThreshold = 1
MSComm1.RThreshold = 1
MSComm1.InputMode = comInputModeText
MSComm1.InputLen = 1
MSComm1.Settings = "2400,n,8,1"
MSComm1.PortOpen = True
End Sub

لان اخي صاحب المشروع لم يذكر الاا ثلاث اعدادات فقط (لم اجربها هكذا من قبل )


abso
:: مهندس ::
تاريخ التسجيل: Apr 2011
المشاركات: 1
نشاط [ abso ]
قوة السمعة:
قديم 28-10-2011, 12:45 PM المشاركة 32   
افتراضي


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

لكن لاحظت حاجة و هى ان الرقم 1 اللى بيتم ارساله من البرنامج للبك لا يتم ترجمته على انه رقم واحد ولا ال 0 بيتم ترجمته على انه صفر.

القيمة اللى بتظهر فى البورت بى عند ارسال 1 هى 01100111
و القيمة اللى بتظهر فى البورت بى عند ارسال 0 هى 00000110

يعنى من وجهة نظر الليد فهى فعلا بتنور و تطفى مع الواحد و الصفر، لكن ليه فى رجول تانية تبع بورت بى بتطلع 5 فولت او صفر مع تغيير ال 0 او 1 على الرغم ان المفروض كلها تبقى 0 على طول و مفيش غير البين B0 بس هو اللى يتغير.

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



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