MPLAB IDE - Sinnloses Warning ?

Gast #908974
Lesenswert?

Hallo Forum,

ich programmiere hier mit dem MPLAB IDE eine SD-Kartenansteuerung.
Mit einem MSP hat das wunderbar funktioniert.

Ich portiere das Programm nun auf den dsPIC.

Der Compiler meldet hier ein Warning, was ich nicht nachvollziehen kann.
Aber es tritt im PROGRAMM genauso auf, wie er der Compiler es voraussagt 
!
Das gleiche Problem tritt beim MSP nicht auf !


Hier die Stelle:
1
if(SD_CHECK_RESP(0xfe)==0xfe)
...

Die Funktion ist wie folgt definiert:
1
char SD_CHECK_RESP(char resp)
2
{
3
  int i=0;
4
  char response_2;
5
  while(i<100)
6
  {
7
    response_2=spi_send_8_SD(0xFF);
8
    if(response_2==resp) break;
9
    i++;
10
  }
11
  
12
  return response_2;
13
}

spi_send_8_SD() liefert einen char zurück.

WARNING:

SD_CARD.c: In function 'SD_READ_REGISTER':
SD_CARD.c:225: warning: comparison is always false due to limited range 
of data type

Obwohl SD_CHECK_REP() 0xFE zurückliefert, schlägt der Vergleich fehl ?

Beim MSP geht das wunderbar.

Bitte helft mir.

MfG
Klaus

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren