• Hallo TT-Modellbahner, schön, dass du zu uns gefunden hast.
    Um alle Funktionen nutzen zu können, empfehlen wir dir, dich anzumelden. Denn vieles, was das Board zu bieten hat, ist ausschließlich angemeldeten Nutzern vorbehalten. Du benötigst nur eine gültige E-Mail-Adresse und schon kannst du dich registrieren.
    Deine Mailadresse wird für nichts Anderes verwendet als zur Kommunikation zwischen uns.
    Die Crew des TT-Boardes

Hilfe bei AVR und ISP benötigt

flicflac

Foriker
Beiträge
895
Reaktionen
2 1
Ort
Minden / NRW
Hallo

Ich habe mich schon durchs mikrocontroller.net und Roboternetz gekämpft, aber irgendwie nie eine verwertbare Antwort erhalten.

Für PICs ist hier (bei sprut.de) idiotensicher beschrieben wie man ICSP von der fertigen Schaltung entkoppelt. Hab ich auch schon eingesetzt (z.B. bei Holgi's WDEC04) und funzt problemlos. Nur wie realisiere ich das beim AVR? Es geht einfach darum das die umliegende Schaltung die Programmierung per ISP nicht beeinflusst.
Ich habe nur etwas von 4,7K Widerständen gefunden. Wie ich mir das vorstelle (in Abwandlung vom PIC) habe ich mal skizziert, aber funktioniert das auch so?

THX
flic
 

Anhänge

  • AVR_ISP.JPG
    AVR_ISP.JPG
    122,1 KB · Aufrufe: 85
Wenn von da wärend des Programmierens keine Signale kommen können, dann Ja.
dh. es darf dort entweder zu anderen Eingängen gehen, oder zu nicht angesteuerten Open-Colektor (OC) oder Triestatausgängen.
Kann von dort der Pegel gegen UB oder GND wärend des Programierens gezogen werden, dann muß entkoppelt werden.
Ich programmiere die AVR meist direkt aus dem LPT über ein Kabel an den ISP-Anschluß mittels Pony
 
@flic
Hast Du schonmal über die Möglichkeit nachgedacht eine Steckbrücke und verbindende Jumper zwischen den AVR und die Eingänge der angeschlossenen Peripherie zu bauen wenn Du die Pin's an den AVR als Ausgang benutzen willst? Die Jumper ziehst Du einfach ab wenn Du den AVR im System neu brennen willst.
Nutzt Du AVR-Pins als Eingang sollte es prinzipiell reichen im "Normalbetrieb" Bauteile mit Tri-State-Ausgängen zu nutzen. Diese schalten bei Bedarf in den hochohmigen Zustand und beeinflussen die ISP nicht weiter. Diesen Zustand könntest Du ganz bewusst erzeugen wenn der AVR von der ISP-Schnittstelle auf Reset gezogen wird. Dann wäre die Schaltung in ihrer Gänze lahmgelegt.
 
@flicflac

Also ich würde sagen, die 4,7k-Widerstände kannst du weglassen.
Du nutzt ja den ISP eh nur am Anfang zum programmieren des AVR.

Die Programmierspannung liegt ja auch mit am ISP an und sollte vom Programmiergerät kommen (Ich hab dazu ja das STK500). Den Rest der Schaltung lässt du ja dann spannungslos.

Eine andere Idee wäre noch, du nutzt ein Bootloader und dann brauchst du nur noch 1 Portpin freihalten und kannst den ISP weglassen. Die erstmalige Programmierung der AVRs mit dem Bootloader musst du dann halt extern machen.


Gruß
Desastro
 
Hallo flicflac,

wie mein Vorredner schrieb, die 4k7 Widerstände können entfallen. Die Diode ist OK und auch die Trennung der SCK Leitung zum getrennten programmieren. Was sich mir aber nicht erschließt ist die Verbindung PA5 und PA6 des ersten AVRs zum PB5 und PB6 des zweiten AVRs, und die zweite Einkopplung der Optokoppler auf der rechten Seite?
 
Erst mal besten Dank für die Antworten.

Die Widerstände fallen also weg, und durch die Diode ist der Rest der Schaltung ja spannungsfrei beim Programmieren. Über die PullUp's können die Programmiersignale also nicht beeinflusst werden.

@Holgi
Das wird eine kleine Steuerung für meinen Schattenbhf. in der Kehrschleife. Drei Schalter schalten die Gleise jeweils auf Bremsen oder Fahrt, 3 Lichtschranken für genauen Stop und eine um das Bremsen in 2,35m auszulösen. AVR1 macht die Logik, AVR2 steuert über deine WDEC04 die Weichen. Weichenrückmeldung und GBMs werden auch ausgewertet.
Drei Schalter als Bedienelemente ist einfacher als 20 Taster und Schalter für 6-8 Weichen, Bremsen usw. Die "AVR-Handsteuerung" ist ja für den Nachwuchs, bei späterem finanziellen Überschuss kommt ja alles an den PC.

@carstens_tt
Bei der Verbindung PA5 und PA6 des ersten AVRs zum PB5 und PB6 des zweiten AVRs bekommen beide AVR das gleiche Signal. 1x Automatik an/aus und der 2. ist als Reserve noch frei.


Ich werde das mal so probieren. Wenn es schief geht ist eben wieder "ziehen-proggen-stecken" angesagt :(

flic
 
nochmal nachgefragt

@flicflac

Irgendwie stehe ich trotzdem auf dem Schlauch. Wenn die Information "Automatik" von der linken Seite kommt und auf PB5 des 1.AVRs geht dann steht sie doch auch dem 2.AVR auf PB5 zur Verfügung. Frage 1: Warum dann noch eine Verbindung von PA5 des 1.AVR zum PB5 des 2.AVRs? Frage 2: Warum ist dann zusätzlich noch die Einbindung von der rechten Seite (Die ersten beiden Pullup Widerstände am 2.AVR sind momentan überflüssig) vorhanden?
 
Zurück
Oben