اطلاعیه

Collapse
No announcement yet.

برنامه mega16

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    برنامه mega16

    سلام به همگی :
    دوستان لظف کنند یک نگاه به این برنامه بندازن ببینن چرا تو پروتیوس کار نمیکنه از توی کد ویژن کامپایل میشه بدون خطا ولی تو پروتیوس جواب نمیده .ممنون
    while (1)
    { q:

    if (PINA.0) goto price;


    if (PINA.1) goto price;

    if (PINA.2) goto price ;


    if (PINA.3) goto price;

    goto q;
    price:
    w=PINA;

    if(r==0B00000001)goto price1;
    if(r==0B00000010)goto price2;
    if(r==0B00000011)goto price3;
    if(r==0B00000100)goto price4;

    if(r==0B00001100)goto show;

    \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
    price1:
    d=0x03;
    delay_ms(500);
    q1:

    if (PINA.0) goto price01;

    if (PINA.1) goto price01;

    if (PINA.2) goto price01;

    if (PINA.3) goto price01;


    goto q1;

    price01:

    a1[d] = PINA;




    PORTD=d;


    PORTB=a1[d];
    d--;
    delay_ms(1000);
    // if(a1[d]==0x0B)goto price;
    if (d==0x00) goto price;
    else goto q1;
    \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
    price2:
    d=0x07;
    delay_ms(500);
    q2:
    if (PINA.0) goto price02;

    if (PINA.1) goto price02;

    if (PINA.2) goto price2;

    if (PINA.3) goto price2;
    else goto q2;
    price02:

    A = PINA;

    A<< 4;
    a2[d]=A;
    PORTD=d;

    PORTB=a2[d];
    d--;
    delay_ms(1000);
    //if(a2[d]==0x0B)goto price;

    if (d==0x04) goto price;
    else goto q2;
    \\\\\\\\\\\\\\

    price3:
    d=0x0B;
    delay_ms(500);
    q3:
    if (PINA.0) goto price03;

    if (PINA.1) goto price03;

    if (PINA.2) goto price03;

    if (PINA.3) goto price03;
    else goto q3;
    price03:

    a3[d] = PINA;


    PORTD=d;

    PORTC=a3[d];
    d--;
    delay_ms(1000);
    // if(a2[d]==0x0B)goto price;

    if (d==0x08) goto price;
    else goto q3;


    \\\\\\\\\\\\\\\\\\


    price4:
    d=0X0F;
    delay_ms(500);
    q4:
    if (PINA.0)) goto price04;

    if (PINA.1) goto price04;

    if ((PINA.2)) goto price4;

    if (PINA.3) goto price4;
    else goto q4;
    price04:

    A = PINA;

    A << 4;

    PORTD=d;
    a4[d]=A;
    PORTC=a4[d];
    d--;
    delay_ms(1000);
    // if(a2[d]==0x0B)goto price;

    if (d==0x0C) goto price;
    else goto q4;
    \\\\\\\\\\\\\\
    show:
    B[0]=a1[0];
    B[1]=a1[1];
    B[2]=a1[2];
    B[3]=a1[3];
    B[4]=a2[0];
    B[5]=a2[1];
    B[6]=a2[2];
    B[7]=a2[3];
    B[8]=a3[0];
    B[9]=a3[1];
    B[10]=a3[2];
    B[11]=a3[3];
    B[12]=a4[0];
    B[13]=a4[1];
    B[14]=a4[2];
    B[15]=a4[3];
    while(1)
    {
    for(i=0;i<8;i++){
    PORTD=i;
    PORTB=B[i];
    delay_ms(4);

    }


    if(PINA.0) break;
    if(PINA.1) break;
    if(PINA.2) break;
    if(PINA.3) break;
    for(j=8;j<16;j++){

    PORTD=j;
    PORTC=B[j];
    delay_ms(4);


    }


    if(PINA.0) break;
    if(PINA.1) break;
    if(PINA.2) break;
    if(PINA.3) break;
    };

    goto price;





    // Place your code here

    }
    }

    #2
    پاسخ : برنامه mega16

    سلام دوست عزیز

    برنامه چکار میکنه؟

    قسمت if همگی مشکل دارد ، رجیستر DDR در چه حالتی باید ، دستور IF را انجام دهد ؟؟ 0 یا 1 ؟؟؟
    خداوندا
    از بچگی به من آموختندهمه را دوست بدار حال که بزرگ شده ام و کسی را دوست می*دارم می گویند:
    فراموشش کن
    دکتر علی شریعتی

    دیدگاه


      #3
      پاسخ : برنامه mega16

      سلام
      این برنامه تابلو نمایش قیمت صرافی هست که 4 تا قیمت داره با ریموت کنترل میشه ddr در حالت صفر دستور ایف رو اجرا میکنه . یعنی پورت a ورود ی هست .مشکل if چیه ؟ ممنون سوال دیگه ای بود بپرسید ممنون که جواب میدی

      دیدگاه

      لطفا صبر کنید...
      X