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

   

مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 16-11-2016, 03:25 PM المشاركة 497   
sun



السلام عليكم اخي واستاذي العظيم بقي لدينا خطوة واحدة ونصل الي نهاية المشروع بفضل الله وفضلك استاذ مشتاق الله ،
الخطوة الاولي انتهينا منها ،
الخطوة الثانية ، عند بداية ضهور الاحرف يجب ان تتابع طريقها بدون توقف وليس اكتمال الكلمة بعدها تبدا بالتحرك يعني يخرج حرف O ويتابع طريقه ويلحق به حرف R وهكذا ، استاذي بعرف اني عم ثقل عليك تحملني بعدها تره المشروع كم هو رائع ،والله يجزيك الف خير واطال الله في عمرك ياطيب
اولا: اشرح لى الخطوة الثانية بوضوح اكثر
ثانيا: وصل الفيديو به دورة واحدة , حضرتك تقول انه بعد الدورة يتوقف العرض تماما و لا يعود الا بعد 5 دقائق ارجو شرح ما يحدث هل تختفى الحروف تدريجيا ؟

اعلانات

hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 16-11-2016, 04:53 PM المشاركة 498   
افتراضي


السلام عليكم استاذي العظيم ، تكرم عينك ساشرح لك اخي مايحدث في البداية يخرج حرف O وهذا ممتاز يليه مباشرة حرف R وبعده حرف C الي ان يصل الي حرف M وفور خروخ حرف M من حرف السينسور تختفي الكلمة نهائيا يعني فور اكتمال الكلمة تختفي وتضهر بعد حوالي 5 دقائق من بداية السينسور يعني الكلمة لاتتحرك فورا تختفي بخروج حرف M وارجو ان تكون وضحت الصورة ،ودمت بامان الله يا طيب

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

hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 16-11-2016, 04:58 PM المشاركة 499   
افتراضي


اما بخصوص شرح الخطوة الثانية فهي عند خروج الحروف حرف تلو الاخر فيجب ان يتابع الحرف حركته حتي نهاية الدورة فهنا تخرج الكلمة ثم ماتلبث ان تختفي فور اكتمالها وارجو ان اكون وفقت بالشرح ، ودمت بامان الله


مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 16-11-2016, 05:30 PM المشاركة 500   
sun


اما بخصوص شرح الخطوة الثانية فهي عند خروج الحروف حرف تلو الاخر فيجب ان يتابع الحرف حركته حتي نهاية الدورة فهنا تخرج الكلمة ثم ماتلبث ان تختفي فور اكتمالها وارجو ان اكون وفقت بالشرح ، ودمت بامان الله
وضح الامر بفضل الله . الله المستعان


مشتاق الله
:: مهندس متميز ::
تاريخ التسجيل: Oct 2015
المشاركات: 619
نشاط [ مشتاق الله ]
قوة السمعة:
قديم 17-11-2016, 09:38 AM المشاركة 501   
sun


بسم الله الرحمن الرحيم
السلام عليكم و رحمة الله و بركاته

الحمد لله الذى بنعمته تتم الصالحات , الله المستعان ,
جرب و بانتظار الفيديو ان شاء الله
الكود 121 :
كود:
#define numletterBytes 7
void step_Move(char step);
unsigned char i = 0 ,j =0 ,k=0 , n=0, START_flag = 0 , RELOAD_flag = 0 ;
char stepdelay = 0;
unsigned int  numbofturns = 0;

char letter_M[] = {0xfe,0xfe,0x60,0x30,0x60,0xfe,0xfe};
char letter_i[] = {0x00,0x82,0xfe,0xfe,0x82,0x00,0x00};
char letter_c[] = {0x38,0x7c,0xc6,0x82,0x82,0xc6,0x44};
char letter_R[] = {0x82,0xfe,0xfe,0x98,0x9c,0xf6,0x62};
char letter_O[] = {0X38,0X7C,0XC6,0X82,0XC6,0X7C,0X38};
char letter_p[] = {0x82,0xfe,0xfe,0x92,0x90,0xf0,0x60};


void interrup() iv IVT_ADDR_PCINT0 ics ICS_AUTO {
 PCIFR.PCIF0 = 1;
 if ((PINB & 0X02) && (START_flag == 0) ) {START_flag = 1;}
 else if ((PINB & 0X02) && (START_flag == 1) ) {RELOAD_flag = 1;}
}

void step_Move(char step){
char i;
 for (i=0; i< step; i++){
     delay_us(500);        // decrease for more speed  in moving.
 }
}
char *all_letters[] = {letter_m,letter_i,letter_c,letter_r,letter_o} ;
char message[] = "ABCDE";
char divide =0;

void main() {
DDRD = 0XFF;
PORTD = 0;
DDRB = 0XFD;
PORTB = 2;

SREG_I_bit = 1;
PCICR |= 1<<PCIE0;
PCMSK0 |= 1<<PCINT1;
      while(1){
              stepdelay = 0;
                  for(i=(numletterBytes * strlen(message))-1; i>=0; i--){
                     while(1){
                       while(START_flag == 0){ }
                        SREG_I_bit = 1;
                        step_Move(stepdelay);

                          for (k=i ; k<(numletterBytes * strlen(message)); k++){
                             divide = k/numletterBytes;
                             PORTD=all_letters[(message[divide] - 65)][k - divide*numletterBytes];
                            
                             if (RELOAD_flag ==1){SREG_I_bit = 0; break;}/////
                            
                             delay_us(400);
                             if (( !(k - divide)%(numletterBytes-1)) && (k % numletterBytes)){
                             portd = 0;
                             delay_us(1200);}
                          }
                         portd = 0;
                         START_flag = 0;
                         
                         numbofturns++;
                          if (numbofturns == 3 ) {     // decrease for more speed  in writing message .
                                  numbofturns = 0;
                                    if(i==0){stepdelay++;
                                              if (RELOAD_flag ==1){ RELOAD_flag = 0; START_flag = 1;}
                                              continue;
                                     }
                                  break;
                           }
                          if (RELOAD_flag ==1){ RELOAD_flag = 0; START_flag = 1; if(k==0){break;}}
                           
                      }

                  }
          }
 }
للهم صبرك و نصرك
و الله المستعان
ولا حول و لا قوة الا بالله




hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 17-11-2016, 12:42 PM المشاركة 502   
افتراضي


تجربة الكود (121);
السلام عليكم استاذي العظيم ، بارك الله فيك والف الف شكر عالمجهود الرائع وتستحق دكتور برمجة بجدارة ، خرجت الحروف كالمطلوب وانتهت كالمطلوب والحمدلله بقي علينا امر بسيط وهو كيف بامكاني زيادة السرعة وانتبهت الي ملاحظة صغيرة لو تكرمت ، الاحرف CRO يضهرون ملتصقين مع بعض بدون فراغات بينهم بينما الحرفين MI ممتازين وبينهم فراغات هل هاذا بتعديل بتعديل بعض القيم وسارسل لك صورة للتوضيح ، ودمت بامان الله ياطيب


hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 17-11-2016, 01:25 PM المشاركة 503   
افتراضي


وايضا استاذي العظيم تعقيبا علي الكود 121 نسيت اسالك علي نقطة الحروف تذهب بلا رجعة وانتضرت حوالي نصف ساعة ولم ترجع ، والف شكر اخي العزيز وباركك الله ياطيب


hassan.pic
:: مهندس متميز ::
تاريخ التسجيل: Aug 2016
المشاركات: 300
نشاط [ hassan.pic ]
قوة السمعة:
قديم 17-11-2016, 05:27 PM المشاركة 504   
افتراضي


حياك الله اخي واستاذي العزيز ، قمت بزيادة الdelay من 500 ووضعتها 800 فزادت معي السرعة بشكل ممتاز ، واصبحت تعود الكلمة للضهور بعد حوالي 30s. وصار هناك ملاحظة بسيطة في الدورة الاولي تخرج الحروف بشكل رائع حرف تلو الاخر اما في الدورة الثانية وما فوق تخرج الكلمة فجاة بدون ان تخرج حرف حرف وايضا استاذي العزيز هل من طريقة لوضع فراغات بين الحروف.لاني لم اترك قيمة الا وغيرتها وبعرف انك بتكون معصب عليي هههههه اتحملني الله يجزيك الخير. لمسات اخيرة ونخلص ودعواتي الك بطول العمر والعافية ، ودمت بامان الله ياصديقي



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