Sorry falls ich nerve aber hab da noch eine Verständnis Frage: Was heisst "(RegisterA & (<<Bit7)? Ist die Aussage dann wahr wenn Bit7= high(logisch 1) und irgendein anderes Bit vom RegisterA = high (logisch 1) ist. Wie funktioniert das genau, wenn man Register mit einzelnen Bits bitweise vergleicht?
Lukas Piet wrote:
> Was heisst "(RegisterA & (<<Bit7)?
Das ist leider syntaktische Unsinn. Ich vermute, es sollte heißen:
RegisterA & (1 << Bit7)
wobei Bit7 als 7 definiert ist.
Es bedeutet: die 1 wird 7 Bit nach links verschoben und bitweise mit
RegisterA und-verknüpft.
M.a.W.: Das Ergebnist ist ganau dann != 0, wenn in RegisterA das Bit 7
eine 1 ist.
Wieso Unsinn? Das Tutorial schreibt doch mit diesem Syntax. Zitat aus dem Tutorial: while ( ADCSRA & (1<<ADSC) ) { ; // auf Abschluss der Konvertierung warten }
Nächste Überlegung: Das heisst wohl wenn im Register ADCSRA das Bit ADSC=1 ist, dann ist Bedingung erfüllt?
Lukas Piet wrote: > Wieso Unsinn? > > Das Tutorial schreibt doch mit diesem Syntax. > > Zitat aus dem Tutorial: > > while ( ADCSRA & (1<<ADSC) ) { > ; // auf Abschluss der Konvertierung > warten > } Dann lies mal nach, was du in deinem Orginalposting zusammengeradebrecht hast...
ja sorry hatte die 1 vergessen, kann den Beitrag leider nicht mehr bearbeiten um es zu korrigieren.
Lukas Piet wrote: > ja sorry hatte die 1 vergessen, kann den Beitrag leider nicht mehr > bearbeiten um es zu korrigieren. Einfach vorm Absenden nochmal checken beim nächsten mal ;)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.