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

   

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 26-07-2014, 11:49 AM المشاركة 25   
افتراضي الجزء الثاني هو تحديث الجزء الاول من مشروع



بسم الله الرحمن الرحيم
السلام عليكم ورحمه الله وبركاته
هذا جزء الاول من مشروع متكون من كارت الرئيسي يستطيع بالتحكم بعد غرف عن طريق كمبيوتر او GSM او اندرويد او .... يعني نقول عنه معالج الرئيسي

اما كارت الثاني سمه room1 وهذا يتم التحكم بالغرفه الرقم 1 ومتصل بكارت الرئيسي عبر RS485
اما كارت الثالث سمه room2 وهذا يتم التحكم بالغرفه الرقم 2 ومتصل بكارت الرئيسي عبر RS485

http://up.top4top.net/downloadf-top4...5b711-rar.html
سأقوم بشرح الكود ومشاكل الي واجهتني لكي نحلها لنبدأ بعد بتطوير كارت كارت وكلا على حدا


مشكله هي كيفيه ربط RS232 مع RS485 في كارت الرئيسي لكونهما يعملان بنفس البروتوكول وهاردوير
طبعا يوجد حل بأستخدام 74ALS241 وهذه تعمل مثل select switch معتمده على الاطراف 1oE و 2oE ولكن لاسف لايمكن محاكاتها على البروتيس مما اضطرني الى استخدام سويجات
كان يمكن أستخدام العائله 18F ولكن لم أتمن من حل مشكله التي ذكرتها في هذا الرابط
http://www.qariya.info/vb/showthread.php?t=150559
تحياتي
السلام عليكم
قمت بتحديث المشروع الجزء الاول
http://up.top4top.net/downloadf-top4...dc3b1-rar.html
في هذا الجزء تمت حل مشكله التحويل بين RS232 و RS485 حيث عندما يستلم اشاره من كمبيوتر يتحول بشكل اتوماتيكي ويلغي الاتصال مع RS485 حيث أستخدمت 74HCT241 هو buffer
في هذا الجزء تمت تغير الاكواد شفرات تشغيليه للاحمال لتكون بهذه الصيغه SabcT
حيث a هو رقم الغرفه و b هو رقم الحمل و c هو حاله الحمل اذا كان=0 يعني اجعل حمل =0 واذا كان =1 يعني أجعل حمل =1
كما تمت برمجه #C




==============================================
أهم مشاكل التي لم تحل
1- في برنامج #C لايستجيب مايكرو الا اذا ارسلت له كود مرتين
مثال اذا ضغطت على سويج 1 لتشغيل حمل 1 في غرفه رقم 1 لازم ارسل له كود
كود:
if (sp.IsOpen) sp.Close();
                        sp.Open();
                        if (flag_load[0] == 0)
                        {
                            flag_load[0] = 1;
                            sp.Write("S111T");
                            sp.Write("S111T");
                            pictureBox1.BackColor = Color.Green;
                            label2.Text = "LOAD1  ON";
                            
                        }
                        else
                            if (flag_load[0] == 1)
                            {
                                flag_load[0] = 0;
                                sp.Write("S110T");
                                sp.Write("S110T");
                                pictureBox1.BackColor = Color.Blue;
                                //MessageBox.Show("Load1 IS OFF", "ROOM1");
                                label2.Text = "LOAD1  OFF";
                            }
2- اريد البرنامج في #C يعرض وقت بأستمرار اي وقت والتاريخ
3- اذا تمت أتصال بين كمبيوتر ومايكرو اريد أجعل #C يستقبل البيانات ومنها يتعرف على حاله الحمل اي ايهما في حاله ON واي هما في حاله OFF
يعني يتم قراءه بدون الضغط على اي سويج اي يتعرف اتوماتيكا (( يعني يقرأ بيانات بشكل اتوماتيكي))
4- اريد أجعل مستخدم هو الي يكتب نوع الحمل الذي لديه بحيث اذا كتب المستخدم فأن البرنامج سيحفظ النص الجديد ولايتغير عند أعاده تشغيل البرنامج



التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 26-07-2014 الساعة 12:29 PM
اعلانات

hamzazayyad
:: مهندس متميز ::
تاريخ التسجيل: Aug 2005
الدولة: موزنبيق
المشاركات: 696
نشاط [ hamzazayyad ]
قوة السمعة:
قديم 26-07-2014, 11:07 PM المشاركة 26   
افتراضي


السلام عليكم
قمت بتحديث المشروع الجزء الاول
http://up.top4top.net/downloadf-top4...dc3b1-rar.html
في هذا الجزء تمت حل مشكله التحويل بين RS232 و RS485 حيث عندما يستلم اشاره من كمبيوتر يتحول بشكل اتوماتيكي ويلغي الاتصال مع RS485 حيث أستخدمت 74HCT241 هو buffer
في هذا الجزء تمت تغير الاكواد شفرات تشغيليه للاحمال لتكون بهذه الصيغه SabcT
حيث a هو رقم الغرفه و b هو رقم الحمل و c هو حاله الحمل اذا كان=0 يعني اجعل حمل =0 واذا كان =1 يعني أجعل حمل =1
كما تمت برمجه #C




==============================================
أهم مشاكل التي لم تحل
1- في برنامج #C لايستجيب مايكرو الا اذا ارسلت له كود مرتين
مثال اذا ضغطت على سويج 1 لتشغيل حمل 1 في غرفه رقم 1 لازم ارسل له كود
كود:
if (sp.IsOpen) sp.Close();
                        sp.Open();
                        if (flag_load[0] == 0)
                        {
                            flag_load[0] = 1;
                            sp.Write("S111T");
                            sp.Write("S111T");
                            pictureBox1.BackColor = Color.Green;
                            label2.Text = "LOAD1  ON";
                            
                        }
                        else
                            if (flag_load[0] == 1)
                            {
                                flag_load[0] = 0;
                                sp.Write("S110T");
                                sp.Write("S110T");
                                pictureBox1.BackColor = Color.Blue;
                                //MessageBox.Show("Load1 IS OFF", "ROOM1");
                                label2.Text = "LOAD1  OFF";
                            }
2- اريد البرنامج في #C يعرض وقت بأستمرار اي وقت والتاريخ
3- اذا تمت أتصال بين كمبيوتر ومايكرو اريد أجعل #C يستقبل البيانات ومنها يتعرف على حاله الحمل اي ايهما في حاله ON واي هما في حاله OFF
يعني يتم قراءه بدون الضغط على اي سويج اي يتعرف اتوماتيكا (( يعني يقرأ بيانات بشكل اتوماتيكي))
4- اريد أجعل مستخدم هو الي يكتب نوع الحمل الذي لديه بحيث اذا كتب المستخدم فأن البرنامج سيحفظ النص الجديد ولايتغير عند أعاده تشغيل البرنامج


اخي حسن بخصوص النقطه الاولى انا تعودت على هدا الشيء .
2- قم باضافه تايمر وقم بتفعيله من خصائص التايمر ومن تم اكتب التالي بعد ان تضغط مرتين على التايمر في اسفل شاشه البرنامج
كود:
   clock.Text = DateTime.Now.ToLocalTime().ToString();
3- غالبا ما يتم وضع كبسه على برنامج c# تسمى عادتا connect حتى تكون متاكد ان الميكرو والكمبيوتر متصلا معا بالاسلاك
بخصوص معرفه حاله المداخل والمخارج وقيم الانالوج افضل بروتوكول عملي اسمه modbus ويرسل الداتا على rs232 or rs458 وله عده انواع اهمها modbus RTU والجميل بهدا البروتوكول انه مفتوح المصدر وسيغنيك ويريحك بدل ان تخترع طريقه من نفسك للارسال واستقبال المداخل وارقامها .... حيت يوجد عنوان في هدا البروتوكول للمداخل والمخارج ...الخ وشركات كتير تستخدم هدا البروتوكول

4- تحتاج ان تستخدم صفحهl exce تكتب عليها ومن تم تقراها اليوتيوب مليء بالامتله منها https://www.youtube.com/watch?v=HUM5XzRbvbo

بالتوفيق


التعديل الأخير تم بواسطة : hamzazayyad بتاريخ 26-07-2014 الساعة 11:14 PM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 27-07-2014, 08:40 AM المشاركة 27   
ha


اخي حسن بخصوص النقطه الاولى انا تعودت على هدا الشيء .
2- قم باضافه تايمر وقم بتفعيله من خصائص التايمر ومن تم اكتب التالي بعد ان تضغط مرتين على التايمر في اسفل شاشه البرنامج
كود:
   clock.Text = DateTime.Now.ToLocalTime().ToString();
3- غالبا ما يتم وضع كبسه على برنامج c# تسمى عادتا connect حتى تكون متاكد ان الميكرو والكمبيوتر متصلا معا بالاسلاك
بخصوص معرفه حاله المداخل والمخارج وقيم الانالوج افضل بروتوكول عملي اسمه modbus ويرسل الداتا على rs232 or rs458 وله عده انواع اهمها modbus RTU والجميل بهدا البروتوكول انه مفتوح المصدر وسيغنيك ويريحك بدل ان تخترع طريقه من نفسك للارسال واستقبال المداخل وارقامها .... حيت يوجد عنوان في هدا البروتوكول للمداخل والمخارج ...الخ وشركات كتير تستخدم هدا البروتوكول

4- تحتاج ان تستخدم صفحهl exce تكتب عليها ومن تم تقراها اليوتيوب مليء بالامتله منها https://www.youtube.com/watch?v=HUM5XzRbvbo

بالتوفيق
السلام عليكم
أخي العزيز ممكن طلب منك هو صراحه تابعت فيديو ولكن يصعب عليه فهمه
اخي العزيز الا يوجد طريقه لحفظ النص الي يكتبه مستخدم مثلا كتب تلفاز يعني هذه كلمه تبقى محفوظه واذا لم يوجد هل يمكنك شرح لنا طريقه في دورتكم لكي نستفاد منها
ايضا يالنسبه لقراءه البيانات انا وضعت richTextBox1 لقراءه البيانات وفعلا عند الضغط على زر يقرأ البيانات ولكن مشكله لايغير او لاينفذ مايطلب منه يعني اخبرته اذا أستلمت "A" مثلا غيرلي لون صوره الى أخضر

زين أخي هل يمكن خزن البيانات مرسله في مصفوفه ثم عمل مقارنه لها
على عموم أكتب هذا الكود
كود:
private void checkload_sw_Click(object sender, EventArgs e)
                  {
                      
                     if (!sp.IsOpen) sp.Open();

                     for (cont = 0; cont < 5; cont++) sp.Write("S987T");// code 987 for reading information about loads
                      cont = 0;
                      sp.DataReceived += new SerialDataReceivedEventHandler(sp_DataReceived);
                     
                  }
          
       string  w;
       void sp_DataReceived(object sender, SerialDataReceivedEventArgs e)
       {
           //throw new NotImplementedException();
         w  =sp.ReadLine();
         if (w != string.Empty)
            {
             
              switch (w)
                         {
                           case "A": pictureBox1.BackColor = Color.Green;break;
                           case "a": pictureBox1.BackColor = Color.Red; break;

                           case "B": pictureBox2.BackColor = Color.Green; break;
                           case "b": pictureBox2.BackColor = Color.Red; break;

                            case "C": pictureBox3.BackColor = Color.Green; break;
                            case "c": pictureBox3.BackColor = Color.Red; break;

                             case "D": pictureBox4.BackColor = Color.Green; break;
                             case "d": pictureBox4.BackColor = Color.Red; break;

                             case "E": pictureBox5.BackColor = Color.Green; break;
                             case "e": pictureBox5.BackColor = Color.Red; break;

                       }
             }
ولكن أيضا فشل في قراءه
هل يمكنك شرح لنا طريقه كيفيه اذا قرأنا البيانات تنفيذ اوامر معينه

يعني بأختصار
1- شرح كيفيه حفظ نصوص
2- كيفيه قراءه من RS232 وتنفيذ اوامر حسب البيانات التي تمت قراءتها
3- كيف أجعل البرنامج يقرأ بشكل مستمر بعد الضغط على زر القراءه مثلا بحيث بعدها البرنامج يبقى مستمر الا اذا ظغطت على زر أخر مثلا

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


hamzazayyad
:: مهندس متميز ::
تاريخ التسجيل: Aug 2005
الدولة: موزنبيق
المشاركات: 696
نشاط [ hamzazayyad ]
قوة السمعة:
قديم 27-07-2014, 01:08 PM المشاركة 28   
افتراضي


السلام عليكم
قمت بتحديث المشروع الجزء الاول
http://up.top4top.net/downloadf-top4...dc3b1-rar.html
في هذا الجزء تمت حل مشكله التحويل بين RS232 و RS485 حيث عندما يستلم اشاره من كمبيوتر يتحول بشكل اتوماتيكي ويلغي الاتصال مع RS485 حيث أستخدمت 74HCT241 هو buffer
في هذا الجزء تمت تغير الاكواد شفرات تشغيليه للاحمال لتكون بهذه الصيغه SabcT
حيث a هو رقم الغرفه و b هو رقم الحمل و c هو حاله الحمل اذا كان=0 يعني اجعل حمل =0 واذا كان =1 يعني أجعل حمل =1
كما تمت برمجه #C




==============================================
أهم مشاكل التي لم تحل
1- في برنامج #C لايستجيب مايكرو الا اذا ارسلت له كود مرتين
مثال اذا ضغطت على سويج 1 لتشغيل حمل 1 في غرفه رقم 1 لازم ارسل له كود
كود:
if (sp.IsOpen) sp.Close();
                        sp.Open();
                        if (flag_load[0] == 0)
                        {
                            flag_load[0] = 1;
                            sp.Write("S111T");
                            sp.Write("S111T");
                            pictureBox1.BackColor = Color.Green;
                            label2.Text = "LOAD1  ON";
                            
                        }
                        else
                            if (flag_load[0] == 1)
                            {
                                flag_load[0] = 0;
                                sp.Write("S110T");
                                sp.Write("S110T");
                                pictureBox1.BackColor = Color.Blue;
                                //MessageBox.Show("Load1 IS OFF", "ROOM1");
                                label2.Text = "LOAD1  OFF";
                            }
2- اريد البرنامج في #C يعرض وقت بأستمرار اي وقت والتاريخ
3- اذا تمت أتصال بين كمبيوتر ومايكرو اريد أجعل #C يستقبل البيانات ومنها يتعرف على حاله الحمل اي ايهما في حاله ON واي هما في حاله OFF
يعني يتم قراءه بدون الضغط على اي سويج اي يتعرف اتوماتيكا (( يعني يقرأ بيانات بشكل اتوماتيكي))
4- اريد أجعل مستخدم هو الي يكتب نوع الحمل الذي لديه بحيث اذا كتب المستخدم فأن البرنامج سيحفظ النص الجديد ولايتغير عند أعاده تشغيل البرنامج

السلام عليكم
اخي حسن ارى انك ببرنامج c# بروتوكول rs232 وعلي البيك rs 485 حيت اعتقد انك تستلم البيانات بشكل معكوس
https://www.google.com.sa/search?q=r...ml%3B457%3B326

في هده التطبيقات عادتا ما يكون البيك الرئيسي يملك مدخلين T1X,R1X واحد لمحاكاه البكات في الداره ومدخل uart للتوصيل الى الحاسوب

بمعنى لو كنت مكانك لوصلت الكمبيوتر مع البيك الرئيسي عن طريق rs232
واستخدمت المدخل الاخرR2X,T2X للتوصيل لباقي البكات هدا رايي لكنك انت المصمم ولك حريه الاختيار


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


السلام عليكم
اخي حسن ارى انك ببرنامج c# بروتوكول rs232 وعلي البيك rs 485 حيت اعتقد انك تستلم البيانات بشكل معكوس
https://www.google.com.sa/search?q=r...ml%3B457%3B326

في هده التطبيقات عادتا ما يكون البيك الرئيسي يملك مدخلين T1X,R1X واحد لمحاكاه البكات في الداره ومدخل uart للتوصيل الى الحاسوب

بمعنى لو كنت مكانك لوصلت الكمبيوتر مع البيك الرئيسي عن طريق rs232
واستخدمت المدخل الاخرR2X,T2X للتوصيل لباقي البكات هدا رايي لكنك انت المصمم ولك حريه الاختيار
السلام عليكم
لا أخي العزيز فانا أستخدم RS485 لاتصال مابين الغرف او كارتات بينما RS232 هو لاتصال مع كمبيوتر فقط

وانا فعلا أستخدمت 18f45k22 بدلا من 16f877a وهذا يحتوي علىR2X,T2X و R1X,T1X وان شالله سوف ارفق تحديث جديد لمشروع مع أضافات جديده
ولكن لاازال اواجه صعوبه في مواضيع الي اشرت لك في مشاركه السابقه
تحياتي الطيبه لكم


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 27-07-2014 الساعة 03:09 PM

hamzazayyad
:: مهندس متميز ::
تاريخ التسجيل: Aug 2005
الدولة: موزنبيق
المشاركات: 696
نشاط [ hamzazayyad ]
قوة السمعة:
قديم 27-07-2014, 05:29 PM المشاركة 30   
افتراضي


السلام عليكم
أخي العزيز ممكن طلب منك هو صراحه تابعت فيديو ولكن يصعب عليه فهمه
اخي العزيز الا يوجد طريقه لحفظ النص الي يكتبه مستخدم مثلا كتب تلفاز يعني هذه كلمه تبقى محفوظه واذا لم يوجد هل يمكنك شرح لنا طريقه في دورتكم لكي نستفاد منها
ايضا يالنسبه لقراءه البيانات انا وضعت richTextBox1 لقراءه البيانات وفعلا عند الضغط على زر يقرأ البيانات ولكن مشكله لايغير او لاينفذ مايطلب منه يعني اخبرته اذا أستلمت "A" مثلا غيرلي لون صوره الى أخضر

زين أخي هل يمكن خزن البيانات مرسله في مصفوفه ثم عمل مقارنه لها
على عموم أكتب هذا الكود
كود:
private void checkload_sw_Click(object sender, EventArgs e)
                  {
                      
                     if (!sp.IsOpen) sp.Open();

                     for (cont = 0; cont < 5; cont++) sp.Write("S987T");// code 987 for reading information about loads
                      cont = 0;
                      sp.DataReceived += new SerialDataReceivedEventHandler(sp_DataReceived);
                     
                  }
          
       string  w;
       void sp_DataReceived(object sender, SerialDataReceivedEventArgs e)
       {
           //throw new NotImplementedException();
         w  =sp.ReadLine();
         if (w != string.Empty)
            {
             
              switch (w)
                         {
                           case "A": pictureBox1.BackColor = Color.Green;break;
                           case "a": pictureBox1.BackColor = Color.Red; break;

                           case "B": pictureBox2.BackColor = Color.Green; break;
                           case "b": pictureBox2.BackColor = Color.Red; break;

                            case "C": pictureBox3.BackColor = Color.Green; break;
                            case "c": pictureBox3.BackColor = Color.Red; break;

                             case "D": pictureBox4.BackColor = Color.Green; break;
                             case "d": pictureBox4.BackColor = Color.Red; break;

                             case "E": pictureBox5.BackColor = Color.Green; break;
                             case "e": pictureBox5.BackColor = Color.Red; break;

                       }
             }
ولكن أيضا فشل في قراءه
هل يمكنك شرح لنا طريقه كيفيه اذا قرأنا البيانات تنفيذ اوامر معينه

يعني بأختصار
1- شرح كيفيه حفظ نصوص
2- كيفيه قراءه من RS232 وتنفيذ اوامر حسب البيانات التي تمت قراءتها
3- كيف أجعل البرنامج يقرأ بشكل مستمر بعد الضغط على زر القراءه مثلا بحيث بعدها البرنامج يبقى مستمر الا اذا ظغطت على زر أخر مثلا

او اذا تم فتح البرنامج هو اتوماتيكيا يبدأ يقرا ولن يتوقف الى ان تخرج من البرنامج
ولكم جزيل الشكر والتقدير
اخ حسن يبدو ان لدي برنامجك القديم على بروتوس حيت يحتوي على 16f877
وايضا جربته وكان لا يرسل داتا الى الكمبيوتر؟؟؟؟ ارجو فحصه!!
ايضا بالنسبه للنقطه التانيه والتالته انا قد شرحت هدا من قبل ارجو مشاهده المشاركه رقم 138
http://www.qariya.info/vb/showthread...148004&page=18


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


التعديل الأخير تم بواسطة : hamzazayyad بتاريخ 27-07-2014 الساعة 05:34 PM

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 27-07-2014, 05:47 PM المشاركة 31   
افتراضي الجزء الثالث هو تحديث الجزء الاول من مشروع


اخ حسن يبدو ان لدي برنامجك القديم على بروتوس حيت يحتوي على 16f877
وايضا جربته وكان لا يرسل داتا الى الكمبيوتر؟؟؟؟ ارجو فحصه!!
ايضا بالنسبه للنقطه التانيه والتالته انا قد شرحت هدا من قبل ارجو مشاهده المشاركه رقم 138
http://www.qariya.info/vb/showthread...148004&page=18


بالتوفيق اخي ولا تنسى تزوديدي بسخه معدله من مشروعك
السلام عليكم
تفضل أخي كريم هذا أخر تحديث للمشروع
http://up.top4top.net/downloadf-top4...5cc61-rar.html
حيث أستخدمت 18f45k22
انا لم أستخدمه من اول مره لان كانت هناك مشاكل وقد ذكرتها في هذا الرابط
http://www.qariya.info/vb/showthread.php?t=150559
وبعد ما حليت مشكله قمت بأستخدامه 18f45k22 لانه فيه أمكانيات كثيره واكثر من 16f877a وفي نفس الوقت ارخص من 16f877a

ملاحظه // لاتزال هناك مشكله في سي شارب المرفق معه وهو من مفروض
1- حفظ نصوص الذي يضعها مستخدم
2- يقرأ من البيك ويحدث معلوماته حول اي حمل في حاله ON واي حمل في حاله OFF

ارجو اضافه أفكار جديده لتطوير لان غايه موضوع هو البدء بأفكار لتطوير مشروع المنزل الذكي أبتداءا من البرمجه (( مايكروسي وسي شارب )) وكذلك هاردوير ورسم مخطط
أتمنى ان يكون مشروع جماعي بالكامل وهذه الاشياء الذي أضفتها هو لفتح باب مشاركه بأفكار التي تزيد من قوه مشروع ليجمع أكثر مايمكن من أفكار
هو حتى وان لم نستفد من مشروع على أقل نحاول دمج أفكار وظائف كثيره ليقوم بها مايكروكنترولر
وفي حاله وجو شيئ غامض ارجو أخباري به لغرض توضيحه

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


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 27-07-2014 الساعة 05:52 PM

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,673
نشاط [ حسن هادي محمود ]
قوة السمعة:
قديم 27-07-2014, 05:58 PM المشاركة 32   
sun


اخ حسن يبدو ان لدي برنامجك القديم على بروتوس حيت يحتوي على 16f877
وايضا جربته وكان لا يرسل داتا الى الكمبيوتر؟؟؟؟ ارجو فحصه!!
ايضا بالنسبه للنقطه التانيه والتالته انا قد شرحت هدا من قبل ارجو مشاهده المشاركه رقم 138
http://www.qariya.info/vb/showthread...148004&page=18


بالتوفيق اخي ولا تنسى تزوديدي بسخه معدله من مشروعك
على فكره أخي العزيز انا اذا استخدمت richTextBox فأنه فعلا أجد برنامج #C يقراها ويضعها في مربع نص ولكن لايحدث تنفيذ لاوامر
جل ما اريده هو تطوير مشروع لجعله يحفظ النصوص ويحدث نفسه بمجرد أستلام البيانات صراحه انا أجده يقرأ ويستلم البيانات ولكن لاينفذ مامبرمج عليه

للعلم انا وضعت كود بسيط وهو طبعا لغرض فقط انجاح العمليه القراءه وبعدها اريده يتطور مشروع بمجرد فتح البورت يقوم بعمليه قراءه مستمر من البيك في حاله أكو بيانات ينفذ عكسها يظل الوضع على ماهو عليه

وهذه صوره توضح ان برنامج يستقبل البيانات بأستمرار ولكن تبقى مشكله تنفيذ


وقمت أخي بعمل كود بسيط اخر للتأكد

كود:
 private void checkload_sw_Click(object sender, EventArgs e)
                  {
                      
                     if (!sp.IsOpen) sp.Open();

                     for (cont = 0; cont < 5; cont++) sp.Write("S987T");// code 987 for reading information about loads
                      cont = 0;
                      sp.DataReceived += new SerialDataReceivedEventHandler(sp_DataReceived);
                     
                  }
          
       string  w;
       void sp_DataReceived(object sender, SerialDataReceivedEventArgs e)
       {
           //throw new NotImplementedException();
         w  =sp.ReadLine();
         if (w != string.Empty)

            {
                MessageBox.Show(w);
              if (w =="HASAN") Load1.BackColor = Color.Lime;
                else Load1.BackColor = Color.Red;
                Invoke(new Action(() => richTextBox1.AppendText(w)));
حيث عرضت بيانات مخزونه في W حتى أتأكد وقلته له اذا كانت كلمه هي HASAN خلي لون خلفي Lime وعكسه خلي Red
وكانت هذه هي النتيجه
فما هو تفسيرك لهذه حاله يعني هل مشكله في علامه " " مثلا والا لا أعرف مشكله ولكم التعليق


وشكرا جزيلا لك الاهتمام
تحياتي


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 27-07-2014 الساعة 06:51 PM السبب: أضافه معلومات جديده وصور


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