Forum: Mikrocontroller und Digitale Elektronik PIC24F16KA102 ICSP


von Flo (Gast)


Lesenswert?

Ich möchte mir eine Testplatine für den PIC24F16KA102 bauen, weiß aber 
nich genau, wie ich den ICSP anschluss fürs PICkit am PIC24 anschliese. 
Hat jemand einen Schaltplan auf dem ich mir ansehen kann wie das geht.
Ich habe mit das Datenbaltt angesehen und gesehen, dasss an RB0 PGD1 und 
an RB1 PGC1
Verbinde Ich die Pins einfach 1:1 mit dem PICkit3?

von Flo (Gast)


Angehängte Dateien:

Lesenswert?

Ist das so richtig?

von Klaus (Gast)


Lesenswert?

Sieht richtig aus

Bei den Fuses noch einstellen, daß PGD1/PGC1 benutzt wird. Vorsicht mit 
dem Taster, nicht benutzen, solange der PICKit angeschlossen ist.

MfG Klaus

von Flo (Gast)


Lesenswert?

Klaus schrieb:
> Vorsicht mit
> dem Taster, nicht benutzen, solange der PICKit angeschlossen ist.
Das war mir klar

Klaus schrieb:
> Bei den Fuses noch einstellen, daß PGD1/PGC1 benutzt wird
Ist das standrtmäßg so eigngestellt?

von Klaus (Gast)


Lesenswert?

Flo schrieb:
>> Bei den Fuses noch einstellen, daß PGD1/PGC1 benutzt wird
> Ist das standrtmäßg so eigngestellt?

Weiß ich jetzt nicht auswendig. Zum Programmieren ist es eh egal, nur 
zum Debuggen, und dann schreibt man es in den Source und denkt nicht 
weiter drüber nach. Den Reset braucht man eigentlich auch nicht, das 
läßt man den Debugger machen.

MfG Klaus

von chris (Gast)


Lesenswert?

Du solltest eine Diode an MCLR vor dem Widerstand anschliesse, damit
VPP (5-9V) nicht an VCC geht, und VCC ist 3.3V, 5V wuerde den Chip 
warscheinlich schaden.

von chris (Gast)


Lesenswert?

Nachtrag, es gibt auch einen Low Voltage Programming Modus, da brauchst 
du
die Diode nicht, sollte es dein Programmer unterstuetzen. Aber sobald 
ein
Code Protection aktiviert wurde, oder MCLR deactiviert wurde, geht LVP 
nicht
mehr.

von Klaus (Gast)


Lesenswert?

chris schrieb:
> Du solltest eine Diode an MCLR vor dem Widerstand anschliesse, damit
> VPP (5-9V) nicht an VCC geht

10k und keine Diode wird von Microchip vorgeschlagen, alternativ MCLR# 
als Port programmieren und garnichts anschließen.

chris schrieb:
> Nachtrag, es gibt auch einen Low Voltage Programming Modus, da brauchst
> du die Diode nicht, sollte es dein Programmer unterstuetzen. Aber sobald
> ein Code Protection aktiviert wurde, oder MCLR deactiviert wurde, geht
> LVP nicht

Jeder gängige PIC Programmer/Debugger kann HV programmieren, wozu dann 
LVP? Braucht außerdem einen zusätzlichen Pin. Und HV geht immer, auch 
ohne Clock etc.

MfG Klaus

von Flo (Gast)


Lesenswert?

Ich habe auf der Zeichnung Vdd mit +5V verbunden, ich werde aber einen 
3.3V Regler einbauen. Ich habe die Labels aus Gewohnheit mit 5V 
beschriftet.

von Flo (Gast)


Angehängte Dateien:

Lesenswert?

Hier ist mein Schaltplan. Findet ihr einen Fehler?
Die Stecker habe ich wie Sprut gemacht: Immer 8 bit + Vcc + Vdd, dass 
ich meine alten Ansteckplatinen für mein PIC18 Board weiterverwenden 
kann.

von Frank K. (fchk)


Lesenswert?

chris schrieb:
> Du solltest eine Diode an MCLR vor dem Widerstand anschliesse, damit
> VPP (5-9V) nicht an VCC geht, und VCC ist 3.3V, 5V wuerde den Chip
> warscheinlich schaden.

Bei PIC24 und PIC32 wird immer im Low Voltage Programming Modus 
programmiert.

fchk

von Flo (Gast)


Lesenswert?

Frank K. schrieb:
> Bei PIC24 und PIC32 wird immer im Low Voltage Programming Modus
> programmiert.
Nein. Im Datenbaltt steht ein paar mal was von high Voltage Prorammin, 
ich finde aber keine Schaltung...

von Chris B. (dekatz)


Lesenswert?

Vpp = Vdd !
Hier die Spezifikation im "Original" (Auszug):

######################################################################
#
# MPLAB IDE .dev File Generated by `pic2dev.py'
#
# Device: PIC24F16KA102
# Family: 24xxxx
# Datasheet: 39927
# Date: Mon Jul  8 10:11:07 2013
#
######################################################################


######################################################################
#
# Memory Regions & Other General Device Information
#
######################################################################

vpp (range=2.000-3.500 dflt=3.250)
vdd (range=2.000-3.500 dfltrange=2.000-3.500 nominal=3.250)
pgming (memtech=ee tries=1)
    wait (pgm=10000 eedata=10000 cfg=10000 userid=10000 erase=600)
    latches (pgm=32 eedata=2 cfg=2 rowerase=128)

von Flo (Gast)


Lesenswert?

Und ich lese im Datenblatt:
>Absolute Maximum Ratings:
>Voltage on MCLR/VPP pin with respect to VSS -0.3V to +9.0V

von chris (Gast)


Lesenswert?

Nur wenn man code protection oder kein mcrl verwendet, dann braucht man 
hvp.
Deshalb verwendet microchip auch 100k pullup um bei geringsten kosten 
den Schaden su minimieren.

von Flo (Gast)


Lesenswert?

Ich könnte die Platine morgen ätzen.
Denkt ihr mein Schaltplan ist in Ordnung?

von Frank K. (fchk)


Lesenswert?

Flo schrieb:
> Ich könnte die Platine morgen ätzen.
> Denkt ihr mein Schaltplan ist in Ordnung?

Ich würde Lötbrücken für die Verbindung von RB0 und RB1 zum Connector U2 
vorsehen, die möglichst nahe am PIC platziert sind. Wenn Du RB0 und RB1 
nur für ICSP benutzt, verringerst Du so die kapazitive Last. Das 
vermeidet Probleme beim ICSP und ermöglichst ggf eine höhere 
Geschwindigkeit auf dem ICSP. Solltest Du die Pins anderweitig noch 
brauchen, kannst Du ohne Probleme die Lötbrücken schließen.

Die 2*100n für den PIC gehören möglichst nahe an die entsprechenden 
VDD/VSS-Pins, aber das weißt Du ja sicher selbst.

Ansonsten sieht das ganze gut aus.

fchk

von Flo (Gast)


Lesenswert?

Frank K. schrieb:
> Ich würde Lötbrücken für die Verbindung von RB0 und RB1 zum Connector U2
> vorsehen,
Das denke ich ist nicht nötig. Die Leiterbahnen vom Pin zum Stecker sind 
max. 15mm und beim Programmieren, werde ich die Zusatzplatine, falls 
nötig ausstecken. Und bei meiner Platine mit PIC18 sind sie ca. 2cm lang 
und ich hatte nie Probleme.

Frank K. schrieb:
> aber das weißt Du ja sicher selbst.
Jo, weiß ich.

von Flo (Gast)


Lesenswert?

Frank K. schrieb:
> verringerst Du so die kapazitive Last.

Kapazität ist kein Problem, wenn sie nicht zu groß ist. Ich programmiere 
immer über ein 10cm Flachbandkabel zwischen PICkit3 und Platine.

von Frank K. (fchk)


Lesenswert?

Flo schrieb:
> Frank K. schrieb:
>> verringerst Du so die kapazitive Last.
>
> Kapazität ist kein Problem, wenn sie nicht zu groß ist. Ich programmiere
> immer über ein 10cm Flachbandkabel zwischen PICkit3 und Platine.

Das PicKit3 ist auch nur Full Speed. Ich habe einen ICD3, der kann High 
Speed und geht deutlich schneller zu Werke. Merkt man besonders bei 
PIC32.

fchk

von Flo (Gast)


Lesenswert?

Frank K. schrieb:
> Das PicKit3 ist auch nur Full Speed. Ich habe einen ICD3, der kann High
> Speed und geht deutlich schneller zu Werke.
Da ich für mein Hobby beim PICkit bleiben werde, wir das Layout fürs 
ICSP nicht so kritisch werden.

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
Noch kein Account? Hier anmelden.