Sida 1 av 1
Pic12f675
Postat: 27 oktober 2006, 09:26:07
av newbadboy
Hej
Om man vill i denna pic använda sig av den interna oscillatorn, är det då OSCCAl som def detta.
I mitt lilla bygge behöver jag en utgång och två ingångar av typen IO. Har kollat i databladet men är inte helt hundra. Är det TRISIO som styr detta. Kommer inte fram till hur jag skall def portarnta
Postat: 27 oktober 2006, 10:46:53
av JimmyAndersson
"Om man vill i denna pic använda sig av den interna oscillatorn, är det då OSCCAl som def detta."
Kolla databladet på sidan 16 (18 enligt acrobat) där står:
"The Oscillator Calibration register (OSCCAL) is used to
calibrate the internal 4 MHz oscillator."
Så svaret är nej.
Titta istället på sidan 52 (54 enligt acrobat).
"I mitt lilla bygge behöver jag en utgång och två ingångar av typen IO. Har kollat i databladet men är inte helt hundra."
På sidan 19 (21 enligt acrobat) i databladet så står det:
"Setting a TRISIO bit (= 1) will make the corresponding GPIO pin an input (i.e., put the corresponding output driver in a Hi-impedance mode). Clearing a TRISIO bit (= 0) will make the corresponding GPIO pin an output (i.e., put the contents of the output latch on the selected pin). The exception is GP3, which is input only"
Snabbt översatt: Sätter man en TRISIO bit (=1) så blir motsvarande GPIO en ingång. Om man istället "nollar" en TRISIO bit, så blir motsvarande GPIO-pinne en utgång.
Mycket prat om datablad, men det är sodjan som har lärt mig.

Postat: 27 oktober 2006, 21:36:11
av bengt-re
Visst styr TRISIO, men config-bitarna avgör vilken osc som skall användas. och OSC-pinnarna går naturligtvis inte använda som GPIO om du kör med osc på dem... Står tydligt och klart i databladet
Postat: 31 oktober 2006, 16:00:02
av newbadboy
jag skrev
CONFIG = 0x08D4;
men kompilatorn vill inte godkänna detta.. hmmm
Postat: 31 oktober 2006, 19:19:28
av sodjan
Att koda CONFIG på det sättet är generellt soppigt !
Det är fullständigt omöjligt att "se" vad som är "på" resp "av"...
Använd symbolerna som är definierade i INC filen för processorn.
Och vad är det för "kompilator" du skriver om ?????
Postat: 1 november 2006, 01:14:18
av grapetonix
Konfigurationsordet måste ställas in med antingen en specialflagga i programmeringsspråket eller, vanligare, från menyer i programmet du använder för att ladda upp koden till PIC:en. Tanken är ju att konfigurationsordet INTE ska tillhöra programkoden. Utan konfigurationsordet vet inte picen vilken oscillator, resetläge med mera den ska använda, och vet den inte det kör den heller ingen programkod.
Postat: 1 november 2006, 13:14:02
av sodjan
> Konfigurationsordet måste ställas in med antingen en specialflagga i programmeringsspråket
Bäst.
Det heter assembler/kompilator direktiv. Och det är inget "special" med det.
> eller, vanligare, från menyer i programmet du använder för att ladda upp koden till PIC:en.
Kanske var vanligt förr, men sämre. Det finns väldigt sällan någon anledning att
ändra CONFIG från det som applikationen är byggd för. Att lägga inställningen
av CONFIG *utanför* källkoden ställer bara till det och öppnar för helt onödiga misstag.
> Tanken är ju att konfigurationsordet INTE ska tillhöra programkoden.
Varje HEX fil ska/bör vara komplett inkl konfiguration.
Absolut enklast är att inkludera CONFIG inställningarna i källkoden.
OCh det är överlägset vanligast att man gör så.
> Utan konfigurationsordet vet inte picen vilken oscillator, resetläge med mera den ska använda,
Jodå, det vet den visst, den användar det som råkar vara default efter en "erase all".
Inte säkert att det är det som du vill ha, men det är en helt annat fråga.
> och vet den inte det kör den heller ingen programkod.
Jodå, det kan den visst göra, om default värderna för config bitarna fungerar i den aktuella kopplingen
(i och för sig inte speciellt sannolikt, men det är en annan fråga...

).
Postat: 1 november 2006, 17:24:11
av newbadboy
Det är mikroC jag använder
Postat: 1 november 2006, 17:26:38
av sodjan
Jaha ??
Och "CONFIG = 0x08D4;" är korrekt syntax enligt dokumentationen !!??
Postat: 1 november 2006, 17:37:08
av Icecap
MikroC->Project->Edit Project...
Sen är det bara att ställa parameterna rätt....