Et PIC-kort er et ferdiglaget kretskort som bruker en Microchip PIC-mikrokontroller. Den inkluderer strømregulering, en klokkekilde, en reset-krets, ICSP-programmeringspinner og grunnleggende I/O-tilkoblinger. Denne artikkelen forklarer PIC-familier, maskinvareblokker, strømalternativer, utvidelseshoder, MPLAB X-oppsett, feilsøkingsstøtte og plattformsammenligninger i klar detalj.

Oversikt over PIC-styret
Et PIC-kort er et ferdiglaget kretskort bygget rundt en Microchip PIC-mikrokontroller. Den inkluderer støttemaskinvaren som trengs for stabil drift, som strømregulering, en klokkekilde, en reset-krets, et programmeringsgrensesnitt og grunnleggende inngang/utgang-tilkoblinger.
Hovedmålet med et PIC-kort er å forenkle utviklingen. I stedet for å bygge alle støttekretser fra bunnen av, gir kortet et pålitelig utgangspunkt for testing av fastvare, signalsjekk og bygging av prototyper. Dette gjør PIC-kort nyttige for læring, produktutvikling og testing av kontrollsystemer.
PIC-mikrokontrollerkjerne og familier brukt på PIC-kort

I sentrum av hvert PIC-kort er PIC-mikrokontrolleren, som kjører fastvaren og styrer kortets I/O. PIC-enheter bruker en Harvard-arkitektur, hvor programminne og dataminne er adskilt. Dette hjelper PIC-kort med å levere forutsigbar timing og stabil oppførsel i kontrollapplikasjoner. PIC-kort er tilgjengelige med ulike PIC-familier avhengig av nødvendig ytelse:
• PIC16-kort egner seg for grunnleggende kontrolloppgaver og lavkostnadsprosjekter.
• PIC18-kort gir bedre hastighet og flere innebygde periferiutstyr for utvidelse.
• dsPIC33-kort støtter avanserte timing- og motor-/kontrollfunksjoner, inkludert digital signalbehandling.
• PIC32-kort tilbyr 32-bits ytelse, større minne og sterkere kommunikasjonsstøtte.
Grunnleggende maskinvareblokker på et PIC-kort

Kraftregulering
Et PIC-kort inkluderer strømregulering for å holde spenningen stabil for PIC-mikrokontrolleren og andre deler på kortet. Den tar strøm fra USB eller en ekstern DC-kilde og konverterer den til en stabil 3,3 V eller 5 V strømforsyning. Dette hjelper kortet til å kjøre jevnt og forhindrer problemer forårsaket av ustabil strøm.
Klokkekilde
Klokkekilden styrer timingen til PIC-mikrokontrolleren. Mange PIC-kort bruker en krystall eller resonator for å gi en stabil systemklokke. Noen kort tillater også veksling mellom en intern klokke og en ekstern klokke ved hjelp av jumpere eller innstillinger, avhengig av PIC og kortdesign.
Reset (MCLR) krets
Tilbakestillingskretsen hjelper PIC-mikrokontrolleren å starte riktig hver gang strøm tilføres. Den inkluderer ofte en pull-up-motstand og kan også inkludere en kondensator og en reset-knapp. Dette oppsettet holder tilbakestillingspinnen stabil og lar en ren manual tilbakestilles når det trengs.
ICSP programmeringsheader
De fleste PIC-kort inkluderer en ICSP-header, som står for In-Circuit Serial Programming. Denne headeren gir hovedprogrammerings- og feilsøkingssignalene som trengs for å laste kode inn i PIC-mikrokontrolleren. Pinnene inkluderer vanligvis MCLR/VPP, PGC, PGD, strøm og jord, som kobles til verktøy som PICkit, MPLAB Snap eller ICD4.
Grunnleggende inn- og utgang på kortet
Et PIC-kort har ofte grunnleggende inngangs- og utgangsdeler allerede installert, som LED-lys og trykknapper. Disse innebygde delene gjør det enklere å sjekke om programmet kjører og om PIC leser inngangene riktig, uten å trenge ekstra deler med en gang.
Beskyttelseskomponenter
Noen PIC-kort legger til beskyttelsesdeler for å forhindre skade fra vanlige elektriske problemer. Disse kan inkludere dioder, sikringer eller overgangsbeskyttelseskomponenter. De hjelper til med å beskytte kortet mot problemer som omvendt polaritet, strømstøt eller statisk utladning på strømledninger og I/O-pinner.
PIC-kortfamilier og vanlige plattformtyper

Curiosity Nano-brett
Curiosity Nano-kort er små PIC-kort som drives av USB. Mange inkluderer innebygd programmerer og feilsøker, slik at du kan laste opp kode og teste PIC-kortet uten ekstra maskinvare. De er også enkle å koble til grunnleggende kretser.
Nysgjerrighet og oppdagelsesreisende tavler
Disse PIC-kortene er større og støtter flere pinner og funksjoner. De har ekstra headers, jumpers og kontakter for rask oppsett. Mange versjoner støtter PIC16- og PIC18-enheter.
Explorer 16/32 utviklingssett
Explorer 16/32-sett støtter dsPIC- og PIC32-enheter. De bruker plug-in-moduler slik at hoved-PIC-kortet kan fungere med forskjellige brikker. Dette gjør plattformen fleksibel for testing og feilsøking.
Motorstyrings- og kraftkontrollsett
Disse PIC-kortene er laget for kontroll- og strømoppgaver. De inkluderer ofte gatedrivere, strømsensorer og tilbakemeldingsinnganger. Mange bruker dsPIC-enheter for stabil timing og rask kontroll.
Tredjeparts PIC-kort
Tredjeparts PIC-kort lages av andre merker eller fellesskap. De kan legge til ekstra maskinvarefunksjoner samtidig som de fortsatt støtter PIC-programmering via MPLAB og ICSP.
PIC-kortets strømvalg og spenningsvalg

De fleste PIC-kort kan drives fra mer enn én strømkilde. Et vanlig alternativ er USB-strøm, hvor kortet får 5 V fra en datamaskin eller USB-adapter. PIC-kortet bruker deretter en innebygd regulator for å produsere riktig spenning som PIC-mikrokontrolleren og andre deler på kortet trenger.
Mange PIC-kort støtter også ekstern likestrøm gjennom en løpsjack eller en terminalblokk. Dette er nyttig når kortet trenger en sterkere strømkilde eller når oppsettet ikke er koblet til en datamaskin. Noen kort har jumpere eller brytere som lar deg velge mellom USB-strøm og ekstern strøm. Disse kontrollene kan også la deg velge 3,3 V eller 5 V logikk, avhengig av hva PIC-mikrokontrolleren og tilkoblede deler krever.
PIC-kort I/O-headere og ekspansjonstilkoblinger

• GPIO-bryterheaders: Rader med standard 0,1" pinneheadere gir ut PIC-porter som PORTA og PORTB. Dette lar deg koble til startkabler, koble til pinnekabler eller feste tilleggskort uten å lodde direkte til PIC-brikken.
• Kommunikasjonsheaders: Mange PIC-kort inkluderer dedikerte pinner eller kontakter for vanlige kommunikasjonssignaler. Disse kan støtte UART, SPI, I²C, CAN eller USB, slik at eksterne kort kan kobles til med en stabil og organisert ledningsoppsett.
• Analoge inngangspinner: Analoge pinner er merket med sine ADC-kanalnavn og inkluderer referansepinner ved behov. Dette hjelper deg å koble analoge signaler riktig og unngå å blande dem med kun digitale pinner.
• PIM- eller sokkelgrensesnitt: Noen mer avanserte PIC-kort bruker en sokkel eller PIM-lignende spor hvor en pluggmodul holder PIC-enheten. Dette gjør det mulig å endre PIC-modellen samtidig som man beholder samme baseboard og kontakter.
• Ekspansjonskontakter: For å støtte tillegg inkluderer noen PIC-kort ekspansjonsheadere i standardoppsett, som Arduino-stil pinneavstand. Dette hjelper deg å gjenbruke eksisterende tilbehørskort og koble til ekstra funksjoner ved hjelp av et kjent header-format.
PIC-kortprogrammeringsarbeidsflyt i MPLAB X

Installer MPLAB X IDE
MPLAB X IDE er Microchips hovedprogramvare for å skrive, bygge og teste kode for PIC-kort. Den støtter mange PIC-familier og holder alt samlet i ett prosjektarbeidsområde.
Installer riktig XC-kompilator
PIC-kort trenger riktig XC-kompilator basert på PIC-enhetstypen. XC8 er for 8-bits PIC-er, XC16 er for 16-bits PIC-er, og XC32 er for 32-bits PIC-er. Å bruke riktig kompilator hjelper koden å bygges riktig.
Opprette et nytt PIC-kortprosjekt
Opprett et nytt prosjekt inne i MPLAB X, og velg deretter den nøyaktige PIC-mikrokontrolleren som brukes på kortet ditt. Etter det velger du programmerer eller feilsøker, som PICkit, Snap, eller en innebygd feilsøker hvis tilgjengelig.
Konfigurer PIC-innstillinger med MCC
MPLAB Code Configurator (MCC) hjelper med å sette opp nødvendige funksjoner uten å måtte skrive inn alle innstillinger manuelt. Den kan konfigurere klokke, pin-funksjoner, timere, ADC og moduler som UART, og deretter generere grunnleggende oppsettkode automatisk.
Skriv og bygg PIC-fastvaren i C
Skriv programmet ditt i C og bygg det inn i en fil som PIC-kortet kan kjøre. Dette steget inkluderer å legge til hovedprogram-logikken og kontrollere funksjonene du ønsker å bruke.
Program og feilsøking gjennom ICSP
De fleste PIC-kort støtter programmering gjennom ICSP. I MPLAB X kan du flashe koden, kjøre den, sette breakpoints og sjekke variabelverdier mens programmet kjører.
Feilsøking av PIC-kort om bord og ICSP-støtte

Mange PIC-kort støtter feilsøking gjennom ICSP ved bruk av verktøy som PICkit eller ICD-enheter, og noen kort inkluderer innebygd feilsøkingsutstyr. Feilsøking tillater dypere testing enn grunnleggende programmering. Med maskinvarefeilsøking kan du:
• sette breakpoints for å pause firmware-kjøringen
• kjør kode steg for steg
• overvåke variabler og registre i sanntid
• tilbakestille og teste oppførsel på nytt under avbrudd og tidshendelser
Sammenligning av PIC-kort vs Arduino, STM32 og Raspberry Pi Pico
| Funksjon / Aspekt | PIC-tavle | Arduino (UNO-stil) | STM32 utviklingskort | Raspberry Pi Pico |
|---|---|---|---|---|
| Kjernearkitektur | 8/16/32-bits PIC eller dsPIC | For det meste 8-bits AVR (noen bruker ARM) | 32-bits ARM Cortex-M | Dual-core ARM Cortex-M0+ |
| Verktøykjede | MPLAB X + XC-kompilatorer + MCC | Arduino IDE + libraries | STM32CubeIDE / Keil / andre verktøy | C/C++ SDK eller MicroPython |
| Feilsøkingsstøtte | ICSP med sterke maskinvarefeilsøkingsmuligheter | Begrenset feilsøking krever ofte ekstra verktøy | SWD med avansert feilsøking | SWD-feilsøking med ekstern probe |
| Typiske styrker | Stabil kontroll, industriell bruk, sterk støytoleranse | Enkel læring og rask prosjektoppsett | Høyytelse, avanserte kontrollfunksjoner | Rimelige, nybegynnervennlige, fleksible kodealternativer |
| Fellesskapsfokus | Profesjonelt arbeid pluss avansert hobbybruk | Stort produsent- og nybegynnermiljø | Profesjonell bruk med litt hobbystøtte | Stort hobby- og læringsfellesskap |
| Levetid/livssyklus | Ofte støttet for lang produktlevetid | Bra for læring, mindre fokusert på langsiktig støtte | Vanlig i langsiktig industriell forsyning | Støttet, men mer forbrukerdrevet |
PIC-kortoppsett og kvalitetssjekker for bygget
• Stabil effektdesign: Kortet bør ha ren regulering og riktig filtrering for å unngå tilbakestillinger og ADC-støy.
• God dekoblingsplassering: Kort med korrekt kondensatorplassering gir mer pålitelig drift under koblingslaster.
• Fast jording: En god jordingsutforming bidrar til å redusere støy i ADC-avlesninger og kommunikasjonssignaler.
• Tilgjengelige ICSP-tilkoblinger: Lett tilgjengelige ICSP-pinner gjør programmering og feilsøking raskere og mer konsistent.
• Gjennomsiktig merking og overskrifter: Gjennomsiktige etiketter reduserer ledningsfeil og fremskynder prototyping.
• Testpunkter og utvidelsesstøtte: Kort med testtilgang gjør det enklere å verifisere spenning, signaler og kommunikasjonslinjer.
Konklusjon
PIC-kort kombinerer en PIC-mikrokontroller med stabil strøm, timing, reset, ICSP-programmering og innebygde I/O-tilkoblinger. De støtter ulike PIC-familier og korttyper, tilbyr USB eller eksterne strømalternativer, og gir utvidelse gjennom merkede headers. Med MPLAB X, XC-kompilatorer, MCC og ICSP-feilsøking tillater de stabil testing og feilsøking.
Ofte stilte spørsmål [FAQ]
Kan et PIC-kort programmere en tom PIC-brikke?
Ja, hvis kortet støtter ICSP eller har en sokkel/modul for den brikken.
Kan jeg koble 5V-moduler til et 3,3V PIC-kort?
Bare hvis PIC I/O-pinnene er 5V-tolerante. Ellers, bruk nivåforskyvning.
Hvorfor vil ikke PIC-kortet mitt programmere selv med USB tilkoblet?
Vanlige årsaker er en USB-kabel som kun bruker strøm, feil verktøyvalg, ustabil spenning eller blokkerte ICSP-pinner.
Trenger PIC-kort drivere for å fungere i MPLAB X?
Noen gjør det. Kort med innebygde feilsøkere kan kreve at drivere oppdages.
Hvordan får jeg renere ADC-målinger på et PIC-kort?
Bruk kortslutning, solid jording og filtrering om nødvendig.
Hva gjør et PIC-kort godt for langsiktig utvikling?
God dokumentasjon, aktiv MCU-støtte, stabil strømdesign og pålitelig feilsøking.