PIC16F887 Problem
PIC16F887 Problem
Var på kjell och köpte en bunt PIC12F629. Trodde jag iallafall. Jag fick en påse med PIC16F887. När jag ett par timmar senare upptäckte detta tyckte jag att de kunde jag väl leva med. Men problemet är att jag är total nybörjare. Har ett PICkit2 med en PIC16F690. Leker lite med PICBasic Pro. Så ja det är låg nivå. Efter att ha kolla i datablad osv så blir jag inte riktigt klar över hur jag skall koppla upp den på min experimentplatta. Tänkte programmera den med PICkit2 programmeraren. Och behöver hjälp med hur jag skall koppla. Det är 2 Vdd och Vss på PIC16F887 och jag vet inte varför. Jag missar säkert något väldigt enkelt. Behöver bara en knuff åt rätt håll.
Senast redigerad av Glycol 14 februari 2009, 10:05:25, redigerad totalt 1 gång.
Re: PIC18F887 Problem
> Det är 2 Vdd och Vss på PIC18F887 och jag vet inte varför.
Därför att en av varje inte räcker till.
> Och behöver hjälp med hur jag skall koppla.
Vad var det mer exakt i kapitel 3 i PICkit2 manualen som var oklart ??
Generella rallarsvingar leder ingenstans, var mer konkret kring vad som är oklart
så att vi vet vad det är som ska svaras på.
> Efter att ha kolla i datablad osv så blir jag inte riktigt klar över.....
Igen, *vad* är oklart ? Kapitel, sidnummer, citat eller liknande.
16F887 är väl trevlig, men en 40-pinnare är lite klumpig på labbplattan, en 16F886
hade varit enklare (eller någon annan 28 pinnare). Men får att bara ha något att komma
igång med så hade en 16, 18 eller 20 pinnare räckt bra...
Därför att en av varje inte räcker till.
> Och behöver hjälp med hur jag skall koppla.
Vad var det mer exakt i kapitel 3 i PICkit2 manualen som var oklart ??
Generella rallarsvingar leder ingenstans, var mer konkret kring vad som är oklart
så att vi vet vad det är som ska svaras på.
> Efter att ha kolla i datablad osv så blir jag inte riktigt klar över.....
Igen, *vad* är oklart ? Kapitel, sidnummer, citat eller liknande.
16F887 är väl trevlig, men en 40-pinnare är lite klumpig på labbplattan, en 16F886
hade varit enklare (eller någon annan 28 pinnare). Men får att bara ha något att komma
igång med så hade en 16, 18 eller 20 pinnare räckt bra...
Re: PIC18F887 Problem
Har nu studerat PICdatabladet ytterligare och fått en del svar. Hade missat kapitel 3 i manualen för själv programmeraren. Eller rättare sagt jag hade inte den manualen. CD:en jag fick med funkade inte så jag laddade ner så mycket jag kunde från nätet. Nu vet jag vilka anslutningar som skall dras ut till stiftlisten för programmeraren. Eftersom VDD och VSS har dubbla anslutningar skall de bara anslutas till gemensan GND och +5V. En av VDD skall även anslutas mot programmeraren. Är det rätt så långt?
Skall bara göra en enkel blinka LED grej till en PC-baserad robot. Kändes onödigt med usb-I/O kort för det
Och tanken var från början att prova den enklaste PIC jag kunde få tag i på Kjell. Jag fick dessa av misstag, men eftersom de har mer portar kan jag de som behövs för ICSP endast för det. Max ström dragen från I/O portarna är 90 mA, kör jag 30 LEDs rinnande så klarar jag att driva direkt från PICen via lämplig resistor, skall jag tända alla samtidigt måste jag ha transistor på utgångarna.
Har jag tänkt fel nu så rätta mig!!
Jag är som sagt total nybörjare, har bara programmerat PICar med färdiga program på jobbet. När jag lär mig lite mer kommer jag nog att kunna ställa lite bättre frågor hoppas jag.
Skall bara göra en enkel blinka LED grej till en PC-baserad robot. Kändes onödigt med usb-I/O kort för det

Och tanken var från början att prova den enklaste PIC jag kunde få tag i på Kjell. Jag fick dessa av misstag, men eftersom de har mer portar kan jag de som behövs för ICSP endast för det. Max ström dragen från I/O portarna är 90 mA, kör jag 30 LEDs rinnande så klarar jag att driva direkt från PICen via lämplig resistor, skall jag tända alla samtidigt måste jag ha transistor på utgångarna.
Har jag tänkt fel nu så rätta mig!!
Jag är som sagt total nybörjare, har bara programmerat PICar med färdiga program på jobbet. När jag lär mig lite mer kommer jag nog att kunna ställa lite bättre frågor hoppas jag.
Re: PIC18F887 Problem
> En av VDD skall även anslutas mot programmeraren. Är det rätt så långt?
"En av" ? De är ju ihoppkopplade i alla fall till samma matning, Och det är
den matningen du använder till progammeraren, inte en av Vdd pinnarna
specifikt.
> skall jag tända alla samtidigt måste jag ha transistor på utgångarna.
Nja, bara om du vill köra en massa ström, men varför det ?
Det räcker ju med att du ser att lysdioderna tänds. De flesta
syns bra med bara några mA.
"En av" ? De är ju ihoppkopplade i alla fall till samma matning, Och det är
den matningen du använder till progammeraren, inte en av Vdd pinnarna
specifikt.
> skall jag tända alla samtidigt måste jag ha transistor på utgångarna.
Nja, bara om du vill köra en massa ström, men varför det ?
Det räcker ju med att du ser att lysdioderna tänds. De flesta
syns bra med bara några mA.
Re: PIC18F887 Problem
Antar det är 16F887 Du menar, vad jag vet finns det ingen 18F887.
Var har Du hittat 90mA? Det datablad jag har säger något annat.
En enskild pinne får max utsättas för 25mA och strömmen in i Vdd får vara max 250mA. Detta är "Absolute maximum ratings" och de värdena skall Du inte lägga konstruktionen på. 15mA per pinne är nog mera lagom, samt en bit under 200mA totalt. Max ström ut ur Vss är 300mA, så den kan nog sänka en bit över 200mA utan att krokna.
För 30 LED's så behövs det ingen klumpig 40-taggare, Du klarar det på 6 pinnar om Du gör det smart, så en 14-taggare skulle räcka. Skall bara 1 tändas samtidigt så behövs inga transistorer. Med sådana kan Du driva 15mA per LED utan begränsningar. 15mA och 1/6 mux ger bra ljus med moderna dioder.
Sätt bara inte muxade LED's på PGC/PGD, då är det upplagt för problem p.g.a. allt för mycket kapacitans mellan dessa.
Var har Du hittat 90mA? Det datablad jag har säger något annat.
En enskild pinne får max utsättas för 25mA och strömmen in i Vdd får vara max 250mA. Detta är "Absolute maximum ratings" och de värdena skall Du inte lägga konstruktionen på. 15mA per pinne är nog mera lagom, samt en bit under 200mA totalt. Max ström ut ur Vss är 300mA, så den kan nog sänka en bit över 200mA utan att krokna.
För 30 LED's så behövs det ingen klumpig 40-taggare, Du klarar det på 6 pinnar om Du gör det smart, så en 14-taggare skulle räcka. Skall bara 1 tändas samtidigt så behövs inga transistorer. Med sådana kan Du driva 15mA per LED utan begränsningar. 15mA och 1/6 mux ger bra ljus med moderna dioder.
Sätt bara inte muxade LED's på PGC/PGD, då är det upplagt för problem p.g.a. allt för mycket kapacitans mellan dessa.
Re: PIC18F887 Problem
Marta du har helt rätt det är 16F887 jag menar. Skall genast ändra rubriken.
Jag hittade infon på sidan 247 i databladet. Laddade ner det för 2 dagar sedan från Microchip.
Hur löser man det rent kopplingsmässigt med en mindre PIC. Jag fick dessa av misstag men jag har några 16F690 också.
Sodjan: Tänkte vad du menade men skrev något annat. Jag menade att istället för att koppla programmeraren till den gemensam 5v från regulatorn så kopplade jag mot en av VDD pinnarna. Blir samma sak i verkligheten. Satt och stirra lite på kopplingsplattan när jag skrev inlägget
Jag hittade infon på sidan 247 i databladet. Laddade ner det för 2 dagar sedan från Microchip.
Hur löser man det rent kopplingsmässigt med en mindre PIC. Jag fick dessa av misstag men jag har några 16F690 också.
Sodjan: Tänkte vad du menade men skrev något annat. Jag menade att istället för att koppla programmeraren till den gemensam 5v från regulatorn så kopplade jag mot en av VDD pinnarna. Blir samma sak i verkligheten. Satt och stirra lite på kopplingsplattan när jag skrev inlägget

Re: PIC16F887 Problem
Hämtade nytt datablad och det stämmer, Microchip har sänkt specifikatonen för drivförmågan hos denna krets (och sannolikt flera andra
) till mindre än hälften. Lite förvånande med tanke på att det är ett chip med dubbla pinnar för matningen. Nu är det bara spekulationer, men undrar om det kan ha att göra med t.ex. A/D-offset o.dyl eller verkligen handlar om att det säger tjoff vid de tidigare angivna strömmarna. Hur som helst inte bra, det begränsar verkligen möjligheterna att driva t.ex. LED-displayer.
För att driva många LED's med få pinnar så används TRIS-registerna för att styra dem så samma pinne både kan driva individuella LED's när den drar åt ena hållet och den gemensamma för en grupp när den drar åt det andra. Säger inte så mycket, men googla på charlieplex så hittar Du massor om det.
Kanske inget för nybörjare, men meningen är ju att komma vidare och lära sig mera. På det här kan Du lära både timer och interrupt såväl som mycket annat. Betydligt mera givande än att blinka LED's med en pinne till varje.
16F630 kan vara en lämplig krets, den är fortfarande specad 200mA, men vilken som helst går bra så länge den klarar strömmarna. En klen PIC som kräver drivtrissor åt båda hållen är knappast lämplig för t.ex. vita LED's med 3.5V spänningsfall. Blir inte många mV kvar för seriemotståndet, så toleransen mot diverse variationer och blir allt för liten.

För att driva många LED's med få pinnar så används TRIS-registerna för att styra dem så samma pinne både kan driva individuella LED's när den drar åt ena hållet och den gemensamma för en grupp när den drar åt det andra. Säger inte så mycket, men googla på charlieplex så hittar Du massor om det.
Kanske inget för nybörjare, men meningen är ju att komma vidare och lära sig mera. På det här kan Du lära både timer och interrupt såväl som mycket annat. Betydligt mera givande än att blinka LED's med en pinne till varje.
16F630 kan vara en lämplig krets, den är fortfarande specad 200mA, men vilken som helst går bra så länge den klarar strömmarna. En klen PIC som kräver drivtrissor åt båda hållen är knappast lämplig för t.ex. vita LED's med 3.5V spänningsfall. Blir inte många mV kvar för seriemotståndet, så toleransen mot diverse variationer och blir allt för liten.