Kokie programinės įrangos failai reikalingi PCBA programavimui?

Jul 20, 2026

Palik žinutę

Apžvalga

Programinės aparatinės įrangos failas gali būti visiškai tinkamas ir vis tiek nėra paruoštas gamybai.

Norint programuoti PCB agregato programinę įrangą, EMS komandai reikia išleisto vaizdo, tikslaus tikslinio įrenginio, plokštės, kuriai jis taikomas, peržiūros, programavimo sąsajos, bet kokio reikalingo atminties adreso arba įrenginio konfigūracijos ir apibrėžto būdo rezultatui patikrinti. Produktams, kuriems taip pat reikia serijos numerių, MAC adresų, kalibravimo verčių arba saugos kredencialų, reikia papildomų tvarkymo instrukcijų.

Naudingas gamybos patikrinimas yra paprastas:

Ar gali technikas, neparašęs programinės įrangos, teisingai užprogramuoti plokštę pagal išleistas instrukcijas?

Jei ne, programinė įranga gali būti baigta kūrimo požiūriu, tačiau gamybos perdavimas – ne.

 

Įdėkite programavimo leidimą viename puslapyje

Programinės įrangos vaizdas yra tik viena perdavimo dalis.

Daugeliui projektų naudingiausias papildomas dokumentas yra trumpas programavimo išleidimo lapas, kuriame nurodoma, kas buvo patvirtinta ir kaip tai turėtų būti naudojama.

Nesvarbu, ar klientas tai vadina programavimo instrukcija, išleidimo pažyma, gamybos instrukcija ar kontroliuojamo darbo instrukcija. Svarbu tai, kad operatoriui nereikėtų atkurti sąrankos iš el. pašto gijų, senų kūrimo pastabų ir failų pavadinimų.

Praktiniame išleidimo lape gali būti:

Išleidimo laukas

Ko reikia gamybai

Firmware leidimas

Tiksliai patvirtintas failas ar failai

Firmware peržiūra

Išleista programinės įrangos versija

Tikslinis įrenginys

Tiksliai programuojamas įrenginys

Valdybos peržiūra

Patvirtinta programinės aparatinės įrangos versija

Programavimo sąsaja

SWD, JTAG, UART, USB DFU, SPI arba kita apibrėžta sąsaja

Prieiga prie programavimo

Antraštė, jungtis, tvirtinimo{0}}prieinami bandymo taškai arba kitas metodas

Atminties paskirties vieta

Jei reikia, pradžios adresas arba atminties sritis

Įrenginio konfigūracija

Parinkčių baitai, konfigūracijos žodžiai, saugikliai, įkrovos arba apsaugos nustatymai, jei taikoma

Programavimo sąranka

Patvirtintas programuotojas, projektas, scenarijus arba nustatymai, kur reikia

Vieneto{0}}konkretūs duomenys

Serijos numeris, MAC adresas, kalibravimo vertė arba kiti{0}}vieneto duomenys, jei taikoma

Tikrinimo būdas

Kaip gamyba patvirtina, kad programavimas praėjo

Paskelbkite{0}}programavimo veiksmą

Įkrovos patikrinimas, funkcinis testavimas, ženklinimas, atsekamumas ar kitas būtinas veiksmas

Paprastai MCU plokštei gali prireikti tik kelių iš šių elementų. Produktui su keliais programuojamais įrenginiais, keliais programinės įrangos variantais, unikaliais identifikatoriais ar saugos funkcijomis reikės daugiau.

Išleidimo lapas neleidžia operatoriui priimti inžinerinių sprendimų. Kai plokštė pasiekia programavimą, patvirtintas vaizdas, sąranka ir tikrinimo taisyklė jau turėtų būti aiškūs.

 

Trys būdai, kaip tinkamas programinės aparatinės įrangos failas vis tiek gali sustabdyti gamybą

Pats failas dažnai nėra problema. Informacija aplink ją yra.

BIN yra teisingas, bet niekas neapibrėžė adreso

Neapdorotame dvejetainiame faile yra programuojami duomenys, tačiau jis savaime nenurodo programuotojui, kur tie duomenys priklauso.

Tai skiriasi nuo adreso-informacijos formatų, pvz., „Intel HEX“ arba „Motorola S{1}}record“.

Todėl .bin failas gali būti visiškai tinkamas, kol gamybos instrukcija vis dar neužbaigta. Jei programavimo darbo eigai reikalingas pradžios adresas arba atminties sritis, ta informacija turi būti gaunama iš kitur, o ne iš dvejetainio failo.

Štai kodėl programinės aparatinės įrangos gavimas nėra tas pats, kas tinkamas programavimo leidimas.

Programinė įranga yra teisinga, tačiau ji priklauso kitai plokštės versijai

Aparatinės ir aparatinės įrangos versijos dažnai valdomos atskirai. Paprastai tai yra gerai, kol aparatinės įrangos pakeitimas nepaveiks suderinamumo.

Apsvarstykite projektą su Firmware V1.6, Board Rev.B ir Board Rev.C. Visi trys gali būti išleisti elementai, tačiau 1.6 versijos programinė įranga galėjo būti patvirtinta tik Rev.C.

Dvi atskirai teisingos versijos vis tiek gali sudaryti netinkamą gamybos derinį.

Programavimo leidime turėtų būti nurodyta atitinkama plokštės versija, kai aparatinės įrangos pakeitimas gali turėti įtakos:

  • smeigtukų priskyrimas;
  • jutiklių tipai;
  • atminties įrenginiai;
  • Ryšio sąsajos;
  • įkrovos konfigūracija;
  • I/O kartografavimas;
  • kalibravimo elgsena.

Nereikėtų tikėtis, kad programinės aparatinės įrangos failo pavadinimas pats priimtų šį sprendimą.

Programuotojas sako PASS, bet plokštė dar nepaleista

Žalias PASS užrašas ant programuotojo rodo, kad programavimo žingsnis atitiko apibrėžtą patvirtinimo taisyklę.

Jis nepasako, ar surinkta plokštė tinkamai bendrauja, nuskaito jutiklius, perjungia išėjimus ar tinkamai elgiasi esant apkrovai.

Plokštė gali sėkmingai programuoti ir vis tiek turėti surinkimo defektą, netinkamą aparatinės įrangos konfigūraciją, ryšio problemą, maitinimo gedimą arba programos{0}}lygio gedimą.

Čia funkcinis testavimas pradeda atlikti kitokį darbą.

Programavimo patikrinimas patvirtina programavimo veiksmą. Funkcinis testavimas tikrina užprogramuoto mazgo elgseną.

 

Failo formatas yra mažiau svarbus nei aiškus programavimo metodas

HEX ir BIN yra įprasti, tačiau nė vienas iš jų nėra automatiškai tinkamas atsakymas kiekvienam produktui.

Gamybos programavimo darbo eigos taip pat gali naudoti:

  • ELF arba susiję vykdomieji formatai;
  • Motorola S{0}}rekordas;
  • pardavėjo-konkrečių programavimo failų;
  • konkrečių įrenginių{0}}konfigūracijos paketų.

Neapdorotam BIN paprastai reikia atskirai apibrėžto paskirties adreso. Adreso{1}}formatuose gali būti daugiau šios informacijos faile. Ar naudojamas ELF, HEX, BIN, S-record ar kitas formatas, priklauso nuo tikslinio įrenginio ir patvirtintos programavimo sąrankos.

Gamybos aukšte taisyklė paprastesnė:

Naudokite patvirtintos programavimo sąrankos palaikomą formatą ir dokumentuokite viską, ko pats failas neapibrėžia.

Jei EMS taikymo sritis apsiriboja patvirtinto gamybos vaizdo programavimu, šaltinio kodas paprastai nereikalingas. Šaltinio kodas, IDE projektai ir kūrimo aplinkos tampa aktualios, kai kompiliavimas, derinimas, programinės aparatinės įrangos modifikavimas arba kūrimas{1}}atvaizdo generavimas yra sutartos apimties dalis.

Siunčiant visą saugyklą vis tiek nenurodoma, kuri versija patvirtinta.

 

Prieiga prie programavimo taip pat yra aparatinės įrangos sprendimas

Programavimo sistemoje{0}}programinės įrangos paketas yra tik pusė sąrankos.

Gamybos stotis taip pat turi fizinę ir elektrinę prieigą prie tikslinio įrenginio.

Priklausomai nuo produkto, tai gali būti:

  • SWD;
  • JTAG;
  • UART arba kita įkrovos tvarkyklės sąsaja;
  • USB DFU;
  • SPI;
  • speciali programavimo jungtis;
  • tvirtinimo{0}}prieinami bandymo taškai;
  • kitos įrenginio{0}}konkrečios sąsajos.

Programavimo instrukcijoje taip pat gali reikėti apibrėžti plokštės maitinimo būseną, jungtį arba bandomąjį -tašką, reikalingą įkrovos būseną, programavimo adapterį, atstatymo elgseną ir numatomą trynimo/programavimo/patikrinimo seką.

Šias detales geriausia išspręsti prieš surinktoms plokštėms pasiekiant programavimo stotį.

Nepasiekiamas SWD signalas negali būti ištaisytas siunčiant geresnį HEX failą.

Produktams, kurie priklauso nuo prieigos ar programavimo bandymo taškų, programavimo parengtis iš dalies yra DFT problema, o ne tik programinės įrangos perdavimas.

 

Laikykite programinės įrangos peržiūrą ir plokštės peržiūrą kartu

Failai, pavadinti latest.hex arba final_new_v2.bin, gali būti puikiai suprantami juos sukūrusiam asmeniui. Jie yra prasta gamybos kontrolė.

Gamybai reikia patikimo būdo atskirti patvirtintą leidimą nuo:

  • pasenusi versija;
  • inžinerinis statinys;
  • tik bandomasis{0}}vaizdas;
  • kitas gaminio variantas.

Atsižvelgiant į kliento dokumentų -valdymo sistemą, išleista tapatybė gali apimti programinės įrangos versiją, valdomą failo pavadinimą, išleidimo datą, taikomą plokštės versiją, kliento patvirtinimo nuorodą, failo dydį arba kontrolinę sumą / maišą.

Gamybai nereikia vienos universalios įvardijimo ar kontrolinės sumos schemos. Tam reikia patikimo būdo atskirti išleistą versiją nuo visko, kas yra aplanke.

Tai tampa dar svarbiau, kai viena aparatinės įrangos platforma palaiko kelis programinės įrangos variantus. Plokštės gali atrodyti identiškos, o gatavi produktai – ne.

PCBA boards staged on production racks for controlled batch and revision handling

 

Kai programavimas apima konkrečius vieneto{0}}duomenis

Daugelio produktų kiekviena plokštė gauna tą patį programinės aparatinės įrangos vaizdą.

Kitiems produktams taip pat reikia konkrečios{0}} vieneto informacijos, pvz.:

  • serijos numeriai;
  • MAC adresai;
  • produktų ID;
  • kalibravimo koeficientai;
  • regioninė konfigūracija;
  • kliento{0}}konkrečius nustatymus;
  • įrenginio kredencialus.

Tuo metu bendra programinė įranga ir vieneto{0}}duomenys yra du skirtingi duomenų srautai.

Gamyba turėtų žinoti, iš kur gaunamos unikalios reikšmės, kur jos parašytos, kaip kiekviena vertė susieta su tinkama fizine lenta ir kaip apsisaugoma nuo pasikartojančių priskyrimų.

Vieną detalę lengva nepastebėti: kada unikali vertybė laikoma suvartota?

Serijos numeris arba MAC adresas gali būti naudojami, kai jie yra priskirti, kai programavimas sėkmingas arba tik įrenginiui išlaikius reikiamą testą. Nėra vienos taisyklės kiekvienam produktui, tačiau prieš pradedant kūrimą turėtų būti sutarta taisyklė.

Tas pats pasakytina ir apie sugedusius įrenginius. Komanda turi žinoti, ar priskirtą vertę galima naudoti pakartotinai, ar ji turi būti pašalinta, ar lieka susieta su sugedusia plokšte, kad būtų galima atsekti.

 

Programavimo leidimas nėra FCT leidimas

Programavimo patikrinimas ir funkcinis testavimas gali vykti arti vienas kito gamybos eigoje, tačiau jie atsako į skirtingus klausimus.

Programavimo patikrinimas

Programavimo patikrinimas klausia:

Ar numatyti duomenys buvo įrašyti teisingai pagal patvirtintą programavimo metodą?

Priklausomai nuo įrenginio ir sąrankos, tai gali apimti programuotojo tikrinimo funkciją, skaitymo palyginimą, kai tai leidžiama, CRC, konfigūracijos patikrinimą arba kitą patvirtintą metodą.

Funkcinis testavimas

Funkcinis testavimas klausia:

Ar maitinamas ir užprogramuotas PCB mazgas atlieka gaminiui reikalingas funkcijas?

Priklausomai nuo projekto, tai gali būti:

  • galios{0}}elgesys;
  • bendravimas;
  • įvesties/išvesties atsakas;
  • jutiklio įėjimas;
  • relės arba pavaros išėjimas;
  • srovės ištraukimas;
  • kliento{0}}nubrėžtas veikimo sąlygas.

Programuotojas, rodantis PASS, neturėtų būti automatiškai traktuojamas kaip įrodymas, kad PCB mazgas praėjo FCT.

Projektams, kuriems reikalinga programinės aparatinės įrangos įkėlimas, suderinti su plokštės{0}}lygio patvirtinimu, STHLTestavimas ir apžiūrapajėgumai suteikia atitinkamą paslaugų kelią.

STHL functional testing line for assembled PCBAs in an ESD-controlled production area

 

Dvi situacijos, kai reikia papildomų nurodymų

Daugeliui programavimo darbų nereikia sudėtingo aprūpinimo proceso. Dvi situacijos nusipelno ypatingo dėmesio, kai jos taikomos.

Išbandykite programinę-aparatinę įrangą ir gamybos programinę-aparatinę įrangą

Kai kurie gaminiai naudoja diagnostinę programinę-aparatinę įrangą gamybos metu ir skirtingą programinės aparatinės įrangos išleidimą siuntimui.

Jei taip, gamyba turi žinoti, kuris vaizdas taikomas kiekviename etape, kada bandomasis vaizdas pakeičiamas, kaip patvirtinamas galutinis išleidimas ir ar vėliau reikalingas kitas funkcinis patikrinimas.

Priešingu atveju plokštė gali išlaikyti gamybos diagnostiką ir vis tiek išeiti iš gamybos su įdiegta netinkama programine įranga.

Ne kiekvienam produktui reikalinga atskira programinė įranga. Procesas turi atitikti tikrąjį produktą.

Saugus aprūpinimas

Kai kuriems įrenginiams, kuriuose įgalinta saugumas{0}}, reikalingi pasirašyti arba užšifruoti vaizdai, saugūs -įkrovos nustatymai, OTP / „eFuse“ konfigūracija, raktai, sertifikatai ar kiti valdomi teikimo duomenys.

Kai taikomi šie reikalavimai, OĮG ir EMS teikėjas turėtų susitarti, kam priklauso neskelbtini duomenys, kokias operacijas leidžiama atlikti ir kaip patvirtinami negrįžtami nustatymai.

Su šiais elementais negalima elgtis kaip su įprastais programinės įrangos priedais.

 

Ką daryti, jei programinė įranga pasikeičia pradėjus programuoti?

Naują programinės aparatinės įrangos vaizdą galima beveik iš karto įdėti į bendrinamą aplanką.

Jau gamybiniame aukšte esančios lentos su juo nesikeičia.

Jei prasidėjus programavimui pateikiamas naujas leidimas, komandai reikia aiškaus nusiteikimo:

  • įrenginiai, jau užprogramuoti naudojant ankstesnę versiją;
  • jau išbandyti vienetai;
  • vienetai, laukiantys programavimo;
  • ar reikia perprogramuoti;
  • ar turi įtakos funkciniams testams;
  • ar reikalingas pakartotinis tyrimas;
  • kur peržiūros riba yra gamybos partijoje.

Peržiūros lygis turėtų atitikti pokyčius.

Pataisyta rodymo eilutė ir galios{0}}valdymo elgsenos pakeitimas nekelia tos pačios gamybos rizikos. Tačiau nė vienas neturėtų būti įvestas tiesiog pakeičiant failą ir liepiant eilui tęsti.

Čia versijų kontrolė nustoja būti popierizmu ir tampa gamybos kontrole.

 

 

Trumpas išankstinis{0}}gamybinis patikrinimas

Prieš suprogramuojant pirmąjį gamybos padalinį, pirkėjas ir EMS komanda turi turėti galimybę atsakyti:

  • Koks konkretus vaizdas ar vaizdai išleidžiami?
  • Kuris programuojamas įrenginys gauna kiekvieną vaizdą?
  • Kuriai plokštės versijai patvirtinta programinė įranga?
  • Ar reikalingas apkrovos adresas arba atminties žemėlapis?
  • Ar parinkčių baitai, saugikliai arba konfigūracijos duomenys yra įterpti arba atskirti?
  • Kokia programavimo sąsaja naudojama?
  • Ar plokštėje yra reikiama programavimo prieiga?
  • Kaip plokštė maitinama programavimo metu?
  • Kuris programuotojas, projektas ar patvirtinta sąranka taikoma?
  • Ar reikalingi vieneto{0}}konkretūs duomenys?
  • Kas įrodo, kad programavimo operacija praėjo?
  • Ar vėliau reikia atlikti funkcinį testavimą ar kitą patikrinimą?
  • Ar projekte naudojama bandomoji programinė įranga, saugus aprūpinimas ar kita speciali darbo eiga?

Jei tie atsakymai aiškūs, pačiame programavimo pakete gali būti tik keli failai.

Jei jų nėra, pridėjus daugiau failų perdavimas retai išsprendžiamas.

PCBA programming equipment used for production firmware loading and verification

 

Kaip STHL palaiko programinės įrangos programavimą PCBA gamyboje

Shenzhen STHL Technology Co., Ltd. (STHL) palaiko MCU, FPGA ir EEPROM programavimą kaip taikomų PCB surinkimo projektų dalį. Jei reikia, programavimas gali būti derinamas su funkciniais testais ir konkrečiais projekto{3}} atsekamumo reikalavimais.

Atskiros versijos programavimo peržiūra gali apimti išleistą vaizdą, tikslinį įrenginį, plokštės versiją, prieigą prie programavimo, reikalingą įrenginio konfigūraciją, patvirtinimo metodą ir bet kokius konkrečius kliento pateiktus{0}}duomenis.

Tikslus programuotojas, armatūra arba kabelis, saugumo reikalavimai, programinės aparatinės įrangos nuosavybė ir reikalingi gamybos įrašai turi būti suderinti konkrečiam projektui, o ne daryti prielaidą iš bendrųjų pajėgumų pareiškimo.

 

Išvada

Svarbiausi PCBA programinės įrangos programavimo reikalavimai neapibrėžiami pagal tai, ar klientas siunčia HEX, BIN, ELF ar kitą palaikomą failą.

Gamybai paruoštas{0}}perdavimas turėtų leisti gamybos komandai atsakyti į keturis pagrindinius klausimus:

  • Kokius duomenis reikia užprogramuoti?
  • Kuriai įrenginio ir plokštės versijai jis priklauso?
  • Kaip turėtų būti programuojama ir patikrinama gamyba?
  • Kas turi įvykti, kol PCB surinkimas pereina į kitą gamybos etapą?

Paprastoje MCU plokštėje tie atsakymai gali tilpti viename puslapyje. Gaminiui su keliais programuojamais įrenginiais, unikaliais duomenimis, keliais programinės įrangos variantais arba saugumo reikalavimais, žinoma, reikės daugiau informacijos.

Programinė įranga yra paruošta gamybai, kai kvalifikuota gamybos komanda gali pakartoti patvirtintą programavimo procesą iš išleistos informacijos, o ne pasikliauti žiniomis, kurios egzistuoja tik kūrėjo galvoje.

Jei norite sukurti versiją, kuriai reikalingas programinės aparatinės įrangos programavimas, įtraukite turimus programavimo failus ir instrukcijas su MK, Gerber failais, surinkimo informacija, kiekiu ir testavimo reikalavimais.pateikite savo PCBA projekto duomenis.

Dėl konkrečių{0} programavimo klausimų susisiekite su STHL adresuinfo@pcba-china.com.

 

Dažnai užduodami klausimai

Kokie programinės įrangos failų formatai dažniausiai naudojami PCBA programavimui?

Įprasti formatai apima „Intel HEX“, neapdorotą BIN, ELF{0}}susijusius formatus, „Motorola S-record“ ir konkrečius tiekėjo{2} programavimo failus.
Tinkamas formatas priklauso nuo tikslinio įrenginio ir patvirtintos programavimo sąrankos. Neapdorotam BIN failui paprastai reikia atskirai apibrėžto programavimo adreso, nes pačiame faile tos adreso informacijos nėra.

Ar EMS teikėjui reikia programinės įrangos šaltinio kodo?

Paprastai ne tada, kai sutarta apimtis apsiriboja patvirtinto gamybos vaizdo programavimu.
Šaltinio kodas arba kūrimo projektai tampa aktualūs, kai gamybos apimtis taip pat apima kompiliavimą, derinimą, programinės įrangos modifikavimą arba gamybos vaizdo generavimą.

Ar gamybos programavimui pakanka HEX failo?

Kartais.
Gamybai vis dar reikia tikslinio įrenginio, išleistos programinės aparatinės įrangos tapatybės, taikomos plokštės peržiūros, programavimo prieigos ir patvirtinimo metodo. Taip pat turėtų būti aišku, ar įrenginio konfigūracijos ar įrenginio -konkretūs duomenys yra įtraukti į vaizdą, ar tvarkomi atskirai.

Kuo skiriasi programinės įrangos programavimas ir FCT?

Firmware programavimas įrašo ir patikrina patvirtintus duomenis tiksliniame programuojamame įrenginyje.
FCT patikrina, ar maitinamas, užprogramuotas PCB mazgas atlieka projekto reikalaujamas funkcijas.
Abu žingsniai gali būti suderinti, tačiau jie neįrodo to paties.

Ar programinė įranga turėtų būti galutinė prieš prašant PCBA pasiūlymo?

Nebūtinai.
Jei tikimasi programavimo, jis turi būti nustatytas pakankamai anksti, kad EMS teikėjas galėtų peržiūrėti programavimo prieigą, įrankius, sąranką ir testavimo apimtį.
Galutinis patvirtintas programavimo vaizdas ir instrukcijos turi būti kontroliuojami prieš atitinkamą gamybos programavimo veiksmą.

 
Siųsti užklausą