Hallo, ich habe das Problem, dass der mkII von Atmel den Programmiervorgang immer mit einem orangen Blinken abbricht, wenn ich an der SPI meine Schieberegisterkette (8x 595) hängen habe. Glücklicherweise liegen deren Pins auf einem Stecker, den ich dann halt vor dem Programmieren abziehen muss. Nervig ist es trotzdem. Was ist da verkehrt? Ich vermute mal, dass der mkII nicht soviel Strom treiben will (weil ja so gesehen 9 Verbraucher am SCK hängen). Wie macht man es richtig? Abschalten (Chipselect) lassen sich die 595 ja nicht. Mfg Jansen
mit dem mk2 nur einen transistor treiben? Damit ist die Last weg vom Programmer
Naja, das gleich Problem kann ja aber auch am MISO auftreten. Eigentlich bräuchte ich doch sowas wie eine Chipselect Leitung am 595, oder? Aber der hat sowas nicht
Jansen schrieb: > ich habe das Problem, dass der mkII von Atmel den Programmiervorgang > immer mit einem orangen Blinken abbricht, wenn ich an der SPI meine > Schieberegisterkette (8x 595) hängen habe. Was für 595? Ich hab 21 Stück CMOS 74HC595 dran, und das Programmieren geht einwandfrei. Standard-TTL könnten aber zu viel Eingangsstrom brauchen. Peter
Bei mir sind es 8 HC595 von ST. Zwischen den beiden Platinen (der mit dem Atmega und der ISP und der mit den Schieberegistern) ist ein Stück Flachbandkabel. Das sollte ja aber kein Problem sein. Ich muss es immer abziehen, damit der mkII seine Arbeit tut. Peda, programmierst du denn auch mit dem mkII, oder hast du einen, der evtl. einfach mehr Strom treibt? Ist der mkII vielleicht einfach ziemlich empfindlich?
Jansen schrieb: > Peda, programmierst du denn auch mit dem mkII Ja. Die Schaltung ist aber auf einer Platine, anbei ein Ausschnitt. Dadurch sind die Leitungen schön kurz und die Masse dick (Plane). SPI über längere Leitungen (zu anderen Platinen) zu übertragen ist etwas tricky (ich machs nicht mehr). Es kommt dann schnell zu Störungen (Spikes), da die ICs zu schnell sind. Peter
P.S.: Ich hab mal die Länge der Netze gemessen: SCK: 320mm RCK: 343mm Peter
Sorry, fürs Thread-jacking: @peda: Peter Dannegger schrieb: > SPI über längere Leitungen (zu anderen Platinen) zu übertragen ist etwas > tricky (ich machs nicht mehr). Es kommt dann schnell zu Störungen > (Spikes), da die ICs zu schnell sind. ich habe gerade so ein Problem, auch wenn es sich nur um ca 15cm Flachbandkabel handelt und VCC und GND jeweils 3fach über das Kabel geführt werden. Ich schaffe es immer wieder solche Spikes zu erzeugen (teilweise vermutlich ESD), dass das 595er (CD74HC595 von TI) seine Daten vergisst. Gruß Fabian
Noch eine Frage zu der Application Note: welche Größe sollten die Serienwiderstände in der SPI haben? 10k? Kann denn dann der Atmega im normalen Betrieb die Schieberegister ansprechen?
Jansen schrieb: > Was ist da verkehrt? Ich vermute mal, dass der mkII nicht soviel Strom > treiben will (weil ja so gesehen 9 Verbraucher am SCK hängen). > Wie macht man es richtig? Abschalten (Chipselect) lassen sich die 595 ja > nicht. HC126 dazwischen, wobei die Gates der einzelnen Gatter auf Reset liegen. Ist Reset High, werden die Schieberegister angesteuert, ist Reset LOW, ist ein ISP-Programmer im Gange. Pull-Ups/Downs nach Bedarf an die Ausgänge des HC126 setzen, um undefinierte Pegel zu vermeiden. fchk
Jansen schrieb: > welche Größe sollten die Serienwiderstände in der SPI haben? 10k? Ich verwende dort immer 1k.
Fabian B. schrieb: > ich habe gerade so ein Problem, auch wenn es sich nur um ca 15cm > Flachbandkabel handelt und VCC und GND jeweils 3fach über das Kabel > geführt werden. Manchmal hilft, eine dicke Masse zwischen beiden Platinen zu ziehen. Oder ein Schmitt-Trigger an den Eingängen. Die sind langsamer und daher nicht so störanfällig. Z.B. 74HC14 oder CD4093 (richtig langsam). Die saubere Profilösung dürfte aber differentiell sein (RS-485-Transceiver). Peter
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.