Sida 1 av 2

ICSP-undran

Postat: 22 juli 2007, 18:25:43
av MadModder
Hur gör man bäst för att Vdd från programmeraren inte ska driva allt övrigt på målkortet som går på 5V, som t.ex bakgrundsbelysning till display mm.? Det orkar inte min programmerare, som drivs endast av serieporten.

Kollar genom ICSP-guiden från microchip just nu. De verkar köra med motstånd för att "isolera" resten av kortet. Hmm...
Det borde väl funka med en schottkydiod på Vdd mellan µC och resten av kretsen?

Man skulle ju iofs kunna ha DIP-switchar för att koppla ur allt annat under programmering...

Postat: 22 juli 2007, 19:07:34
av Chribbe76
Jag har använt schottkydiod som du beskriver till min Picstart+ och det har fungerat ganska bra.
Första gången jag testade tänkte jag inte på den höga spänningen på RESET så jag brände en lcd-display, men så klantig är ju bara jag. :oops:

Postat: 22 juli 2007, 20:35:28
av MadModder
Ganska bra säger du. När har det inte fungerat?

Postat: 22 juli 2007, 20:46:56
av Chribbe76
Ja, det var ju en ganska dum formulering.

Av någon anledning har jag haft lite problem med att programmera picar men dessa problem har kommit smygande med tiden och är inte direkt relaterade till ICSP.
Jag har haft mindre problem när kretsen sitter i Picstart-sockeln men ibland har det krånglat även där.
Problemen brukar jag lösa genom att banka på Picstarten.

Postat: 22 juli 2007, 21:01:31
av Kaggen
Kan du av någon anledning inte ha matningsspänningen för målkortet på samtidigt då? Jag antar att du har separat matning till målkortet eller...?

Jag kanske har missförstått frågan, eller problemet. :)


/Mats

Postat: 22 juli 2007, 21:02:13
av MadModder
Chribbe76: Haha ok... Isf tror jag det funkar bra för mig då. :)

Kaggen: Såklart målkortet har egen matning, men jag kan ju inte ha den igång så alltihop startar, och sen börja programmera. Eller?

Postat: 22 juli 2007, 21:38:51
av sodjan
Vad är "alltihop" ?

En "nornal" ICSP programmerare tar kontrollen över MCLR så din PIC kommer
bara att köra applikationen då programmeraren *tillåter* det (genom att
lägga MCLR hög).

Att din programmerare "drivs endast av serieporten" låter lite allarmerande...

Postat: 22 juli 2007, 21:40:17
av Kaggen
MadModder: Så gör då jag (programmerar med matning på), fast det kan ju bero vad man har på in/utgångarna. Jag har fått för mig att alla portar ställs i högimpedans under programmering (förutom de som används för själva programmeringen då), men jag kan ju ha fel. Jag har iofs aldrig haft något kritiskt på mina in/utgångar (LCD:n brukar flimmra lite iomed att programklockan sitter på samma pinne som LCD:ns programklocka).

Jag vart osäker på det där med högimpendansläge, men jag har för mig jag läst det nånstans. Är det PIC eller AVR du använder?



/Mats

Postat: 22 juli 2007, 21:50:32
av sodjan
> Jag vart osäker på det där med högimpendansläge, men jag har för mig jag läst det nånstans.

Stämmer för PIC i alla fall...

> Är det PIC eller AVR du använder?

Bästa frågan hittills... :-)

Postat: 22 juli 2007, 23:12:28
av MadModder
Haha. Det är PIC. :) Det skulle man väl iofs ha kunnat lista ut eftersom jag läste ICSP-guiden från microchip, som jag skrev i första inlägget...

Hmm... så om jag kopplar som exempelschemat för icsp i microchips guide, och har bygget igång för fullt, kopplar in programmeraren så stannar allt och PIC:en hamnar i programmeringsläge? :?

Min programmerare är förresten baserad på denna: http://www.olimex.com/dev/pic-pg1.html och den funkar bra.

Postat: 22 juli 2007, 23:47:59
av sodjan
Det har du rätt i, du nämnde ju Microchip där... :-)

> ...kopplar in programmeraren så stannar allt

Det vet man ingenting om, om man inte vet hur just *den*
"programmeraren" tillsammans med sin programvara
hanterar det. Den kan antingen hålla målmiljön stoppad
(med MCLR låg) eller låta den köra (med MCLR hög).

> och PIC:en hamnar i programmeringsläge?

*Väldigt* osannolikt att den gör det utan att man har sagt
till PC programmet att "programmera"...

> ...och den funkar bra.

Lika osannolikt... :-) :-) Men vem vet...

Postat: 23 juli 2007, 00:04:12
av Micke_s
Annars får du se till att ditt kort är så konstruerat att styrpinnar dras låga/höga av motstånd där en okänd signal kan ställa till med problem.

Sedan skulle jag skaffa en ICD2 istället, den har buffrar för få samma matspänning som målsystemet.

Postat: 23 juli 2007, 07:22:17
av Icecap
JDM-designet på en programmeringsenhet är skit! Om ens så bra som skit! Och den fungerar definitivt inte med USB-serieport heller.

Handla heller en WISP628 av sodjan, den ska man inte koppla till och från, det är bara att koppla in den och låta den sitta till man har utvecklat färdigt, ska man programmera gör man det, när man inte programmerar "finns den inte" dvs. den kopplar helt ifrån.

Postat: 23 juli 2007, 18:24:17
av MadModder
Jag har programmerat ett 20-tal PICar löst på labbplatta med min programmerare, och det har inte krånglat någon gång.

Jag snackar inte om att PICen ska börja köra, utan allt det andra på kortet som också är kopplat till Vdd! Det spelar ingen roll vad det är för något. Det är allt förutom PICen.
Om jag har grejer på kortet som drar 5A från 5V-ledningen, och så pluggar jag in programmeraren (jag tycker det är rimligt att kunna programmera en pryl utan att den ska behöva vara igång). Den har ju inte en sportmössa att kunna peta in några 5V där. Med en schottky-diod som avskiljare, så får ju PICen en aningens lägre drivspänning under normal drift.

Postat: 23 juli 2007, 18:29:52
av sodjan
> Den har ju inte en sportmössa att kunna peta in några 5V där.

Vad har "inte en sportmössa" ? Programmeraren ?
Varför ska den "peta in" 5V ? Målmiljön har ju redan 5V ?