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

   

ahmad abdullah
:: مهندس متميز ::
تاريخ التسجيل: Jun 2010
الدولة: لبنان-فلسطين
المشاركات: 584
نشاط [ ahmad abdullah ]
قوة السمعة:
قديم 16-09-2011, 08:07 PM المشاركة 9   
افتراضي



اقصد بأننا نستطيع فقط ان نعمل مقاطعة واحدة ، و لا يمكننا عمل العديد من المهام في آن واحد ...
بإختصار اريد ان اقوم بعمل العديد من المهام في آن واحد اي بالتوازي ، اي لا اريد ان تبدأ المهمة الاولى فقط بعد انتهاء المهمة الثانية ، اريد ان يعملان بالتوازي ... ارجو ان يكون كلامي واضح

اعلانات

moode3
:: مهندس ::
تاريخ التسجيل: Sep 2011
المشاركات: 48
نشاط [ moode3 ]
قوة السمعة:
قديم 16-09-2011, 08:16 PM المشاركة 10   
افتراضي


اقصد بأننا نستطيع فقط ان نعمل مقاطعة واحدة ، و لا يمكننا عمل العديد من المهام في آن واحد ...
بإختصار اريد ان اقوم بعمل العديد من المهام في آن واحد اي بالتوازي ، اي لا اريد ان تبدأ المهمة الاولى فقط بعد انتهاء المهمة الثانية ، اريد ان يعملان بالتوازي ... ارجو ان يكون كلامي واضح
يالغالي مالك إلا timer 0
فهمت ايش تقصد

حاول تتعلم timer 0 في c

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

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

Microchip2012
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2010
المشاركات: 120
نشاط [ Microchip2012 ]
قوة السمعة:
قديم 16-09-2011, 08:49 PM المشاركة 11   
افتراضي


بما أنك تريدها بالميلي ثانية وليس بالميكرو ثانية يمكنك ذالك بدون المؤقتات
تفضل هذا أبسط مثال يقوم بإنتظار لمدة 20 ثانية ويقم بإضائة LED محدد
بدون توقف باقي البرنامج
كود:
int i; void main() { i=20000; portb.b0=1; while(1){ if(i>0){ i--; }else{ portb.b0=0; } if (porta.b1==1) { portb.b2=1; delay_ms(2000); } delay_ms(1); } }


التعديل الأخير تم بواسطة : Microchip2012 بتاريخ 16-09-2011 الساعة 08:55 PM

ahmad abdullah
:: مهندس متميز ::
تاريخ التسجيل: Jun 2010
الدولة: لبنان-فلسطين
المشاركات: 584
نشاط [ ahmad abdullah ]
قوة السمعة:
قديم 16-09-2011, 09:43 PM المشاركة 12   
افتراضي


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


Microchip2012
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2010
المشاركات: 120
نشاط [ Microchip2012 ]
قوة السمعة:
قديم 16-09-2011, 10:23 PM المشاركة 13   
افتراضي


أخي ahmad abdullah
أتمنى أن يكون الكود قد يكون أدى الغرض
هل حلت المشكلة أم تحتاج مساعدة إضافية


ahmad abdullah
:: مهندس متميز ::
تاريخ التسجيل: Jun 2010
الدولة: لبنان-فلسطين
المشاركات: 584
نشاط [ ahmad abdullah ]
قوة السمعة:
قديم 17-09-2011, 12:01 AM المشاركة 14   
افتراضي


اخي المشكلة ليست كما تظن ، صراحة فكرة جميلة ... لكن انا اعطيكم مثال فقط ... و ما قدمته لنا جدا جميل لكن لا اعتقد بأنه عملي ... قد اكون مخطئ ، و قد تكون انت لم تفهمني بشكل جيد ... سأتبع رأي اخونا الذي نصحني بالتايمر زيرو ... و اخي مايكروشيب فكرتك بجد رائعة ، لكن برأيك هل تنفع مع العديد من المهام ؟ ... بارك الله فيك ... اتعبتك معي


Microchip2012
:: مهندس متواجد ::
تاريخ التسجيل: Jan 2010
المشاركات: 120
نشاط [ Microchip2012 ]
قوة السمعة:
قديم 17-09-2011, 12:18 AM المشاركة 15   
افتراضي


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


robota
:: عضو ذهبي ::
تاريخ التسجيل: Jul 2009
الدولة: الخرطوم_السودان
المشاركات: 895
نشاط [ robota ]
قوة السمعة:
قديم 17-09-2011, 12:32 AM المشاركة 16   
افتراضي


اقصد بأننا نستطيع فقط ان نعمل مقاطعة واحدة ، و لا يمكننا عمل العديد من المهام في آن واحد ...
بإختصار اريد ان اقوم بعمل العديد من المهام في آن واحد اي بالتوازي ، اي لا اريد ان تبدأ المهمة الاولى فقط بعد انتهاء المهمة الثانية ، اريد ان يعملان بالتوازي ... ارجو ان يكون كلامي واضح
ما تبحث عنه اخى الكريم يسمى
RTOS
ابحث عنه ستجد معلومات شافية وكافية .
وهو يعتمد فى الاساس على الهاردوير والسوفت وير , لابد ان يكون الهاردوير ذو مواصفات عالية وان يكون للسوفت مكتبة داعمة لل RTOS (بامكانك ان تكتب واحدة).

ربما تحتاج لهذه المعلومة فى المستقبل اما الان فمعظم انواع البيك (المنتشرة بيننا :8بيت) ليست بيئة مثالية لتطبيقات ال RTOS , اضف الى هذا ان الميكروسى لا يملك مكتبة لل RTOS على الاقل حتى الان.

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

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

بالتوفيق



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