Selamlar. Uarttan gelen 12 BYTE'lık adres bilgisi 5x12 matris içinde yoksa sıradaki boş alana yazdırmak istiyorum ancak yazdığım kod çalışmıyor.
Kodlar void mac_adres_check(void)
{ char CRC_1 = 0xff , CRC_2 = 0xff ;
sonuc = false;
mac_buffer[0] = mac_buffer[1];
for(char i = 1; i <= 12 ; i ++)
{
CRC_1 = CRC_1^mac_buffer[i];
}
for(char i = 0 ; i <= 4 ; i++ )
{
for(char j = 1 ; j <= 11 ; j++ )
{
CRC_2 = CRC_2^mac_adres[i][j];
}
if(CRC_1 == CRC_2)
{
sonuc = true;
i = 5 ;
}
CRC_2 = 0xff;
}
if(sonuc == false)
{
for(char i = 0 ; i<= 11 ; i++)
mac_adres[adres_count][i] = mac_buffer[i+1] ;
adres_count++;
if(adres_count >= 5) adres_count = 0;
}
return ;
}
Burada sonuc hep true dönüyor nedeni hakkında fikri olan yada başka bir yöntem önerebilecek arkadaşlara şimdiden teşekkür ederim.