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

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

mikro.digital
:: مهندس ::
تاريخ التسجيل: Aug 2014
المشاركات: 10
نشاط [ mikro.digital ]
قوة السمعة:0
قديم 17-09-2014, 05:28 PM المشاركة 1   
ha مشكلة فى الحصول على ارقام مضافة الى حرف Twitter FaceBook Google+



L =S120

اريد الحصول على رقم 120 من التعليمة السابقة بدون حرف S

استخدمت isdigit ولكن لم تنجح

اعلانات

الصورة الرمزية حسن هادي محمود
حسن هادي محمود
:: عضو ذهبي ::
تاريخ التسجيل: Sep 2012
الدولة: العراق /البصره
المشاركات: 2,688
نشاط [ حسن هادي محمود ]
قوة السمعة:136
قديم 18-09-2014, 04:41 PM المشاركة 2   
افتراضي


L =S120

اريد الحصول على رقم 120 من التعليمة السابقة بدون حرف S

استخدمت isdigit ولكن لم تنجح
السلام عليكم
هل هذه البيانات تستلم من كمبيوتر اذا كانت كذلك فالامر بسيط تفعل خاصيه الانتربت عن طريق برتوكول uart
وتضع هذا الكود في داله الانتربت
كود:
if(RC1IF_bit==1 )
             {
                    RC1IF_bit = 0;
                     temp=UART1_Read();
                      switch(cont)
                               {
                                case 0: if(temp=='S'){cont=1;cont1=0;}
                                        else  cont=0;

                                        break;
                                case 1: if(temp>='0' && temp<='9')
                                                    {
                                                     data_recive_from_PC[cont1]=temp-'0';
                                                     cont1++;
                                                     if(cont1==3){ cont1=0;cont=0;recive_data=1;}
                                                    }
                                        else { cont1=0;cont=0;}
                                        break;

                                default : cont=0;break;
                               }

              }
حيث اول مايستلم حرف S يصبح متغير cont=1 وبتالي راح يعمل على تخزين الارقام طبعا طالما ترسل بيانات بأسكي كود اذن لكي نحصل على الارقام لازم نطرحها من 48 او نكتبها '0'
وبعدما يصبح عداد بيانات الي أستلمت=3 اذن يصبح متغير recive_data=1 ويمكنك أستخدام هذا متغير في برنامج والارقام خزنت في مصفوفه data_recive_from_PC


التعديل الأخير تم بواسطة : حسن هادي محمود بتاريخ 18-09-2014 الساعة 04:48 PM
اعلانات اضافية ( قم بتسجيل الدخول لاخفائها )
  

mikro.digital
:: مهندس ::
تاريخ التسجيل: Aug 2014
المشاركات: 10
نشاط [ mikro.digital ]
قوة السمعة:0
قديم 19-09-2014, 10:34 PM المشاركة 3   
افتراضي


السلام عليكم
هل هذه البيانات تستلم من كمبيوتر اذا كانت كذلك فالامر بسيط تفعل خاصيه الانتربت عن طريق برتوكول uart
وتضع هذا الكود في داله الانتربت
كود:
if(RC1IF_bit==1 )
             {
                    RC1IF_bit = 0;
                     temp=UART1_Read();
                      switch(cont)
                               {
                                case 0: if(temp=='S'){cont=1;cont1=0;}
                                        else  cont=0;

                                        break;
                                case 1: if(temp>='0' && temp<='9')
                                                    {
                                                     data_recive_from_PC[cont1]=temp-'0';
                                                     cont1++;
                                                     if(cont1==3){ cont1=0;cont=0;recive_data=1;}
                                                    }
                                        else { cont1=0;cont=0;}
                                        break;

                                default : cont=0;break;
                               }

              }
حيث اول مايستلم حرف S يصبح متغير cont=1 وبتالي راح يعمل على تخزين الارقام طبعا طالما ترسل بيانات بأسكي كود اذن لكي نحصل على الارقام لازم نطرحها من 48 او نكتبها '0'
وبعدما يصبح عداد بيانات الي أستلمت=3 اذن يصبح متغير recive_data=1 ويمكنك أستخدام هذا متغير في برنامج والارقام خزنت في مصفوفه data_recive_from_PC
تمام يااخى الفكرة وصلت ربنا يبارك فيك

احصائية الشكر والاعجاب - 1 شكراً, 0 عدم اعجاب, 0 اعجاب
شكراً حسن هادي محمود ( شكر العضو على هذه المشاركة )
إضافة رد

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

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

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


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

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