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

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

جرجس جرجس
:: مهندس ::
تاريخ التسجيل: Apr 2009
المشاركات: 17
نشاط [ جرجس جرجس ]
قوة السمعة:0
قديم 25-04-2009, 11:47 AM المشاركة 1   
افتراضي المساعدة في برمجة البك باستخدام ميكروسى Twitter FaceBook Google+



السلام عليكم جميعا
في البداية احب ان اشكركم علي هذا المجهود الرئع و روح التعاون الطيبة هذه وعلي الرغم من ان هذه المرة الاولي التي ارسل لكم فيها الا اني متابع جيد لكم و قد تعلمت منكم الكثير
حاولت كتابة برنامج للحصول علي نبضات من البك لتشغيل الموسفتات المستخدمة في الدائرة في اوقات معينة ولفترات محدده وبحيث يكون تردد النبضات 50 هرتز
void main()
{
TRISB=0;
LOOP:
PORTB=0;
delay_ms(.3355);
PORTB=0B00100110;
delay_ms(2.717);
PORTB=0B00100101;
delay_ms(3.889);
PORTB=0B00100110;
delay_ms(2.667);
PORTB=0;
delay_ms(0.777);
PORTB=0B00011010;
delay_ms(2.667);
PORTB=0B00011001;
delay_ms(3.889);
PORTB=0B00011010;
delay_ms(2.667);
PORTB=0;
delay_ms(0.388);
goto loop;
}

ولكن كانت تظهر لي هذه الاخطاء وانا لااعرف قصده و كيف اعدلها دون تغيير الاوقات المكتوبة
Internal error line 8
';'expected but delay_ms is found line7
Integral constant expected line6
Syntax error :expected ')'but found ';' line7

ارجو المساعدة وشكرا

اعلانات

mizort1989
:: مهندس متواجد ::
تاريخ التسجيل: Mar 2009
المشاركات: 70
نشاط [ mizort1989 ]
قوة السمعة:0
قديم 26-04-2009, 02:43 PM المشاركة 2   
افتراضي


السلام عليكم جميعا
في البداية احب ان اشكركم علي هذا المجهود الرئع و روح التعاون الطيبة هذه وعلي الرغم من ان هذه المرة الاولي التي ارسل لكم فيها الا اني متابع جيد لكم و قد تعلمت منكم الكثير
حاولت كتابة برنامج للحصول علي نبضات من البك لتشغيل الموسفتات المستخدمة في الدائرة في اوقات معينة ولفترات محدده وبحيث يكون تردد النبضات 50 هرتز
void main()
{
TRISB=0;
LOOP:
PORTB=0;
delay_ms(.3355);
PORTB=0B00100110;
delay_ms(2.717);
PORTB=0B00100101;
delay_ms(3.889);
PORTB=0B00100110;
delay_ms(2.667);
PORTB=0;
delay_ms(0.777);
PORTB=0B00011010;
delay_ms(2.667);
PORTB=0B00011001;
delay_ms(3.889);
PORTB=0B00011010;
delay_ms(2.667);
PORTB=0;
delay_ms(0.388);
goto loop;
}

ولكن كانت تظهر لي هذه الاخطاء وانا لااعرف قصده و كيف اعدلها دون تغيير الاوقات المكتوبة
Internal error line 8
';'expected but delay_ms is found line7
Integral constant expected line6
Syntax error :expected ')'but found ';' line7

ارجو المساعدة وشكرا
اخي من معلوماتي ان امر الdelay لا يأخذ إلا integer فا مينفعش اكتب delay(0.7)

ممكن تجرب امر

delay_us(388)

و كده هيبقي الdelay بالميكرو سكند يعني تضرب الأرقام الحاليه في 1000

و إن شاء الله يشتغل و الله اعلم

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

حمودي1010
:: مهندس جيد ::
تاريخ التسجيل: Apr 2007
المشاركات: 237
نشاط [ حمودي1010 ]
قوة السمعة:0
قديم 27-04-2009, 12:26 PM المشاركة 3   
ha


السلام عليكم
برنامجك اخي العزيز خاطئ لان تعليمة delay-ms
لايكون فيها الفاصلة
اذا كنت ترغب بوضع اعداد بالفاصلة فاستعمل تعليمة delay_us وهي تؤدي نفس الدور مع التعليمة delay_ms

0.3355 هذا الرقم بالميلي سكند ينبغي عليك تحويله الي الميكرو سكند
ولدينا 1ميلي سكند يقابله 1000000 ميكروسكند
وعندها تكون تعليمتك delay_ms(0.3355)
هي نفسها delay_us(335500)
والسلام عليكم


إضافة رد

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

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

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


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

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