اطلاعیه

Collapse
No announcement yet.

سوال درباره ذخیره سازی آرایه ها در sram

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

    سوال درباره ذخیره سازی آرایه ها در sram

    من از کیپد سه عدد را میگیرم و می خوام مقایسه کنم که اگر عدد اول 1 بود و همینطور عدد دوم 2 بود و همینطور عدد سوم 3 بود پیغام صحیح را بدهد در غیر اینصورت پیغام نادرست را بدهد
    تابع های کیپد من این است:

    [code=c]

    unsigned char scan[4]={0XFE,0XFD,0XFB,0XF7};
    unsigned char arrkey[16]={
    7,8,9,20,
    4,5,6,30,
    1,2,3,40,
    '*',0,'#',50};
    unsigned char keypad(){
    unsigned char r,b;
    while(1){
    for (r=0; r<4; r++){
    b=4;
    PORTC=scan[r];
    if(c1==0) b=0;
    if(c2==0) b=1;
    if(c3==0) b=2;
    if(c4==0) b=3;

    if (!(b==4)){
    key=arrkey[(r*4)+b];
    while(c1==0);
    while(c2==0);
    while(c3==0);
    while(c4==0);
    delay_ms(50);
    return key;
    }
    }
    }
    }
    [/code]

    من باید چگونه برنامه این را بنویسم؟ :cry2:

    #2
    پاسخ : سوال درباره ذخیره سازی آرایه ها در sram

    الان برنامه کی پد درست کار میکنه یا نه؟
    آیا جهالت نیست که آدمی ساعات شیرین امروز را فدای روزهای آینده کند؟

    دیدگاه


      #3
      پاسخ : سوال درباره ذخیره سازی آرایه ها در sram

      نوشته اصلی توسط pooyan-shafiei
      الان برنامه کی پد درست کار میکنه یا نه؟
      بله کیپد درست کار می کنه

      دیدگاه


        #4
        پاسخ : سوال درباره ذخیره سازی آرایه ها در sram

        کد:
        if(keypad() == 1)
        if(keypad() == 2)
        if(keypad() == 3)
        print("success")
        گفت که دیوانه نهی لایق این خانه نهی

        دیدگاه


          #5
          پاسخ : سوال درباره ذخیره سازی آرایه ها در sram

          نوشته اصلی توسط sadeghtajik
          بله کیپد درست کار می کنه
          برنامه کیپد را طوری تغییر بدید که اگه دکمه ای زده نشده بود عدد 44 را برگردونه.
          این کد را یه امتحان بکنید
          کد:
          unsigned char a[3],i=0;
          unsigned char vorudi=0;
          unsigned char ramz=123;
          unsigned char buffer=0;
          unsigned char scan[4]={0XFE,0XFD,0XFB,0XF7};
          unsigned char arrkey[16]={
           7,8,9,20,
           4,5,6,30,
           1,2,3,40,
           '*',0,'#',50};
          unsigned char keypad(){
           unsigned char r,b;
             while(1){
              for (r=0; r<4; r++){
               b=4;
               PORTC=scan[r];
               if(c1==0) b=0;
               if(c2==0) b=1;
               if(c3==0) b=2;
               if(c4==0) b=3;
               
               if (!(b==4)){
                key=arrkey[(r*4)+b];
                while(c1==0);
                while(c2==0);
                while(c3==0);
                while(c4==0);
                delay_ms(50);
                return key;
               }
              }
             }
          while(1)
          {
          	buffer=keypad();
          	if(buffer!=44)
          	{
          		a[i]=buffer;
          		i++;
          		if(i==2)
          		{
          			i=0;
          			vorudi=a[0]*100+a[1]*10+a[2];
          			if(ramz==vorudi)
          				lcd_putsf("dorost");
          			else
          				lcd_putsf("ghalat");
          		}
          	}
          }
          آیا جهالت نیست که آدمی ساعات شیرین امروز را فدای روزهای آینده کند؟

          دیدگاه


            #6
            پاسخ : سوال درباره ذخیره سازی آرایه ها در sram

            سلام اقای sadeghtajik
            من جواب سوالتون با برنامه اصلاح شده رو براتون داخل فروم قبلی که ایجاد کردین گذاشتم چرا بحث رو اون جا ادامه نمیدید.
            http://www.eca.ir/forum2/index.php?topic=105450.0

            دیدگاه

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