hi ho...
MSB is klar...ok. ist bit 6 nun das sechste bit also die sechste ziffer von rechts...oder geht es von bit 0 bis bit 7 ?
wenn es von bit 0 nach bit 7 geht könnte das hinkommen. nur ich verstehe unter bit 6 eigentlich das sechste bit von rechts. nun ja...egal.
demnach stimmt die ausgabe meiner software vielleicht schon fast. allerdings ist alles um ein bit verrutscht oder so. das bit, welches bei mit ganz links steht, müsste vielleicht nach ganz rechts o.ä. möglicherweise resultiert aus diesem fehler auch das minus zeichen.
hier ist mal meine lesen prozedur, welche "clockt" und die bits welche an MISO nach jedem clock anstehen an den pc sendet. pause(3) entspricht etwas mehr als 50µs. TI wird "1" wenn der sendevorgang abgeschlossen ist.
Code:
void lesen()
{
// Wert an den PC senden
for(clock_count=8; clock_count>0; clock_count--) // 8 Bit Wert senden
{
SCLK = 0;
pause(3);
SCLK = 1;
pause(3);
SBUF = MISO;
while(TI == 0)
{
}
TI = 0;
}
}
denke die prozedur ist auch ohne C kenntnisse durchschaubar. aber einen fehler sehe ich hierbei auch nicht.
mfg
Lesezeichen