IC-programmering under PCBA-behandling

IC-programmering under PCBA-behandling

Figur 1. IC-programmering under PCBA-behandling

Sidst opdateret: Maj 2026 · En produktionsvejledning til indlejrede ingeniører og hardware sourcing-teams

Der er to praktiske måder at indlæse firmware i chippene på et printkort under PCBA: forprogrammer enhederne før placering (off-board, på en gang eller automatiseret programmerer) eller programmer dem in-circuit efter samling via en debug-grænseflade såsom JTAG, SWD, ISP eller en seriel bootloader. Forprogrammering er hurtig på linjen og passer til store mængder med stabil firmware; in-circuit programmering giver dig mulighed for at indlæse det seneste image, kalibrere og serialisere hver enhed, men kræver tilgængelige programmeringspins designet ind i printkortet. De fleste moderne samlinger bruger in-circuit programmering på teststationen, fordi det binder firmware, kalibrering og sporbarhed sammen på det færdige printkort.

De to tilgange i korte træk:
• Ekstern forprogrammering — chips programmeret i en sokkel/et automatiseret system før SMT. Hurtig cyklus, ingen adgang på kortet nødvendig, men delene er dediceret til én firmwareversion.
• Programmering i kredsløb/system (ICSP/ISP) — programmerede chips efter Samling via JTAG/SWD/SPI/UART på kortet. Fleksibel, understøtter data pr. enhed, men kræver programmeringsadgang i layoutet.

Hvorfor IC-programmering er en del af PCBA-behandling

De fleste printkort, der bygges i dag, indeholder mindst én programmerbar enhed – en mikrocontroller, en MCU med integreret radio, en flashhukommelse, en FPGA-konfigurationsenhed eller en smart strømforsynings-/sensor-IC. Et enkelt samlet printkort er endnu ikke et fungerende produkt, før siliciummet indeholder den rigtige firmware. At folde programmering ind i PCBA – i stedet for at sende blanke printkort, som kunden kan flashe – sparer et trin, lader fabrikken verificere, at enheden fungerer ved funktionstesten, og tillader, at unikke data skrives ind i hver enhed. Spørgsmålet er ikke, om der skal programmeres under samling, men hvilken metode der passer til produktet.

Metode 1: Forprogrammering af eksterne IC'er

Ved off-board præprogrammering indlæses enheder med firmware, før de placeres på kortet. Dette gøres på en enhedsprogrammerer og i volumen på et automatiseret programmeringssystem , der trækker dele fra tape-and-reel, programmerer dem (ofte mange på én gang - "gruppe"-programmering), verificerer og omruller eller sætter dem i bakker til pick-and-place-maskinen.

  • Styrker: Meget hurtig på SMT-linjen (intet programmeringstrin ved samling), ingen indbygget programmeringsadgang kræves, høj kapacitet for stabil firmware.
  • Afvejninger: Dele er dedikeret til én firmwareversion, så en sen kodeændring betyder omprogrammering eller kassering af lager; håndtering tilføjer et trin; og data pr. enhed (serienumre, kalibrering) kan generelt ikke skrives på denne måde, fordi hver del er identisk.

Forprogrammering er fremragende til produkter i stor skala, hvis firmware er frosset fast, og til enheder, der er vanskelige at programmere i kredsløbet.

Metode 2: Programmering i kredsløbet/i systemet (ICSP/ISP)

In-circuit programmering — også kaldet in-system programmering (ISP) eller in-circuit seriel programmering (ICSP) — indlæser firmware, efter at enheden er loddet til kortet, via en lille programmeringsgrænseflade, der er placeret på samlingen. En programmerer tilsluttes en header eller et sæt testpuder, kortet får strøm, og firmwaren skrives og verificeres på plads.

  • Styrker: indlæser altid det aktuelle firmwarebillede; understøtter kalibrering og data pr. enhed; muliggør funktionel verifikation umiddelbart efter programmering; firmwareopdateringer kræver ingen omarbejdning af dele.
  • Afvejninger: Layoutet skal give adgang til programmering; det øger tiden ved en programmerings-/teststation; og deling af pins eller manglende pull-ups kan forårsage fejl, hvis de ikke designes omhyggeligt.

Dette er standardindstillingen for de fleste moderne designs, fordi den forener programmering, kalibrering og sporbarhed på det færdige printkort – og fordi firmware næsten altid udvikler sig.

Almindelige IC-programmeringsgrænseflader (JTAG, SWD, SPI)

grænseflade Typiske enheder Noter
SWD (2-leder) ARM Cortex-M MCU'er Kompakt (SWDIO/SWCLK + strøm/GND); også fejlfinding
JTAG MCU'er, FPGA'er, CPLD'er, grænsescanningskæder Kan programmere flash og teste forbindelser
SPI / internetudbyder AVR, SPI flash, konfigurationsenheder Se busdeling under programmering
ICSP Mikrochip PIC-familie Få ben; reserveret MCLR/PGC/PGD-adgang
UART / USB bootloader Mange MCU'er med indbygget bootloader Programmer over eksisterende serielle/USB-linjer
I²C EEPROM'er, smarte sensorer For konfigurations-/kalibreringsdata mere end kode

Forprogrammering vs. kredsløbsprogrammering: Hvilken skal man vælge?

Betragtning Foretrækker forudprogrammering Favoriserer in-circuit (ICSP)
Bind Høj, stabil lydstyrke Prototype til mellemstor volumen; blandede byggeri
Firmware-stabilitet Frossen, ændrer sig sjældent Udviklende billeder eller billeder pr. build
Data pr. enhed Ikke nødvendigt (identiske dele) Serienumre, MAC, kalibrering påkrævet
Bestyrelsesadgang Ingen programmeringsoverskrift ønsket Programmeringspads/header tilgængelige
Verifikation ved test Udføres separat Kombineret med FCT i én station

Mange programmer bruger en hybrid: en stor ekstern hukommelse, der er forprogrammeret off-board, mens MCU'en flashes i kredsløbet, så den seneste applikation og data pr. enhed indlæses på linjen.

Sådan designer du et printkort til programmering i kredsløbet

Programmering i kredsløbet går kun problemfrit, hvis layoutet understøtter det. Planlæg disse, før du frigiver filer:

  • Afdæk programmeringsbenene — en lille topstykke eller, for at spare plads, testpuder i størrelsen pogo-pins. Hold dem på den ene side og væk fra høje dele.
  • Reserver de rigtige signaler — f.eks. SWDIO/SWCLK, eller MCLR/PGC/PGD, eller JTAG TCK/TMS/TDI/TDO/TRST, plus en målstrømsføler og jord.
  • Beskyt delte busser — tilføj seriemodstande eller isolation, så programmereren ikke konkurrerer med andre enheder på de samme linjer under programmeringen.
  • Pull-ups/pull-downs og reset — sørg for de korrekte passive tilstande og en tilgængelig nulstilling, så enheden pålideligt går i programmeringstilstand.
  • Power og sekventering — sørg for, at enheden kan strømforsynes til programmering (måldrevet eller programmeringsdrevet) uden at tilbageføre strøm til resten af ​​​​printkortet.
  • Planlæg sikkerheden på forhånd — hvis du vil indstille læsebeskyttelses-/låsebits, skal du bekræfte, at sekvensen stadig tillader verifikation, før delen låses.

Det er præcis disse punkter, der kontrolleres i et Design-for-Test-gennemgang , fordi programmeringsadgang og testadgang normalt deler den samme fixture.

Programmering pr. enhed: Serialisering, kalibrering, sikkerhed

En af de stærkeste grunde til at programmere i kredsløbet er, at hvert printkort kan modtage sine egne data:

  • Serienumre og unikke ID'er for sporbarhed og garanti.
  • MAC-adresser / netværksnøgler for forbundne produkter.
  • Kalibreringskonstanter målt ved funktionstest og skrevet tilbage i enheden, så hver enhed opfylder specifikationerne.
  • Region/funktionskonfiguration for produktvarianter bygget ud fra ét hardwaredesign.
  • Sikkerhedslåsning — efter programmering og verifikation indstilles læsebeskyttelses- eller låsebits for at beskytte firmware-IP. Da låsning ofte er irreversibel, er det det sidste trin og valideres omhyggeligt.

Hvor IC-programmering sker på PCBA-linjen

I et typisk flow udføres programmering i kredsløbet på en dedikeret programmeringsstation eller, oftere, kombineret med funktionstest : kortet sættes i armaturet, firmware indlæses, kalibrering køres, enheden verificeres, data og sikkerhed pr. enhed skrives, og et bestået/ikke bestået resultat plus en post logges for det pågældende serienummer. Parring af programmering med FCT betyder, at en enhed først erklæres god, når den både er programmeret og bevist at fungere.

Det er også her, sporbarheden registreres – der forbinder firmwareversion, kalibreringsværdier og testresultater til hver enhed – hvilket er den slags dokumentation, som udenlandske købere bør anmode om fra en kontraktproducent.

Almindelige IC-programmeringsfejl, der skal undgås

  • Ingen programmeringsadgang i layoutet — opdager i produktionen, at der ikke er noget sted at få kontakt med en programmør.
  • Buskonflikt — deling af programmeringslinjer med andre aktive enheder og ingen isolation, hvilket forårsager periodiske fejl.
  • Låser for tidligt — indstilling af sikkerhedsbits før verifikation, så fejl ikke kan diagnosticeres.
  • Overførsel af forprogrammeret lager til firmware, der snart skal ændres — skrotning eller omarbejdning af dele efter en kodeopdatering.
  • Vag overdragelse — uden at specificere hvilken firmwareversion, hvilke data pr. enhed og hvilken sikkerhedstilstand fabrikken skal anvende.

IC-programmeringstjenester hos Highleap Electronics

Highleap Electronics er en kinesisk producent af printkort og printkort (PCB) som integrerer enhedsprogrammering i nøglefærdig samling til kunder, der sender til USA, Europa og Asien-Stillehavsområdet. Målet er et printkort, der ankommer programmeret, kalibreret, verificeret og sporbart – ikke blankt.

  • IC programmering via JTAG, SWD, ISP/ICSP og serielle bootloadere, in-circuit eller forprogrammeret efter projektets krav.
  • Funktionel test kombineret med programmering og kalibrering i én station, med optegnelser pr. enhed.
  • Design-til-test-gennemgang af programmeringsadgang, isolation og sikkerhedssekvens, før filer fryses.
  • Nøglefærdige PCBA dækker sourcing, SMT, programmering, test og serialisering fra start til slut.
IC-programmering under PCBA-behandlingsdetaljer

Figur 2. Detaljer om IC-programmering under PCBA-behandling

IC-programmering under PCBA – ofte stillede spørgsmål

Hvad betyder in-circuit programmering (ICSP)?

Det betyder at indlæse firmware i en enhed, efter den allerede er loddet til kortet, via en programmeringsgrænseflade (såsom SWD, JTAG, ISP eller ICSP), der er eksponeret på samlingen. Kortet er tilsluttet en programmeringsenhed, får strøm, og firmwaren skrives og verificeres på plads.

Er det bedre at forudprogrammere chips eller programmere dem på printkortet?

Det afhænger af volumen, firmwarestabilitet og om hver enhed har brug for unikke data. Forprogrammering er hurtigst til fastfrosset firmware med høj volumen. Programmering i kredsløbet er bedre, når firmwareændringer er nødvendige, når kalibrering eller serialisering er påkrævet, eller når du vil verificere enheden ved en funktionstest. Hybride tilgange er almindelige.

Hvad skal jeg sørge for til IC-programmering under samling?

Firmware-image og -version, målenhed og -grænseflade, programmerings-/forbindelsespunkter på kortet, eventuelle data pr. enhed (serienumre, MAC, kalibreringsprocedure) og den ønskede sikkerheds-/låsetilstand. Programmeringen køres derefter på en dedikeret station eller sammen med funktionstest.

Kan hvert kort få et unikt serienummer eller en unik kalibrering?

Ja – det er en vigtig fordel ved programmering i kredsløbet. Unikke ID'er, MAC-adresser og kalibreringskonstanter målt ved test kan skrives ind i hver enhed, og værdierne logges for sporbarhed.

Hvordan beskytter jeg min firmware mod at blive læst ud?

De fleste MCU'er understøtter læsebeskyttelses- eller låsebits, der deaktiverer ekstern tilbagelæsning efter programmering. Disse indstilles som det sidste trin, efter at enheden er verificeret, fordi låsning ofte er irreversibel. Diskuter den nøjagtige sikkerhedstilstand, du ønsker, med producenten.

Tager tilføjelse af en programmeringsheader meget plads på kortet?

Ikke nødvendigvis. Du kan bruge en kompakt to- eller firetrådsgrænseflade (f.eks. SWD) eller erstatte headeren med små testpuder, der er i kontakt med testfiksturens pogo-ben, hvilket holder produktionsfodaftrykket minimalt.

Kan en kinesisk producent håndtere firmwareprogrammering sikkert?

Ja, når producenten kontrollerer firmwarerevisioner, programmerer og verificerer på en dokumenteret station, anvender den aftalte sikkerhedslåsning og leverer optegnelser pr. enhed. Definer firmwareversion, data og sikkerhedspolitik skriftligt, så der ikke er nogen tvetydighed om, hvad der indlæses.

få-øjeblikkelig-tilbud

anbefalet Indlæg

Sådan får du et tilbud på printkort

Lad os køre en DFM/DFA-analyse for dig og vende tilbage til dig med en rapport. Du kan uploade dine filer sikkert via vores hjemmeside. Vi har brug for følgende oplysninger for at kunne give dig et tilbud:

    • Gerber, ODB++ eller .pcb, spec.
    • Stykliste, hvis du ønsker montering
    • Antal
    • Vendetid
Udover printkortproduktion tilbyder vi en omfattende vifte af elektroniske tjenester, herunder printkortdesign, printkortbaseret udstyrs ...

For PCBA-tjenester bedes du fremvise din BOM (Bill of Materials) og eventuelle specifikke monteringsinstruktioner. Vi tilbyder også DFM/DFA-analyse for at optimere dine designs med hensyn til fremstillingsevne og montering, hvilket sikrer en problemfri produktionsproces.






    Hurtig bemærkning: Vores team sender dig en e-mail kort efter indsendelse. For at sikre, at du modtager vores svar, anbefaler vi venligst, at du Tjekker din spam-/junkmappe hvis du ikke ser vores besked i din indbakke.