Hallo Ich beschäftige mich gerade mit TWI auf dem ATMEGA 128. Ich habe mit das TWI Beispiel von Jörg Wünsch im WINAVR angesehen. dort taucht öfters der Begriff _BV auf, was bedeutet das ? wenn ich das Beispiel Programm von Jörg wünsch in den ATMEGA 128 flashe bekomme ich an PD0(SCL) ein sauberes Clock Signal raus. Allerdings liegt an PD1(SDA) überhaupt kein Signal an. An was könnte das liegen ? Dann hätte ich da noch eine Frage, wenn ich die PORT Pins des ATMEGA 128 nutzen möchte muss ich ja das Daten Richtungs Register eines PORTS entsprechend als Eingang o. Ausgang setzen. Je nach dem was ich machen möchte. Genau das verstehe ich bei TWI nicht, SCL also PD0 am ATMEGA 128 ist ein Ausgang, das ist klar. Aber wie Läuft das mit PD1(SDA) dieser PIN wird ja als Eingang und als Ausgang verwendet. Der ATMEGA 128 wird als Master betrieben. es wäre sehr nett, wenn mir jemand helfen könnte da ich diese Sache schnellst möglich zuende bringen muss und momentan sehr unter Zeitdruck stehe. Gruß Gizmo
_BV(xx) ist einfach ein define auf (1<<(xx)) Gibt also ein Byte zurück, in dem genau das xx'te Bit gesetzt ist. Kommt aus der AVR-Libc und wird verwendet weils nicht so "gefährlich" aussieht wie die ganzen Bitschiebereien...
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.