Hallo,
läuft das Slave Programm im AVR auch? Also hast Du es mit dem Start/Stop Taster gestartet? Geht auch indem man auf dem I2C Bus einmal die SDA Leitung für ein paar Millisekunden auf low schaltet (einmal start+stop generieren), dann etwas WARTEN weil da im Slave Programm am Anfang 500ms Pause drin sind. Das muss alles separat VOR der ersten Datenübertragung passieren.
Mach sonst auch mal ein paar setLED Befehle in die einzelnen Funktionen im Slave Programm rein damit man sieht obs überhaupt läuft.
Du verwendest die Pins aber auch allgemein richtig, das müssen OPEN DRAIN Ausgänge sein, d.h. aktiv Low ist OK, aber aktiv High ist verboten für High müssen die Pins als Eingang konfiguriert werden - den Rest erledigen die externen Pullup Widerstände.auf dem Bus ausgelöst und zwar indem ich zum Start die Port-Pins SDA und SDC als Ausgang definiert habe.
(sonst ist Ausgang an Ausgang geschaltet und wenn einer High und einer Low ist wäre das schlecht... )
MfG,
SlyD
Hi,
ich habe nun mal folgendes ausprobiert: Start, SDA-low, Warteschleife >1s, SDA-high, Warteschleife >1s, normaler Ablauf
Hat aber nicht geholfen (um sicher zu stellen, dass das I2C Slave Programm läuft. Ich werde jetzt mal das I2C Slave Programm mit setLED Befehlen ausstatten, wie du gesagt hast mal sehen ob das Prog auf der Base überhaupt läuft.
Zu den Pins: Ich verwende ja eine fertige Librarie, ich meine, dass der Port Pin einfach zwischen Ausgang (=low) und Eingang (hochohmig=high) wechselt.
Gruß Nico
Geändert von PIC-Nico (28.08.2011 um 12:01 Uhr) Grund: Ausversehen 2x SDA-high geschrieben
Nur Probleme --> Compilieren im PN2 funktioniert nicht. Ich habe die WinAVR Umgebung runter geladen (also sind die Befehle schon drin MAKE ALL und MAKE CLEAN). Dann habe ich einfach ein Beispielprojekt geöffnet aber er will einfach nicht:
> "make.exe" all
"make.exe": Interrupt/Exception caught (code = 0xc00000fd, addr = 0x4217b3)
> Process Exit Code: 255
> Time Taken: 00:01
Welche WinAVR Version (aktuellste)? Welches Betriebssystem?
Okay, man darf bei der Installation den Installations-Ordner nicht ändern --> wtf?
Edit: Also das I2C Slave Programm arbeitet.
Geändert von PIC-Nico (28.08.2011 um 13:10 Uhr)
Habe gerade gelesen, dass die Adresse wohl nicht 10 sondern 5 ist: http://www.arexx.com/forum/viewtopic.php?f=19&t=1466
^^ nochmal ran an den Speck
Lesezeichen