PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PIC ICSP



drunkenmunky
03.10.2010, 21:15
Hallo,

ich will einen 8 Pin Pic verwenden, nur wenn ich schon 3 I/Os für ICD oder ICSP brauche, bleibt nicht viel übrig.

Kann ich, wenn ich aufs debuggen verzichte, die Takt- und Datenleitung nach dem Programmieren als I/Os verwenden?

Man muss halt auf jeden Fall schauen dass zur Zeit des Brennen keine Signal von extern auf den Pin kommen. Könnte man das mit einem Widerstand in Reihe lösen (also Programmieradapter direkt an Eingang und über einen Widerstand zur Schaltung)?

RoboHolIC
03.10.2010, 23:44
Grundsätzlich geht das schon. Bei mir klappt das in Doppelung mit den Datenleitungen eines LCDs problemlos.

Microchip spricht in diesem Zusammenhang immer von "isolation", aber das ist relativ. Es gibt von denen auch gute Beschreibungen zu diesem Thema. Family Specifications oder Programming Guide oder sowas Ähnliches. Das findet man stets in der verlinkten Dokumentation zu jedem einzelnen Baustein.

Und natürlich aufpassen, daß das Programmieren keine verbotenen Zustände oder Taktfrequenten in die Peripherie injiziert.

PICture
04.10.2010, 01:41
Hallo!

Das einfachste und platzsparende wären drei Jumpers bzw. DIP Schalter auf der Platine mit PIC, die die Hardware fürs Brennen wirklich trennen.

MfG

RoboHolIC
04.10.2010, 20:34
Das einfachste und platzsparende wären drei Jumpers bzw. DIP Schalter [...]
MfG

Klar, so funktioniert es ganz sicher. Und die universellste Variante ist es auch - aber elegant geht anders.
Jumper und DIP-Schalter stecken und öffnen bei jedem Programmierzyklus - das wird aber schnell lästig während der Codeentwicklung.

@drunkenmunky
Zeig doch mal her - wie sieht denn dein Schaltplan aus? Davon hängt es ganz wesentlich ab, wie konsequent die o.g. "isolation" der ICSP-Leitungen ausgeführt werden muß.

PICture
04.10.2010, 20:48
Hallo!

Das stimmt. :) Ich habe bloss an fertige Geräte gedacht, die nur sehr selten umprogrammiert werden.

Bei Entwicklungsboards benutze ich Zwischenplatine mit 9 Anschlüssen und Miniaturrelais, die beim Ausschalten der Versorgungsspannung (z.B. Netzteils) sofort aufs Programmieren (Brennen) umschalten. Siehe dazu meine Skizze in: https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=13619

MfG

paul_w_
02.11.2010, 10:50
Hi, auf dieser Seite http://www.sprut.de/electronic/pic/icsp/icsp.htm#3 ist erklärt, wie man mit ein paar Dioden und Widerständen die Schaltung und den PIC voneinander beim Proggen trennen kann ohne irgendwelche Jumper oder Schalter verwenden zu müssen.

mfg
Paul

PICture
02.11.2010, 12:58
Hallo!

Ich bin skeptisch, dass es so einfach geht. Der Sprut schreibt dort selber:


Vor dem Anschluß des Brenners muß dann unbedingt die normale Betriebsspannung des PIC abgeschaltet werden.

Mein ICSP ist zwar "kompliziert" (zwei doppelte Umschalter), brauche aber bei Erstellung von Programmen nichts beachten. ;)

MfG

paul_w_
02.11.2010, 14:34
Hallo!

Mein ICSP ist zwar "kompliziert" (zwei doppelte Umschalter), brauche aber bei Erstellung von Programmen nichts beachten.
Ich gebe zu ich verwend selbst nur Jumper, da ich dort dann gleich die ICSP-Kabel anschließen kann und nicht eine zusätzliche buchsenleiste irgendwo auf die Platine planen muss.

mfg
Paul

PICture
02.11.2010, 15:29
Genau! :)

Ich benutze zuletzt Dopelumschalter, weil ich damit auch SMD PIC's in fertigen Schaltungen programmiere, wo für Jumper leider kein Platz mehr gibt. Die fürs Brennen benötigte 3 Pins vom PIC lasse ich bei Programmerstellung einfach friei und Vcc Schalter zwischen PIC und Hardware ist fast immer schon vorhanden.

MfG