? wenn gesendet werden soll, ist WRITE doch ok ?
(WRite = pc-adaptor --> Slave )
Oder meinst du das grad umgekehrt ?
(READ = Slave --> pc-adaptor )
Hallo Leute,
Ich habe das VB basic Programm mir vom Roboterhardware installiert und versuche damit und dem RS232-I2C Adapter einen Atmega48 im Slave Modus anzusprechen.
Ich habe mir die Signale mit dem Oszilloskop angeschaut die der Computer sendet und habe gesehen, dass nach der Adresse immer ein Write gesendet wird obwohl daten gesendet werden sollen.
Also nach dem Start Signal und den Sieben Adressbits folgt immer ein WRITE (SDA Leitung Low).
Kommt euch das bekannt vor oder habe ich etwas falsch gemacht vielleicht beim installieren oder etwas anderes?
Hast ihr vielleicht auch Code in C für ein Beispiel Programm mit dem ich deine Software testen kann?
Vielen Dank für eure Antwort.
Gruß
Yunus
? wenn gesendet werden soll, ist WRITE doch ok ?
(WRite = pc-adaptor --> Slave )
Oder meinst du das grad umgekehrt ?
(READ = Slave --> pc-adaptor )
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
Hi,
Master ist immer der PC und der PC sendet immer ein WRITE also SDA Leitung ist immer Low nach der Adresse egal ob gesendet werden soll oder empfangen.
Wo stellst Du ein das es kein Write werden sollte ?
Welche Slave-ID gibst Du an ?
Hallo,
Ich stelle das am Computer ein. Also ich gebe die Slave Adresse ein die Schickt der Computer dann los man hat die Option lese Byte und sende Byte.
Warum ich nach der Slave-ID gefragt habe, denn die ist für das Read/Write zuständig.
Ich weiss nicht wie weit Du dich schon in I2C eingelesen hast,
die Writeadresse muss immer eine gerade Zahl sein, die Readadresse um eins höher.
Hast Du den Adapter vom RN ?
Da ist in der Doku ein Beispiel mit Slave-ID 112 bzw. 113, was $70 und $71 ist.
hi linux
danke für deine Antwort, ja ich hab den Adapter von RN und ich dachte die Slave Adresse ist immer gleich....
Naja ok, dann habe ich noch eine Frage und zwar wie ich das mache mit dem Write also ich habe doch nur ein TWAR Register wo ich nur eine Adresse eintragen kann oder muss man da was mit dem Adressmaske machen?
Gruß
Yunus
Ich Programmiere mit AVR Studio 4 in C hab keine Assembler Erfahrung. Naja hast du eigentlich den I2C Adapter von RN ausprobiert ich habe den Adapter nachgebaut und das Programm installiert. Könnt ihr mir vielleicht ein Codebeispiel für das Empfangen und Senden von Daten sicken wo ich sehen kann welche Register gesetzt werden müssen. Ich verwende den Atmega48 dafür bin mir nicht ganz sicher ob ich die Register richtig gesetzt habe. Muss ich auch die Bits im TWSR setzen oder macht der der Controller Automatisch?
@yunscher
schneller gehts per PN auch nicht
Du willst einen AVR als I2C-Slave programmieren, da gibt es schon einige Threads dazu, mal nach TWI und Slave im Forum und auch im Wiki suchen, da ist das schon alles gesagt worden.
Ich Spiel mich lieber in Bascom rum, denn in C und Java mach ich in der Arbeit schon den ganzen Tag, und ein wenig Abwechslung braucht man halt
Lesezeichen