Gast
#1397077
Hi
Ich arbeite an einem Programm für einen Pic. Ich benutze dafür MPLAB,
genauer C18.
Im Programm kommt folgende Zeile vor:
data=(256*SPI(0xff));
...
printf("%u",data);
Über SPI wird der Wert 2 übertragen. Die Funktion liefert die Ausgabe
512. Ist ja auch richtig.
Wenn ich nun die 256 in hex schreibe, also
data=(0xff*SPI(0xff));
...
printf("%u",data);
liefert die Funktion 254 als Ausgabe. Ich habe schon versucht, den Hex
Wert in Klammer zu setzen, oder die f groß zu schreiben, immer das
selbe. WIe kann man das erklären? Aja data ist vom typ unsigned int,
also 2bytes groß (mit sizeof sicherheitshalber getestet).