تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 2 از 2

نام تاپيک: مشکل در برنامه avr

  1. #1
    در آغاز فعالیت
    تاريخ عضويت
    May 2010
    پست ها
    3

    پيش فرض مشکل در برنامه avr

    باسلام.من یه برنامه دارم و میخواستم اگر ممکنه لطفا یه توضیح کامل برای این برنامه و نحوه عملکردش در هر مرحله رو برام بنویسید.اگر امکانش در این پست نیست در صورت امکان برام میل کنید.ممنون از لطفتون.
    آدرس ایمیل من: [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    متن برنامه:
    #include <mega16.h>
    #include <stdio.h>
    #include <delay.h>
    #asm
    .equ __lcd_port=0x1B ;PORTA
    #endasm
    #include <lcd.h>
    int i,j,x,y,z,key,k,b,a[16]={0xee, 0xed, 0xeb, 0xe7,0xde, 0xdd, 0xdb, 0xd7, 0xbe, 0xbd, 0xbb, 0xb7, 0x7e,0x7d, 0x7b, 0x77};
    char str[20];
    ali();
    hamid();
    void main(void)
    {
    PORTA=0x00;
    DDRA=0xFF;
    PORTB=0xFF;
    DDRB=0x00;
    DDRD=0x0F;
    PORTD=0x00;
    ACSR=0x80;
    SFIOR=0x00;
    lcd_init(16);
    while (1)
    {
    ali();
    //adade dahgan—————————————— —————-
    if(j==1){
    x=b;
    lcd_clear();
    lcd_gotoxy(0,0);
    sprintf(str,"number a= %u",x);
    lcd_puts(str);
    delay_ms(2000);
    }
    //adade yekan——————————————— —————-
    else if(j==2){
    y=b;
    lcd_clear();
    lcd_gotoxy(0,0);
    sprintf(str,"number b= %u",y);
    lcd_puts(str);
    delay_ms(2000);
    j=0;


    }
    };
    }
    //================================================== ==============
    ali(){
    lcd_clear();
    lcd_putsf("press key=");
    delay_ms(90);
    DDRB=0x0f;
    PORTB=0xf0;
    delay_ms(4);
    k=PINB;
    DDRB=0xf0;
    PORTB=0x0f;
    delay_ms(4);
    key=k|PINB;
    for(i=0;i<16;i++){
    if(key==a[i]){
    b=i;
    j++;
    }

    if(key==0xff)ali();
    else if(key==0x77) hamid();
    }

    }
    hamid(){


    lcd_clear();
    lcd_gotoxy(0,0);
    z = x*10+y ;
    sprintf(str,"adade voridi= %u",z);
    lcd_puts(str);
    // sprintf(str,"adade voridi= %u",x*10+y);
    // lcd_puts(str);
    delay_ms(4000);
    while(1)
    {
    PORTD=z;
    z=z>>1;
    delay_ms(50);
    if(z==1)
    delay_ms(4000);
    }
    ali();



    }

  2. #2
    در آغاز فعالیت
    تاريخ عضويت
    May 2010
    پست ها
    3

    پيش فرض

    کسی نمی خواد جواب منو بده؟واسه فردا بهش احتیاج دارم

Thread Information

Users Browsing this Thread

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

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •