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

   

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 25-03-2012, 12:34 AM المشاركة 465   
افتراضي



ما افكر فيه هو جمع الازمنه الثمانية التي وضعتها انت في الكود في زمن واحد .
بهذا الشكل
كود:
delay_us(8);
ويوضع في نهاية الجمل ...
هكذا ستحصل على زمن مقارب ل ( 8 مايكرو ) لانه سينفذ عبارة ديلي واحدة ..
بينما لو فرقت الازمان فسيكون الزمن اكثر من 8 مايكرو لانه سيضاف عليه زمن تنفيذ العبارة delay في كل مرة ..

اعلانات

الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 25-03-2012, 12:39 AM المشاركة 466   
افتراضي


تم اعادة تنزيل نفس الفيديو ولكن بحجم اقل (غيرت الفورمات )

http://www.mediafire.com/?iw3xuc31ot920ui

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

الصورة الرمزية حيدر علاج حسن
حيدر علاج حسن
:: مشرف منتدى الهندسة الكهربائية ::
تاريخ التسجيل: Mar 2005
الدولة: IRAQ
المشاركات: 9,848
نشاط [ حيدر علاج حسن ]
قوة السمعة:
قديم 25-03-2012, 12:43 AM المشاركة 467   
افتراضي


ياجماعه الخير

طول الشعاع عندي هو 20.5 سم
فطول المسار هو 129 تقريباا
يعني حوالي 258 عمود
عدد لفات الموتور هي 26 لفه فى الثانيه
بمعني
احسبوها واعطوني اول كود كامل لكي اجربه

مع ان الزمن الذي ظهر فى الفيديو هو 70 ميكروثانيه و16 مليثانيه


فما هو الجواب النهائي
كم عدد الاعمدة الشغالة ... او كم عدد البيانات في المصفوفة ؟


الصورة الرمزية أبو معاذ 2010
أبو معاذ 2010
:: مشرف قسم الإنتاج الزراعي والحيواني والطاقة البديلة ::
تاريخ التسجيل: Feb 2010
المشاركات: 2,039
نشاط [ أبو معاذ 2010 ]
قوة السمعة:
قديم 25-03-2012, 12:44 AM المشاركة 468   
افتراضي


كنت منشغلا باخر رد ولم ارى ردك الاخير ...
اخواني هذه الجمل لادخال البيانات الى المسجلات ...
اما عملية الاخراج ستكون في نفس اللحظة لكل الليدات في العمود الواحد ...
و هدا ما نريده اخي حيدر ، سنفرض على المتحكم أن يمر عبر دالة col حتى بالنسبة للأعمدة الفارغة ، طبعا سوف لن يجد قيما بالمصفوفة و سيعطيها أصفارا و لكنه سيستغرق نفس الوقت الدي يستغرقه و هو يخرج قيما موجودة بالمصفوفة .

الهدف من هدا التعديل هو التغلب على إشكالية ان الزمن يجب ان نغيره كلما غيرنا عدد الأعمدة النشطة .


الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 25-03-2012, 12:48 AM المشاركة 469   
افتراضي


كم عدد الاعمدة الشغالة ... او كم عدد البيانات في المصفوفة ؟
عدد الاعمده الشغاله 80 عمود


الصورة الرمزية أبو معاذ 2010
أبو معاذ 2010
:: مشرف قسم الإنتاج الزراعي والحيواني والطاقة البديلة ::
تاريخ التسجيل: Feb 2010
المشاركات: 2,039
نشاط [ أبو معاذ 2010 ]
قوة السمعة:
قديم 25-03-2012, 12:59 AM المشاركة 470   
افتراضي


جرب هدا الكود أخي عبد السلام ، مع مراعاة التعديل في الأزمنة ، و قيم المصفوفة كما هي :

كود:
char x=0,i=0,j=0;
void col(char x){
portb.f1=x.f0;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f1;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f2;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f3;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f4;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f5;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f6;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f7;portb.f0=0;portb.f0=1; delay_us(1) ;
}

void main(){
trisb=0;portb=0;
loop:
for(i=0;i<258;i++){
for(j=0;j<6;j++)
col(data[i*6+j]);
portb.f2=0;portb.f2=1;
delay_US(100);}
goto loop;
}


الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 25-03-2012, 01:04 AM المشاركة 471   
افتراضي


جرب هدا الكود أخي عبد السلام ، مع مراعاة التعديل في الأزمنة ، و قيم المصفوفة كما هي :

كود:
char x=0,i=0,j=0;
void col(char x){
portb.f1=x.f0;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f1;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f2;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f3;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f4;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f5;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f6;portb.f0=0;portb.f0=1; delay_us(1) ;
portb.f1=x.f7;portb.f0=0;portb.f0=1; delay_us(1) ;
}

void main(){
trisb=0;portb=0;
loop:
for(i=0;i<258;i++){
for(j=0;j<6;j++)
col(data[i*6+j]);
portb.f2=0;portb.f2=1;
delay_US(100);}
goto loop;
}

ولكن اخي حيدر هل اجعل قيمة المصفوفه كما هي يعني 80
واما بالنسبه الى الزمن فانت وضعت زمن واحد فقط وهو 100 us

اريد القليل من التوضيح فقط


الصورة الرمزية lovevb6
lovevb6
:: عضو فضي ::
تاريخ التسجيل: May 2010
الدولة: LIBYA-BENGHAZY
المشاركات: 1,473
نشاط [ lovevb6 ]
قوة السمعة:
قديم 25-03-2012, 01:17 AM المشاركة 472   
افتراضي


ممكن تعطوني رايكم فى هذا الموتور




التعديل الأخير تم بواسطة : lovevb6 بتاريخ 25-03-2012 الساعة 01:20 AM


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