نمایش نتایج: از شماره 1 تا 2 , از مجموع 2

موضوع: لطفا اساتید گرامی به این کد یه نگاهی بندازید و بگید دقیقا چی کار می کنه بی نهایت ممنون

  1. #1
    کاربر اخراج شده
    تاریخ عضویت
    Sep 2012
    نوشته ها
    42
    تشکر تشکر کرده 
    5
    تشکر تشکر شده 
    20
    تشکر شده در
    16 پست

    پیش فرض لطفا اساتید گرامی به این کد یه نگاهی بندازید و بگید دقیقا چی کار می کنه بی نهایت ممنون

    این کد در مورد تابلو روان هست که می خوام به زبان ساده و در چند خط عزیزان لطف کنن بگن دقیقا چی کار می کنه
    کد:
     #include <mega16.h>
    #include <delay.h> 
    #include <math.h>  
    flash unsigned char text_micro[]={ 
    0,0,0,0,0,0,0,0,0,0,0,128,224,120,46,39,
    46,120,224,128,63,127,192,192,127,63,0,254,255,51,51,127,
    238,128,0,0,0,120,192,192,220,118,6,0,31,63,48,48,
    60,54,58,156,192,112,48,31,159,192,120,50,50,24,48,50,
    24,48,55,55,53,29,129,129,220,116,60,128,192,120,56,48,55,
    55,53,29,177,177,56,16,48,56,40,56,0,0,0,0,0,0,0,
    0,0,0,0,0,0,0,0,0};
           
    void main(){ 
    signed int loop,refresh,code; 
    PORTA=0x00;
    DDRA=0xFF;
    PORTC=0x00;
    DDRC=0xFF; 
    DDRD=0xFF;
    while(1){
    for(code=108;code>8;code--){   
     for(refresh=0;refresh<8;refresh++){   
      for(loop=0;loop<16;loop++){   
        if(loop<8){
            if(loop==0) PORTC.7=0;
            else if(loop==1) PORTC.6=0;  
            else if(loop==2) PORTC.5=0;
            else if(loop==3) PORTC.4=0;
            else if(loop==4) PORTC.3=0;
            else if(loop==5) PORTC.2=0;
            else if(loop==6) PORTC.1=0;
            else if(loop==7) PORTC.0=0;
        }
        if(loop>7){
            if(loop==8) PORTD.7=0;
            else if(loop==9) PORTD.6=0;  
            else if(loop==10) PORTD.5=0;
            else if(loop==11) PORTD.4=0;
            else if(loop==12) PORTD.3=0;
            else if(loop==13) PORTD.2=0;
            else if(loop==14) PORTD.1=0;
            else if(loop==15) PORTD.0=0;
        }
    PORTA=text_micro[abs(code-loop)];
    delay_us(250);
    PORTA=0X00; 
    PORTC=PORTD=0xFF;
        }    
      }  
    } 
    PORTA=0X00; 
    delay_ms(500); 
    }}
    اولین سوالم این هست که این عبارت چی کار میکنه

    کد:
      flash unsigned char

    سوال بعدیم این هست که چرا حلقه به این صورت نوشته شده

    کد:
      code=108;code>8;code--

    یعنی از 108 چرا شروع میشه
    سوال بعدیم این هست که این

    کد:
      loop=0;loop<16;loop++

    loop چه کار می کنه اینجا
    و نهایتا اینکه این کد چی کار می کنه

    کد:
      PORTA=text_micro[abs(code-loop)];

    بی نهایت ممنونم

  2. # ADS




     

  3. #2
    کاربر اخراج شده
    تاریخ عضویت
    Dec 2012
    نوشته ها
    179
    تشکر تشکر کرده 
    39
    تشکر تشکر شده 
    433
    تشکر شده در
    296 پست

    پیش فرض پاسخ : لطفا اساتید گرامی به این کد یه نگاهی بندازید و بگید دقیقا چی کار می کنه بی نهایت ممنون

    سوال در جای اشتباهی مطرح کردید

    به سایت وب سایت تخصصی برق و الکترونیک ECA بروید تا به سرعت جواب خودتون بگیرید

اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 0
    آخرين نوشته: May 29th, 2016, 16:14
  2. ترتیب زیر منوها
    توسط 666regab در انجمن Wordpress
    پاسخ ها: 6
    آخرين نوشته: January 28th, 2014, 00:35
  3. پشتیبانی سایت شما با شرایط زیر
    توسط msmhost.net در انجمن مباحث دیگر
    پاسخ ها: 1
    آخرين نوشته: August 1st, 2013, 10:34
  4. قالب تیره و زیبای وردپرس
    توسط mom در انجمن Wordpress
    پاسخ ها: 10
    آخرين نوشته: January 4th, 2011, 02:58

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •