Pic12f675
Pic12f675
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
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
- JimmyAndersson
- Inlägg: 26586
- Blev medlem: 6 augusti 2005, 21:23:33
- Ort: Oskarshamn (En bit utanför)
- Kontakt:
"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.
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.

- grapetonix
- Inlägg: 293
- Blev medlem: 14 juli 2004, 17:20:50
- Skype: grapetonix
- Ort: Hägersten, Stockholm
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.
> 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...
).
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...
