Kann man bedenkenlos die ISP-Pins SCK, MISO und MOSI als Tastereingang oder LED-Ausgang nehmen, wie hier im AVR-Tutorial beschrieben? Ich würde dann den ISP-Stecker direkt mit den AVR-Pins verbinden. Erst dahinter käme dann LED und 1kR gegen VCC im Ausgangsfall bzw. 10kR gegen VCC und Taster gegen GND im Eingangsfall. Beim programmieren würden dann die LEDs herumflackern, das ist aber nicht schlimm.
Ja, kannst Du. So lange Du die Pins nur als Ausgänge verwendest. Wenn Du sie als Eingänge verwenden möchtest geht das auch, Du musst Dir nur ein paar Gedanken mehr machen ... :-) Ich habe das auch schon so gemacht und das flackern ist doch nett, es zeigt Dir an das die Programmierung läuft ...
Warum ist es nicht egal, ob es ein Eingang oder Ausgang ist? In beiden Fällen liegt ein Widerstand gegen Spannung. Oder meinst du die Programmierung?
brausemann schrieb: > Kann man bedenkenlos die ISP-Pins SCK, MISO und MOSI als Tastereingang > oder LED-Ausgang nehmen, wie hier im AVR-Tutorial beschrieben? Ich würde Ja, warum nicht? So lange der LED-Strom nicht zu groß für AVR/Programmer ist, kein Problem. Bei 1kOhm sollt es da keine Probleme geben. > dann den ISP-Stecker direkt mit den AVR-Pins verbinden. Erst dahinter > käme dann LED und 1kR gegen VCC im Ausgangsfall bzw. 10kR gegen VCC und > Taster gegen GND im Eingangsfall. Den Taster darf man dann natürlich während der Programmierung nicht gedrückt halten. Sonst geht die Programmierung nicht, logisch. Manche (Frickel-)Programmer sind auf SCK oder MISO nicht kurzschlußfest. Da könnte man im schlimmsten Fall den Programmer beschädigen. Aber wer drückt schon den Taster während der Programmierung? > Beim programmieren würden dann die LEDs herumflackern, das ist aber > nicht schlimm. Ein Bekannter hatte sogar kleine Reedrelais dranhägen. Das hat recht nett gezirpt. Sowas sollte man natürlich eher vermeiden. Servus Michael
Ich hatte die Datenleiteingen von einem LCD dran. Sah lustig aus während des flashens,lauter hüpfende Zeichen... Probleme hatte ich damit aber nie.
Warum schreibt dann Nutzer Wolfgang Heinemann, dass ich mir bei Eingängen mehr Gedanken machen muss?
Taster sind kein Problem. LEDs besser nicht, da geht der Programmer in die Knie, der müßte ja den LED-Strom zusätzlich aufbringen.
brausemann schrieb: > Warum schreibt dann Nutzer Wolfgang Heinemann, dass ich mir bei > Eingängen mehr Gedanken machen muss? Michael hat es schon erklärt. Du musst immer beachten das die Signale für das Programmieren in den vom Datenblatt angegeben Grenzen liegen. Wenn am Ausgang ein 1K Widerstand als Last liegt ist das ok, der Programmieradapter sollte damit zurecht kommen. Wenn Du, wie beschrieben 10k am Eingang als Pull-Up verwendest UND den Eingang während der Programmierung nicht nach Masse ziehst, ist das auch ok. Auf diese Bedingungen musst Du während der Programmierung achten. Eine LED am Ausgang "flackert" nur mit. Ein Magnetventil oder Relais machen wahrscheinlich auch kein Problem weil sie mechanisch viel zu langsam reagieren. Wenn Du aber z.B. einen Teil einer H-Brücke auf solch einen Pin legst kannst Du Dir durchaus etwas kaputt machen. Ein Eingang ist aus meiner Sicht kritischer weil der nicht "Automatisch" Fehlerfrei ist. Es kann ja eben doch sein das ein Schalter versehentlich betätigt ist. Ich würde auf so einen Eingang dann eher Taster legen als Kippschalter. Das war der Hintergrund meiner Aussage. Ich hoffe ich habe jetzt nicht noch mehr verwirrt ...
Wolfgang Heinemann schrieb: > Das war der Hintergrund meiner Aussage. Ich hoffe ich habe jetzt nicht > noch mehr verwirrt ... Wollen wir brausemann vollends verwirren? War hier nicht explizit gefragt, aber als Ergänzung: Wenn man den SPI-Bus, sprich MOSI, MISO, SCK während der Laufzeit verwendet, gibt es noch was zu beachten. Wenn da ein A/D-Wandler, EEPROM, ... dranhängt, kann sich der externe Baustein angesprochen fühlen und während der Programmierung dazwischenquatschen. Das passiert aber nur, wenn der /CS des externen Bausteins low (aktiv ist). Der /CS wird wohl auf einem GPIO des AVR hängen. Weil der AVR im Reset-Zustand ist, sind dessen GPIOs hochohmig. Es kommt also drauf an, ob der externe Baustein einen Pullup hat. Wenn nicht, dann kann man zu Sicherheit einen externen vorsehen. Dann herrschen auch während der Programmierung unkritische Bedingungen. @ Peter Dannegger brausemann hat für die LED 1kOhm vorgesehen. Also maximal 5 mA. Das sollte ein anständiger Programmer schon liefern. Das gute alte STK500 hatte auch mit den Reedrelais meines Bekannten kein Problem! Servus Michael
Man könnte auch einfach das IC sockeln und je eine Platine zum Programmieren und Arbeiten nehmen und nach dem Programmieren umstecken =)
Sascha schrieb: > Man könnte auch einfach das IC sockeln und je eine Platine zum > Programmieren und Arbeiten nehmen und nach dem Programmieren umstecken > =) Ja. Dann kann man sich auch gleich den IN SYSTEM Prgrammer (ISP) sparen... Praktisch! :P
okay, die Erklärungen waren glaube ich erstmal hilfreich. Wenn ich dann noch die LEDs nicht direkt ansteuere, sondern über Transistor, Treiberstufe oder Darlington-Array wird es wohl noch unkritischer. Die Eingänge dürfen nicht betätigt sein, sonst fließt der Programmierstrom direkt gegen Masse. Wenn ich aber mit einen Ausgang ein Darlingtonarray anspreche, fließt nur der Eingangsstrom des Arrays, und der Betriebsstrom für die LEDs kommt dann ja nicht aus der Programmierleitung, sondern durch 5V des ISP-Steckers. Wenn ich das jetzt richtig verstanden habe!?
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.