Milyen firmware-fájlokra van szükség a PCBA programozáshoz?

Jul 20, 2026

Hagyjon üzenetet

Áttekintés

A firmware fájl tökéletesen érvényes lehet, de még mindig nem áll készen a gyártásra.

A PCB-szerelvényen történő firmware programozáshoz az EMS csapatának szüksége van a kiadott képre, a pontos céleszközre, a kártya verziójára, amelyre vonatkozik, a programozói felületre, a szükséges memóriacímekre vagy eszközkonfigurációra, valamint az eredmény ellenőrzésének meghatározott módjára. A sorozatszámokat, MAC-címeket, kalibrációs értékeket vagy biztonsági hitelesítő adatokat is igénylő termékekhez további kezelési utasításokra van szükség.

A hasznos gyártásellenőrzés egyszerű:

Egy technikus, aki nem írta meg a firmware-t, megfelelően programozhatja a kártyát a kiadott utasításokból?

Ha nem, akkor a szoftver fejlesztési szempontból befejeződött, de a gyártási átadás nem.

 

Helyezze a programozási kiadást egy oldalra

A firmware kép csak egy része az átadásnak.

Számos projekt esetében a leghasznosabb kísérődokumentum egy rövid programozási adatlap, amely elmondja a gyártásnak, hogy mit hagytak jóvá, és hogyan kell azt használni.

Nem mindegy, hogy az ügyfél ezt programozási utasításnak, kiadási megjegyzésnek, gyártási utasításnak vagy ellenőrzött munkautasításnak nevezi. A lényeg az, hogy az operátornak nem kell e-mail szálakból, régi fejlesztési megjegyzésekből és fájlnevekből rekonstruálnia a beállítást.

A gyakorlati kiadási lap a következőket tartalmazhatja:

Kiadási mező

Amire a termelésnek szüksége van

Firmware kiadás

Pontosan jóváhagyott fájl vagy fájlok

Firmware revízió

Megjelent szoftver verzió

Céleszköz

Pontosan programozható eszköz

Testületi felülvizsgálat

A firmware hardververziója jóváhagyva

Programozói felület

SWD, JTAG, UART, USB DFU, SPI vagy más meghatározott interfész

Programozási hozzáférés

Fejléc, csatlakozó, rögzítő{0}}elérhető tesztpontok vagy más módszer

Memória célállomás

Indítási cím vagy memóriaterület, ahol szükséges

Eszköz konfiguráció

Opciós bájtok, konfigurációs szavak, biztosítékok, rendszerindítási vagy védelmi beállítások, ahol vannak

Programozás beállítása

Jóváhagyott programozó, projekt, szkript vagy beállítások, ahol szükséges

Egység-specifikus adatok

Sorozatszám, MAC-cím, kalibrációs érték vagy egyéb{0}}egységenkénti adat, ahol alkalmazható

Ellenőrzési módszer

Hogyan igazolja a gyártás a programozás sikerességét

Programozási lépés-utadása

Rendszerindítási ellenőrzés, funkcionális tesztelés, címkézés, nyomon követhetőség vagy más szükséges művelet

Egy egyszerű MCU kártyának csak néhány elemre van szüksége ezek közül. Több programozható eszközzel, több firmware-változattal, egyedi azonosítóval vagy biztonsági funkcióval rendelkező termékhez többre van szükség.

A kiadási lap távol tartja a mérnöki döntéseket a kezelő kezétől. Mire a tábla eléri a programozást, már világosnak kell lennie a jóváhagyott képnek, beállításnak és ellenőrzési szabálynak.

 

Három módja annak, hogy egy megfelelő firmware-fájl továbbra is leállítsa a gyártást

Maga a fájl gyakran nem a probléma. A körülötte lévő információ.

A BIN helyes, de senki nem határozta meg a címet

A nyers bináris fájl tartalmazza a programozandó adatokat, de nem közli a programozóval, hogy az adatok hova tartoznak.

Ez eltér a cím{0}}hordozó formátumoktól, mint például az Intel HEX vagy a Motorola S{1}}rekord.

A .bin fájl tehát teljesen érvényes lehet, amíg a gyártási utasítás még hiányos. Ha a programozási munkafolyamat kezdőcímet vagy memóriaterületet igényel, akkor ennek az információnak a bináris fájlon kívül máshonnan kell származnia.

Ez az oka annak, hogy a firmware átvétele nem ugyanaz, mint egy használható programozási kiadás.

A firmware megfelelő, de egy másik táblaverzióhoz tartozik

A firmware- és hardververziókat gyakran külön szabályozzák. Ez általában rendben van, amíg a hardver változás nem befolyásolja a kompatibilitást.

Vegyük fontolóra a Firmware V1.6, Board Rev.B és Board Rev.C projektet. Lehet, hogy mindhárom érvényes kiadott tétel, de előfordulhat, hogy a firmware V1.6 csak a Rev.C-hez lett jóváhagyva.

Két külön-külön helyes revízió továbbra is rossz gyártási kombinációt alkothat.

A programozási kiadásnak meg kell határoznia a vonatkozó kártyaváltozatot, amikor egy hardverváltozás hatással lehet:

  • tű hozzárendelések;
  • érzékelő típusok;
  • memóriaeszközök;
  • kommunikációs interfészek;
  • rendszerindítási konfiguráció;
  • I/O leképezés;
  • kalibrációs viselkedés.

A firmware fájlnévtől nem várható el, hogy önmagában hordozza ezt a döntést.

A programozó azt mondja, PASS, de a tábla még nincs kiadva

A programozón lévő zöld PASS jelzi, hogy a programozási lépés megfelelt a meghatározott ellenőrzési szabálynak.

Nem árulja el, hogy az összeszerelt kártya megfelelően kommunikál-e, leolvassa-e az érzékelőit, kapcsolja-e a kimeneteit, vagy megfelelően viselkedik-e terhelés alatt.

Egy kártya sikeresen programozhat, és továbbra is összeszerelési hibával, helytelen hardverkonfigurációval, kommunikációs problémával, tápellátási hibával vagy alkalmazás{0}}szintű hibával rendelkezik.

A funkcionális tesztelés itt kezd más munkát végezni.

A programozás ellenőrzése megerősíti a programozási műveletet. A funkcionális tesztelés ellenőrzi a programozott összeállítás viselkedését.

 

A fájlformátum kevésbé számít, mint az egyértelmű programozási módszer

A HEX és a BIN gyakori, de egyik sem jelenti automatikusan a megfelelő választ minden termékre.

A gyártási programozási munkafolyamatok a következőket is használhatják:

  • ELF vagy kapcsolódó végrehajtható formátumok;
  • Motorola S{0}}rekord;
  • szállító-specifikus programozási fájlok;
  • eszközspecifikus konfigurációs csomagok-.

A nyers BIN-nek általában külön meghatározott célcímre van szüksége. A cím{1}}hordozó formátumok több információt hordozhatnak a fájlban. Az, hogy ELF, HEX, BIN, S-rekordot vagy más formátumot használ, a céleszköztől és a jóváhagyott programozási beállításoktól függ.

A termelési szinten a szabály egyszerűbb:

Használjon a jóváhagyott programozási beállítás által támogatott formátumot, és dokumentálja mindazt, amit maga a fájl nem határoz meg.

Ha az EMS hatóköre egy jóváhagyott éles lemezkép programozására korlátozódik, a forráskód általában szükségtelen. A forráskód, az IDE-projektek és az építési környezetek akkor válnak relevánssá, ha a fordítás, hibakeresés, firmware-módosítás vagy éles{1}}képgenerálás a megállapodás hatálya alá tartozik.

A teljes lerakat elküldése továbbra sem jelzi a termelésnek, hogy melyik buildet hagyták jóvá.

 

A programozási hozzáférés szintén hardveres döntés

A rendszeren belüli-programozáshoz a szoftvercsomag csak a fele a beállításnak.

A gyártóállomásnak fizikai és elektromos hozzáférésre is szüksége van a céleszközhöz.

A terméktől függően ez történhet:

  • SWD;
  • JTAG;
  • UART vagy más rendszerbetöltő interfész;
  • USB DFU;
  • SPI;
  • dedikált programozási csatlakozó;
  • fixture{0}}elérhető tesztpontok;
  • egy másik eszköz{0}}specifikus interfész.

Előfordulhat, hogy a programozási utasításnak meg kell határoznia a kártya tápellátási állapotát, a csatlakozót vagy a teszt-pont kivezetését, a szükséges rendszerindítási állapotot, a programozási adaptert, a visszaállítási viselkedést és a várt törlési/programozási/ellenőrzési sorrendet.

Ezeket a részleteket a legjobb megoldani, mielőtt az összeszerelt táblák elérnék a programozó állomást.

A hozzáférhetetlen SWD jel nem javítható jobb HEX fájl küldésével.

Azon termékek esetében, amelyek a fixture hozzáféréstől vagy a programozási tesztpontoktól függenek, a programozási készenlét részben DFT-probléma, nem csupán szoftveres átadás.

 

Tartsa együtt a firmware-verziót és az alaplap-revíziót

A latest.hex vagy final_new_v2.bin nevű fájlok tökéletesen érthetőek lehetnek az őket létrehozó személy számára. Rossz a gyártásellenőrzés.

A gyártásnak megbízható módszerre van szüksége ahhoz, hogy megkülönböztesse a jóváhagyott kiadást:

  • elavult verzió;
  • mérnöki építmény;
  • egy teszt{0}}kép;
  • egy másik termékváltozat.

Az ügyfél dokumentum{0}}ellenőrző rendszerétől függően a kiadott identitás tartalmazhatja a firmware-verziót, a szabályozott fájlnevet, a kiadás dátumát, a vonatkozó tábla verzióját, az ügyfél jóváhagyási hivatkozását, a fájlméretet vagy az ellenőrző összeget/kivonatot.

A termeléshez nincs szükség egyetlen univerzális elnevezési vagy ellenőrző összeg sémára. Megbízható módszerre van szüksége ahhoz, hogy megkülönböztesse a kiadott buildet a mappában lévő összes többitől.

Ez még fontosabbá válik, ha egy hardverplatform több szoftverváltozatot is támogat. A táblák azonosnak tűnhetnek, míg a késztermékek nem.

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

 

Ha a programozás egység{0}}specifikus adatokat tartalmaz

Sok termék esetében minden kártya ugyanazt a firmware-képet kapja.

Más termékeknek is szükségük van egység-{0}}specifikus információkra, például:

  • sorozatszámok;
  • MAC-címek;
  • termékazonosítók;
  • kalibrációs együtthatók;
  • regionális konfiguráció;
  • ügyfél--specifikus beállítások;
  • eszköz hitelesítő adatai.

Ekkor a közös firmware és az egységenkénti-adatok két különböző adatfolyam.

A gyártásnak tudnia kell, hogy az egyedi értékek honnan származnak, hova vannak írva, hogyan kapcsolódnak az egyes értékek a megfelelő fizikai táblához, és hogyan akadályozzák meg az ismétlődő hozzárendeléseket.

Egy részletet könnyű figyelmen kívül hagyni: mikor számít egy egyedi érték elfogyasztottnak?

A sorozatszám vagy MAC-cím használatának tekinthető, ha hozzá van rendelve, ha a programozás sikeres, vagy csak akkor, ha az egység átment a szükséges teszten. Nincs egységes szabály minden termékre, de az összeállítás megkezdése előtt meg kell határozni egy elfogadott szabályt.

Ugyanez vonatkozik a meghibásodott egységekre is. A csapatnak tudnia kell, hogy egy hozzárendelt érték újrafelhasználható-e, ki kell-e vonni, vagy a nyomon követhetőség érdekében továbbra is a meghibásodott táblához kapcsolódik.

 

A programozási bérlet nem FCT bérlet

A programozás ellenőrzése és a funkcionális tesztelés a gyártási folyamatban egymáshoz közel is megtörténhet, de különböző kérdésekre válaszolnak.

Programozás ellenőrzése

A programozás ellenőrzése a következőket kérdezi:

A tervezett adat helyesen lett megírva a jóváhagyott programozási módszer szerint?

Az eszköztől és a beállítástól függően ez magában foglalhat egy programozói ellenőrzési funkciót, visszaolvasási összehasonlítást, ahol megengedett, CRC-t, konfiguráció-ellenőrzést vagy más jóváhagyott módszert.

Funkcionális tesztelés

A funkcionális tesztelés a következőket kérdezi:

Az árammal ellátott és programozott NYÁK-szerelvény ellátja a termék által megkívánt funkciókat?

A projekttől függően ez a következőket foglalhatja magában:

  • teljesítmény{0}}viselkedés;
  • kommunikáció;
  • bemeneti/kimeneti válasz;
  • érzékelő bemenet;
  • relé vagy működtető kimenet;
  • aktuális lehívás;
  • az ügyfelek-meghatározott működési feltételei.

A PASS-t megjelenítő programozót nem szabad automatikusan annak bizonyítékaként kezelni, hogy a PCB-szerelvény megfelelt az FCT-nek.

Azoknál a projekteknél, amelyeknél a firmware-betöltést a táblaszintű{0}}ellenőrzéssel, az STHL-lel kell összehangolniTesztelés és ellenőrzésképességek biztosítják a megfelelő szolgáltatási utat.

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

 

Két olyan helyzet, amely további utasításokat igényel

A legtöbb programozási feladat nem igényel bonyolult kiépítési folyamatot. Két helyzet érdemel különös figyelmet, amikor alkalmazzák.

Firmware és gyártási firmware tesztelése

Egyes termékek diagnosztikai firmware-t használnak a gyártás során, és egy másik firmware kiadást a szállításhoz.

Ha igen, a gyártásnak tudnia kell, hogy melyik kép vonatkozik az egyes szakaszokra, mikor cserélik ki a tesztképet, hogyan történik a végleges kiadás megerősítése, és hogy szükség van-e ezt követően újabb működési ellenőrzésre.

Ellenkező esetben egy tábla átmenhet a gyártási diagnosztikán, és továbbra is rossz firmware-rel távozhat a gyártásból.

Nem minden termékhez szükséges külön teszt firmware. A folyamatnak követnie kell a tényleges terméket.

Biztonságos kiépítés

Egyes biztonsági{0}}eszközökhöz aláírt vagy titkosított képek, biztonságos-indítási beállítások, OTP/eFuse konfiguráció, kulcsok, tanúsítványok vagy más ellenőrzött hozzáférési adatok szükségesek.

Amikor ezek a követelmények érvényesek, az OEM-nek és az EMS-szolgáltatónak meg kell állapodnia, hogy kié a bizalmas adatok, mely műveletek elvégzésére jogosult a termelés, és hogyan hagyják jóvá a visszafordíthatatlan beállításokat.

Ezeket az elemeket nem szabad úgy kezelni, mint a szokásos firmware-mellékleteket.

 

Mi a teendő, ha a firmware megváltozik a programozás megkezdése után?

Az új firmware-kép szinte azonnal elhelyezhető egy megosztott mappában.

A gyári szinten már lévő táblák nem változnak vele.

Ha egy új kiadás a programozás megkezdése után érkezik, a csapatnak egyértelmű beosztásra van szüksége:

  • a korábbi verzióval már programozott egységek;
  • már tesztelt egységek;
  • programozásra váró egységek;
  • szükség van-e átprogramozásra;
  • hatással van-e a funkcionális tesztelésre;
  • szükség van-e ismételt tesztelésre;
  • ahol a felülvizsgálati határ a gyártási tételen belül van.

A felülvizsgálat szintjének követnie kell a változást.

A kijavított megjelenítési karakterlánc és a teljesítményszabályozási viselkedés megváltoztatása-nem jár ugyanazzal a gyártási kockázattal. De egyiket sem szabad úgy bevezetni, hogy lecserélünk egy fájlt, és azt mondjuk a sornak, hogy folytassuk.

Ez az a hely, ahol a verziókezelés megszűnik a papírmunka helyett, és gyártásirányítássá válik.

 

 

Rövid gyártás előtti{0}}ellenőrzés

Az első gyártóegység programozása előtt a vevőnek és az EMS-csapatnak tudnia kell válaszolni:

  • Pontosan milyen képet vagy képeket adnak ki?
  • Melyik programozható eszköz fogadja az egyes képeket?
  • Melyik kártyaverzióhoz engedélyezett a firmware?
  • Betöltési cím vagy memóriatérkép szükséges?
  • Beágyazott vagy különálló opciós bájtok, biztosítékok vagy konfigurációs adatok?
  • Melyik programozási felületet használják?
  • A szükséges programozási hozzáférés elérhető a táblán?
  • Hogyan működik a tábla a programozás során?
  • Melyik programozó, projekt vagy jóváhagyott beállítás vonatkozik rá?
  • Szükség van-e egység{0}}adatokra?
  • Mi bizonyítja, hogy a programozási művelet sikeres volt?
  • Szükséges-e funkcionális tesztelés vagy más ellenőrzés utólag?
  • Használ a projekt teszt firmware-t, biztonságos kiépítést vagy más speciális munkafolyamatot?

Ha ezek a válaszok egyértelműek, akkor maga a programcsomag csak néhány fájlt tartalmazhat.

Ha nem, további fájlok hozzáadása ritkán oldja meg az átadást.

PCBA programming equipment used for production firmware loading and verification

 

Hogyan támogatja az STHL a firmware programozást a PCBA gyártáson belül?

A Shenzhen STHL Technology Co., Ltd. (STHL) támogatja az MCU, FPGA és EEPROM programozást a vonatkozó PCB-összeállítási projektek részeként. A programozás koordinálható funkcionális teszteléssel és projektspecifikus nyomonkövetési követelményekkel, ahol szükséges.

Egyedi összeállítás esetén a programozási áttekintés kiterjedhet a kiadott képre, a céleszközre, a kártya verziójára, a programozási hozzáférésre, a szükséges eszközkonfigurációra, az ellenőrzési módszerre és az ügyfél által biztosított bármely egységspecifikus adatra.

A pontos programozót, szerelvényt vagy kábelt, a biztonsági követelményeket, a firmware tulajdonjogát és a szükséges gyártási rekordokat az adott projekthez kell egyeztetni, nem pedig általános képességnyilatkozatból feltételezni.

 

Következtetés

A legfontosabb PCBA firmware programozási követelményeket nem az határozza meg, hogy az ügyfél HEX, BIN, ELF vagy más támogatott fájlt küld-e.

A termelésre{0}}kész átadásnak lehetővé kell tennie a gyártó csapat számára, hogy négy alapvető kérdésre válaszoljon:

  • Milyen adatokat kell programozni?
  • Melyik eszköz és kártya verzióhoz tartozik?
  • Hogyan kell a gyártást programozni és ellenőrizni?
  • Minek kell történnie, mielőtt a PCB-szerelvény a következő gyártási lépésre lép?

Egy egyszerű MCU tábla esetén ezek a válaszok elférnek egy oldalon. A több programozható eszközzel, egyedi adatokkal, több firmware-változattal vagy biztonsági követelményekkel rendelkező termék esetében természetesen több részletre van szükség.

A firmware készen áll a gyártásra, ha egy képzett gyártócsapat meg tudja ismételni a jóváhagyott programozási folyamatot a kiadott információkból, ahelyett, hogy olyan tudásra hagyatkozna, amely csak a fejlesztő fejében létezik.

A firmware-programozást igénylő összeállítások esetén adja meg a rendelkezésre álló programozási fájlokat és utasításokat a BOM-hoz, a Gerber-fájlokhoz, az összeállítási információkhoz, a mennyiséghez és a tesztelési követelményekhez.küldje el a PCBA projekt részleteit.

Programozási{0}}specifikus kérdéseivel forduljon az STHL-hez a következő telefonszámoninfo@pcba-china.com.

 

Gyakran Ismételt Kérdések

Milyen firmware fájlformátumokat használnak általában a PCBA programozáshoz?

A gyakori formátumok közé tartozik az Intel HEX, a nyers BIN, az ELF{0}}kapcsolódó formátumok, a Motorola S-record és a gyártóspecifikus programfájlok.
A megfelelő formátum a céleszköztől és a jóváhagyott programozási beállításoktól függ. A nyers BIN fájl általában külön meghatározott programozási címet igényel, mivel maga a fájl nem hordozza ezt a címinformációt.

Egy EMS-szolgáltatónak szüksége van firmware-forráskódra?

Általában nem, ha a megállapodás szerinti hatókör egy jóváhagyott gyártási kép programozására korlátozódik.
A forráskód vagy a fejlesztési projektek akkor válnak relevánssá, ha a gyártási körbe beletartozik a fordítás, a hibakeresés, a firmware módosítása vagy az éles kép létrehozása is.

Elég egy HEX fájl a gyártási programozáshoz?

Néha.
A gyártáshoz továbbra is szüksége van a céleszközre, a kiadott firmware-azonosítóra, az alkalmazandó kártyaváltozatra, a programozási hozzáférésre és az ellenőrzési módszerre. Egyértelműnek kell lennie annak is, hogy a kép tartalmazza-e az eszközkonfigurációt vagy az egységspecifikus adatokat, vagy azokat külön kezelik.

Mi a különbség a firmware programozás és az FCT között?

A firmware programozás írja és ellenőrzi a jóváhagyott adatokat a célprogramozható eszközben.
Az FCT ellenőrzi, hogy az árammal ellátott, programozott NYÁK-szerelvény teljesíti-e a projekt által megkövetelt funkciókat.
A két lépést össze lehet hangolni, de nem ugyanazt bizonyítják.

A firmware-nek véglegesnek kell lennie a PCBA árajánlat kérése előtt?

Nem feltétlenül.
Ha programozás várható, azt elég korán azonosítani kell ahhoz, hogy az EMS-szolgáltató áttekinthesse a programozási hozzáférést, a szerszámokat, a beállítást és a tesztelési hatókört.
A végleges jóváhagyott programképet és az utasításokat a megfelelő gyártási programozási lépés előtt ellenőrizni kell.

 
A szálláslekérdezés elküldése