با عرض سلام و خسته نباشيد.من يك ماژول em18رو به يك ميكرو avr وصل كنيم و يوزارتشو فعال كردم
الان يك تگ رو خل حافظه تعريف كردم و گفتم اگر تگي كه به ماژول وصل ميكنن برابر بود با ين تگي كه داخل حافظه است پيغام اوكي رو چاپ بكن در غير اينصورت پيغام no.تا وقتي تگ هاي كه تعريف نشده رو ميزنم درست عمل ميكنه ولي وقتي تگي كه تعريف كردم رو ميزنم از انجا به بعد براي تمام تگ ها اوكي ميزنه و وارد حلقه وايلي كه براي مقايسه گذاشتم نميشه.ممنون ميشم راهنمايم كنيد
.

مهمان عزیز شما حق دیدن لینک ها را ندارید

عضویت

<mega32a.h>

مهمان عزیز شما حق دیدن لینک ها را ندارید

عضویت

<alcd.h>

مهمان عزیز شما حق دیدن لینک ها را ندارید

عضویت

<string.h>

مهمان عزیز شما حق دیدن لینک ها را ندارید

عضویت

<delay.h>
char tag1[12]={'0','0','0','0','9','2','1','A','1','D','0','0'} ;





void main(void)
{
int i;
int j=0;
char input[12];
int match;

lcd_init(16);

مهمان عزیز شما حق دیدن لینک ها را ندارید

عضویت

("sei")

while (1)
{
for(i=0;i<12;i++)
{
input[i]=getchar();

}
for(i=0;i<12;i++)
{
lcd_gotoxy(i,0);
lcd_putchar(input[i]);

}
for(i=0;i<12;i++)
{
lcd_gotoxy(i,1);
lcd_putchar(tag1[i]);

}
delay_ms(1000);
lcd_clear();

match=1;

while(match==1 && j<12)
{
if(input[j] == tag1[j])
{
match=1;
j++;
}
else
{
match=0;
}
}

if(match==1)
{
lcd_gotoxy(0,0);
lcd_puts("ok");
delay_ms(1000);
lcd_clear();
}
else
{
lcd_gotoxy(0,0);
lcd_puts("no");
delay_ms(1000);
lcd_clear();
}

}
}