PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : EEPROM mit PonyProg beschreiben



Walich
03.01.2008, 22:20
Guten Abend

Ich beschäftige mich mit AVR. Ich übertrage einen Wert über die RS232-Schnittstelle vom PC zum µC, der später irgendeinen Messwert darstellen soll. Dieser wird dann über den I²C-Bus vom µC in einen externen EEPROM (24C16, weil interne EEPROM zu klein) reingeschrieben.
Nun will ich mit dieser Schaltung hier http://www.mikrocontroller.net/articles/Pony-Prog_Tutorial
über den Seriellen Port den Messwert mit PonyProg auslesen.

Meine Frage ist, ich habe nur einen BC337-40 Transistor, kann ich da andere nehmen und einen kleineren Basiswiderstand damit er sicher durchschaltet? Außerdem wie kritisch sind die PullUp-Widerstände?

Danke im Vorraus.

Walich
04.01.2008, 09:19
Guten Morgen

Mir ist noch folgendes eingefallen. Woher weiß PonyProg welche Slaveadresse ich festgelegt habe? Ich habe da alles durchgeguckt und weiß einfach nicht, wo man sie eintragen muss.

Kennt sich vielleicht irgend einer mit PonyProg aus???

Hubert.G
04.01.2008, 11:17
Der BC337-40 hat die größte Stromverstärkung. An die Widerstandsangaben sollte man sich schon halten. Zwischen 4k7 und 12k sollte es aber funktionieren.
Die Slave-Adresse ist in der Schaltung festgelegt.

Walich
05.01.2008, 09:43
Guten Morgen zusammen

und Danke Hubert.G für die Information, aber leider funktioniert bei verschiedenen Widerstandswerten garnichts!
Es kommt immer der Fehler: I2CBus Stop condition error (bad timing ?) (-20).
Sind damit nur die PullUp-Widerstände gemeint, oder kann auch noch etwas anderes nicht in Ordnung sein?

Ich habe zwar kein Speicheroszilloskop, aber ich kann in der kurzen Zeit, in der ich den EEPROM auszulesen versuche, ein Rechtecksignal auf der Taktleitung erkennen.
Der Pegel auf der Datenleitung geht in dieser Zeit von Low auf High. Die muss doch zuerst von High auf Low (Start) gehen, und dann muss der Gerätecode (1010), dann die Slaveadresse (000), und anschließend eine eins für das Lesen übertragen werden!?

Ich hoffe ihr könnt mir helfen.