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

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

الصورة الرمزية 5282
5282
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2008
الدولة: مصر- الاسكندرية
المشاركات: 1,630
نشاط [ 5282 ]
قوة السمعة:111
قديم 24-12-2009, 08:15 AM المشاركة 1   
افتراضي مساعدة فى mikrobasic Twitter FaceBook Google+



بسم الله الرحمن الرحيم

عندى مشكلة فى استخدام هذة الخاصية ويعطنى خطأ .
gosub label_name
...
label_name:
...
return



حيث انى اريد ان اضع مجموعة اكواد داخل برنامج فرعى (بدل من تكرارة عشرات المرات) لا يتم تنفيذة الا عندما انادية ويرجع مرة اخرى للكود الاصلى فى المكان الذى نادى منة .
اتمنى ان يكون السؤال واضح

وشكرااااااااا

اعلانات

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


هذه المشكلة مشكلة syntax أى هجاء وهو يختلف من لغة بيزك لأخرى حسب أى محرر تستخدم
راجع Help File الخاص بالمحرر الذى تستخدمه و إن لم يكن هناك خطأ فربما تكون وضعت Lable_Name خارج نطاق الإنتقال للأمر GoSub

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

الصورة الرمزية 5282
5282
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2008
الدولة: مصر- الاسكندرية
المشاركات: 1,630
نشاط [ 5282 ]
قوة السمعة:111
قديم 24-12-2009, 04:33 PM المشاركة 3   
افتراضي


هذه المشكلة مشكلة syntax أى هجاء وهو يختلف من لغة بيزك لأخرى حسب أى محرر تستخدم
راجع Help File الخاص بالمحرر الذى تستخدمه و إن لم يكن هناك خطأ فربما تكون وضعت Lable_Name خارج نطاق الإنتقال للأمر GoSub
اشكرك استاذ ماجد عباس على الرد الجميل

للأسف جربت جميع الاحتمالات ونفس النتيجة خطأ!


geniusse01
:: عضو ذهبي ::
تاريخ التسجيل: Apr 2008
الدولة: Jordan - Amman
المشاركات: 1,139
نشاط [ geniusse01 ]
قوة السمعة:105
قديم 24-12-2009, 05:14 PM المشاركة 4   
افتراضي


اشكرك استاذ ماجد عباس على الرد الجميل

للأسف جربت جميع الاحتمالات ونفس النتيجة خطأ!

السلام عليكم

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

واخر دعوانا ان الحمدلله رب العالمين ... وصلى الله على سيدنا محمد وعلى اله وصحبه وسلم ..


crom
:: مهندس متواجد ::
تاريخ التسجيل: Jul 2007
الدولة: بلدى
المشاركات: 130
نشاط [ crom ]
قوة السمعة:0
قديم 24-12-2009, 05:59 PM المشاركة 5   
افتراضي


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

main:
TRISA = 0
TRISB = 255

PORTB = 0
gosub label_name
goto main

label_name:
Delay_ms(500)
PORTB = 1

return
end.
اتمنا انى اكون فهمت قصدك


الصورة الرمزية 5282
5282
:: عضو ذهبي ::
تاريخ التسجيل: Jun 2008
الدولة: مصر- الاسكندرية
المشاركات: 1,630
نشاط [ 5282 ]
قوة السمعة:111
قديم 24-12-2009, 07:21 PM المشاركة 6   
Cool


اشكركم جدااااااااااا على هذا الكلام الجميل واشكر الاستاذ crom على وضعة للمثال ولكنى جربت مثالك وللأسف اعطانى خطأ






crom
:: مهندس متواجد ::
تاريخ التسجيل: Jul 2007
الدولة: بلدى
المشاركات: 130
نشاط [ crom ]
قوة السمعة:0
قديم 24-12-2009, 08:04 PM المشاركة 7   
افتراضي


نفس الشى البرنامج اشتغل عندى كما كتبتة انت الفرق الوحيد انى استخدم برنامج ( mikroBasic PRO for PIC ) وانت تستخدم
( mikroBasic compiler for AVR ) اذا ماكن فية فرق فى الكمبايلر . اكيد المشكلة فى البرنامج .


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


اخى
اقرأ الخطأ وقم بتحليله
أول سطر يقول
Exit can not be called from main block
وهذا يعنى انك قمت بوضغ عنوان Lable باسم main كما نعتاد على تعريف الجزء الأساسى من البرنامج ولكن الكومبايلر يتعامل مع main كما تتعامل البرامج الكبيرة مثل قيجيوال بيزك أنه block له خصائص منفردة و يجب انهاؤه والدليل باقى السطر حيث السطر الثانى
syntax Error : Expected 'End' but '.' Found
حيث يبحث عن نهاية main Block بكلمة end
وايضا السطر التالى
جرب تغيير كلمة main و إن لم يعمل اقرأ كما قلت لك help file و اعرف كيف يعمل هذا الكومبايلر

إضافة رد

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

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

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


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

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