Et PIC-kort er et færdiglavet kredsløbskort, der bruger en Microchip PIC-mikrocontroller. Den inkluderer strømregulering, en clock-kilde, et reset-kredsløb, ICSP-programmeringsben og grundlæggende I/O-forbindelser. Denne artikel forklarer PIC-familier, hardwareblokke, strømmuligheder, udvidelsesheaders, MPLAB X-opsætning, fejlfindingsunderstøttelse og platformsammenligninger i klar detalje.

PIC-bestyrelsesoversigt
Et PIC-kort er et færdiglavet kredsløbskort bygget omkring en Microchip PIC-mikrocontroller. Den inkluderer det understøttende hardware, der er nødvendigt for stabil drift, såsom strømregulering, en clock-kilde, et reset-kredsløb, et programmeringsinterface og grundlæggende input/output-forbindelser.
Hovedmålet med et PIC-kort er at forenkle udviklingen. I stedet for at bygge alle understøttende kredsløb fra bunden, giver printkortet et pålideligt udgangspunkt for at teste firmware, tjekke signaler og bygge prototyper. Dette gør PIC-kort nyttige til læring, produktudvikling og test af kontrolsystemer.
PIC-mikrocontrollerkerne og familier brugt på PIC-kort

I centrum af hvert PIC-kort er PIC-mikrocontrolleren, som kører firmwaren og styrer printkortets I/O. PIC-enheder bruger en Harvard-arkitektur, hvor programhukommelse og datahukommelse er adskilte. Dette hjælper PIC-kort med at levere forudsigelig timing og stabil adfærd i kontrolapplikationer. PIC-kort fås med forskellige PIC-familier afhængigt af det nødvendige ydelsesniveau:
• PIC16-boards er velegnede til grundlæggende kontrolopgaver og lavprisprojekter.
• PIC18-kort giver bedre hastighed og flere indbyggede perifere enheder til udvidelse.
• dsPIC33-kort understøtter avancerede timing- og motor-/kontrolfunktioner, herunder digital signalbehandling.
• PIC32-kort tilbyder 32-bit ydeevne, større hukommelse og stærkere kommunikationsunderstøttelse.
Grundlæggende hardwareblokke på et PIC-kort

Strømregulering
Et PIC-kort inkluderer strømregulering for at holde spændingen stabil for PIC-mikrocontrolleren og andre dele på printpladen. Den tager strøm fra USB eller en ekstern DC-kilde og omdanner den til en stabil 3,3 V eller 5 V strømforsyning. Dette hjælper printkortet med at køre jævnt og forhindrer problemer forårsaget af ustabil strøm.
Ur-kilde
Clock-kilden styrer timingen af PIC-mikrocontrolleren. Mange PIC-kort bruger en krystal eller resonator for at give et stabilt systemur. Nogle kort tillader også skift mellem et internt ur og et eksternt ur ved hjælp af jumpere eller indstillinger, afhængigt af PIC og printkortets design.
Reset (MCLR) kredsløb
Reset-kredsløbet hjælper PIC-mikrocontrolleren med at starte korrekt hver gang der tilføres strøm. Den inkluderer ofte en pull-up-modstand og kan også indeholde en kondensator og en reset-knap. Denne opsætning holder reset-pinnen stabil og tillader en ren manual at nulstille, når det er nødvendigt.
ICSP programmeringsheader
De fleste PIC-kort inkluderer en ICSP-header, som står for In-Circuit Serial Programming. Denne header leverer de vigtigste programmerings- og fejlsøgningssignaler, der er nødvendige for at indlæse kode i PIC-mikrocontrolleren. Benene inkluderer ofte MCLR/VPP, PGC, PGD, strøm og jord, som forbindes til værktøjer som PICkit, MPLAB Snap eller ICD4.
Grundlæggende tastaturindgang og -udgang
Et PIC-kort har ofte allerede installerede grundlæggende ind- og udgangsdele, såsom LED'er og trykknapper. Disse indbyggede dele gør det lettere at tjekke, om programmet kører, og om PIC læser inputtene korrekt, uden at der straks skal bruges ekstra dele.
Beskyttelseskomponenter
Nogle PIC-kort tilføjer beskyttelsesdele for at forhindre skader fra almindelige elektriske problemer. Disse kan omfatte dioder, sikringer eller transientbeskyttelseskomponenter. De hjælper med at beskytte printkortet mod problemer som omvendt polaritet, strømstød eller statisk afladning på strømledninger og I/O-ben.
PIC-kortfamilier og almindelige platformtyper

Curiosity Nano-boards
Curiosity Nano-kort er små PIC-kort, der drives af USB. Mange inkluderer en indbygget programmør og debugger, så du kan uploade kode og teste PIC-kortet uden ekstra hardware. De er også nemme at forbinde til grundlæggende kredsløb.
Curiosity og Explorer-stil boards
Disse PIC-kort er større og understøtter flere ben og funktioner. De har ekstra headers, jumpers og connectors til hurtig opsætning. Mange versioner understøtter PIC16- og PIC18-enheder.
Explorer 16/32 Udviklingssæt
Explorer 16/32-kits understøtter dsPIC- og PIC32-enheder. De bruger plug-in-moduler, så hoved-PIC-kortet kan arbejde med forskellige chips. Dette gør platformen fleksibel til test og fejlfinding.
Motorstyrings- og Effektkontrolsæt
Disse PIC-kort er bygget til kontrol- og strømopgaver. De inkluderer ofte gate-drivere, strømsensordele og feedback-input. Mange bruger dsPIC-enheder for stabil timing og hurtig kontrol.
Tredjeparts PIC-kort
Tredjeparts PIC-kort laves af andre mærker eller fællesskaber. De kan tilføje ekstra hardwarefunktioner, samtidig med at de stadig understøtter PIC-programmering via MPLAB og ICSP.
PIC-kortets strømmuligheder og spændingsvalg

De fleste PIC-kort kan køre fra mere end én strømkilde. En almindelig mulighed er USB-strøm, hvor printkortet får 5 V fra en computer eller USB-adapter. PIC-kortet bruger derefter en indbygget regulator til at producere den korrekte spænding, som PIC-mikrocontrolleren og andre dele på printkortet har brug for.
Mange PIC-kort understøtter også ekstern jævnstrøm via et løbstik eller en terminalblok. Dette er nyttigt, når printkortet har brug for en stærkere strømkilde, eller når opsætningen ikke er tilsluttet en computer. Nogle printkort inkluderer jumpere eller kontakter, der lader dig vælge mellem USB-strøm og ekstern strøm. Disse kontroller kan også lade dig vælge 3,3 V eller 5 V logik, afhængigt af hvad PIC-mikrocontrolleren og de tilsluttede dele kræver.
PIC-korts I/O-headere og udvidelsesforbindelser

• GPIO-breakout-headers: Rækker af standard 0,1" pinheaders frembringer PIC-porte som PORTA og PORTB. Det giver dig mulighed for at forbinde jumper-kabler, tilslutte pinkabler eller tilslutte tilføjelseskort uden at lodde direkte på PIC-chippen.
• Kommunikationsheaders: Mange PIC-kort inkluderer dedikerede ben eller stik til almindelige kommunikationssignaler. Disse kan understøtte UART, SPI, I²C, CAN eller USB, så eksterne kort kan forbindes med en stabil og organiseret ledningsopsætning.
• Analoge inputben: Analoge ben er mærket med deres ADC-kanalnavne og inkluderer referenceben, når det er nødvendigt. Dette hjælper dig med at forbinde analoge signaler korrekt og undgå at blande dem med kun digitale ben.
• PIM- eller socket-interfaces: Nogle mere avancerede PIC-kort bruger en socket- eller PIM-lignende slot, hvor et plug-in modul holder PIC-enheden. Dette gør det muligt at ændre PIC-modellen, samtidig med at de samme baseboards og stik bevares.
• Udvidelsesstik: For at understøtte tilføjelser inkluderer nogle PIC-kort udvidelsesheaders i standardlayouts, såsom Arduino-stil pin-afstand. Dette hjælper dig med at genbruge eksisterende tilbehørskort og forbinde ekstra funktioner ved hjælp af et velkendt header-format.
PIC-kortprogrammeringsworkflow i MPLAB X

Installer MPLAB X IDE
MPLAB X IDE er Microchips primære software til at skrive, bygge og teste kode til PIC-kort. Den understøtter mange PIC-familier og holder alt samlet i ét projektarbejdsområde.
Installer den korrekte XC-kompilator
PIC-kort kræver den korrekte XC-kompilator baseret på PIC-enhedstypen. XC8 er til 8-bit PIC'er, XC16 til 16-bit PIC'er, og XC32 til 32-bit PIC'er. At bruge den rigtige compiler hjælper koden med at bygge korrekt.
Opret et nyt PIC-kortprojekt
Opret et nyt projekt inde i MPLAB X, og vælg derefter den præcise PIC-mikrocontroller, der skal bruges på dit board. Derefter vælger du programmøren eller debuggeren, såsom PICkit, Snap eller en indbygget debugger, hvis den er tilgængelig.
Konfigurer PIC-indstillinger ved hjælp af MCC
MPLAB Code Configurator (MCC) hjælper med at opsætte nødvendige funktioner uden at skulle indtaste alle indstillinger manuelt. Den kan konfigurere clock, pin-funktioner, timere, ADC og moduler som UART, og derefter generere den grundlæggende opsætningskode automatisk.
Skriv og byg PIC-firmwaren i C
Skriv dit program i C og byg det ind i en fil, som PIC-kortet kan køre. Dette trin inkluderer tilføjelse af hovedprogramlogikken og styring af de funktioner, du ønsker at bruge.
Program og fejlfinding gennem ICSP
De fleste PIC-kort understøtter programmering via ICSP. I MPLAB X kan du flashe koden, køre den, sætte breakpoints og tjekke variabelværdier, mens programmet kører.
PIC-board on-board fejlfinding og ICSP-support

Mange PIC-kort understøtter fejlfinding via ICSP ved hjælp af værktøjer som PICkit eller ICD-enheder, og nogle kort har indbygget debugging-hardware. Debugging tillader dybere testning end blot basal programmering. Med hardwarefejlfinding kan du:
• sætte breakpoints for at pause firmware-eksekveringen
• køre kode trin for trin
• overvåge variabler og registre i realtid
• nulstille og genteste adfærd under afbrydelser og timing-hændelser
PIC-kort vs Arduino, STM32 og Raspberry Pi Pico sammenligning
| Feature / Aspekt | PIC-bræt | Arduino (UNO-stil) | STM32 Udviklingsboard | Hindbær Pi Pico |
|---|---|---|---|---|
| Kernearkitektur | 8/16/32-bit PIC eller dsPIC | For det meste 8-bit AVR (nogle bruger ARM) | 32-bit ARM Cortex-M | Dual-core ARM Cortex-M0+ |
| Værktøjskæde | MPLAB X + XC-kompilatorer + MCC | Arduino IDE + libraries | STM32CubeIDE / Keil / andre værktøjer | C/C++ SDK eller MicroPython |
| Debug-support | ICSP med stærke hardware-fejlsøgningsmuligheder | Begrænset fejlfinding kræver ofte ekstra værktøjer | SWD med avanceret fejlfinding | SWD-fejlfinding med ekstern probe |
| Typiske styrker | Stabil kontrol, industriel brug, stærk støjtolerance | Simpel læring og hurtig projektopsætning | Højtydende, avancerede kontrolfunktioner | Billige, begyndervenlige, fleksible kodningsmuligheder |
| Fællesskabsfokus | Professionelt arbejde plus avanceret hobbybrug | Stort producent- og begynderfællesskab | Professionel brug med lidt hobbystøtte | Stort hobby- og læringsfællesskab |
| Levetid/livscyklus | Ofte understøttet for lange produktlevetider | God til læring, mindre fokuseret på langvarig støtte | Almindeligt i langvarig industriel forsyning | Understøttet, men mere forbrugerdrevet |
PIC-kortlayout og kvalitetskontrol af byggeriet
• Stabilt effektdesign: Printkortet skal have ren regulering og korrekt filtrering for at undgå nulstillinger og ADC-støj.
• God decoupling-placering: Kort med korrekt kondensatorplacering giver mere pålidelig drift under koblingsbelastninger.
• Fast jordforbindelse: Et godt jordlayout hjælper med at reducere støj i ADC-aflæsninger og kommunikationssignaler.
• Tilgængelige ICSP-forbindelser: Let tilgængelige ICSP-ben gør programmering og fejlfinding hurtigere og mere konsistent.
• Gennemsigtig pinmærkning og headers: Klare etiketter reducerer ledningsfejl og fremskynder prototyping.
• Testpunkter og udvidelsesunderstøttelse: Kort med testadgang gør det lettere at verificere spænding, signaler og kommunikationslinjer.
Konklusion
PIC-kort kombinerer en PIC-mikrocontroller med stabil strøm, timing, nulstilling, ICSP-programmering og indbyggede I/O-forbindelser. De understøtter forskellige PIC-familier og printkorttyper, tilbyder USB- eller eksterne strømmuligheder og giver udvidelse via mærkede headers. Med MPLAB X, XC-kompilatorer, MCC og ICSP-fejlfinding muliggør de stabil test og fejlfinding.
Ofte stillede spørgsmål [FAQ]
Kan et PIC-kort programmere en tom PIC-chip?
Ja, hvis printkortet understøtter ICSP eller har en socket/modul til den chip.
Kan jeg forbinde 5V-moduler til et 3.3V PIC-kort?
Kun hvis PIC I/O-benene er 5V-tolerante. Ellers brug niveauskift.
Hvorfor vil mit PIC-kort ikke programmere, selv med USB tilsluttet?
Almindelige årsager er et USB-kabel, forkert værktøjsvalg, ustabil spænding eller blokerede ICSP-ben.
Skal PIC-kort have drivere for at fungere i MPLAB X?
Nogle gør. Boards med indbyggede debuggers kan kræve, at drivere opdages.
Hvordan får jeg renere ADC-aflæsninger på et PIC-kort?
Brug kortslutning, solid jordforbindelse og filtrering, hvis nødvendigt.
Hvad gør et PIC-kort godt til langsigtet udvikling?
God dokumentation, aktiv MCU-understøttelse, stabil strømdesign og pålidelig fejlfinding.