вибір сторінки

Програмування ІС під час обробки друкованих плат

Програмування ІС під час обробки друкованих плат

Малюнок 1. Програмування ІС під час обробки друкованих плат

Останнє оновлення: травень 2026 р. · Посібник з виробництва для інженерів вбудованих систем та команд з постачання апаратного забезпечення

Існує два практичних способи завантаження прошивки в мікросхеми на платі під час складання друкованих плат: попередньо запрограмуйте пристрої перед розміщенням (поза платою, на груповому або автоматизованому програматорі) або запрограмуйте їх у схемі після складання через інтерфейс налагодження, такий як JTAG, SWD, ISP або послідовний завантажувач. Попереднє програмування відбувається швидко на лінії та підходить для великих обсягів зі стабільною прошивкою; внутрішньосхемне програмування дозволяє завантажувати останній образ, калібрувати та серіалізувати кожен пристрій, але потребує доступних програмних виводів, розроблених на платі. Більшість сучасних збірок використовують внутрішньосхемне програмування на випробувальній станції, оскільки це пов'язує прошивку, калібрування та відстежуваність на готовій платі.

Огляд двох підходів:
Позашляхове попереднє програмування — мікросхеми, запрограмовані в розетці/автоматизованій системі перед тим SMT. Швидкий цикл, доступ на платі не потрібен, але деталі призначені для однієї версії прошивки.
Внутрішньосхемне / внутрішньосистемне програмування (ICSP/ISP) — запрограмовані чіпи після Збірка через JTAG/SWD/SPI/UART на платі. Гнучкий, підтримує дані для кожного блоку, але вимагає доступу для програмування в макеті.

Чому програмування ІС є частиною обробки друкованих плат

Більшість плат, що виготовляються сьогодні, містять принаймні один програмований пристрій — мікроконтролер, мікроконтролер з інтегрованим радіомодулем, флеш-пам'ять, пристрій конфігурації FPGA або інтелектуальну мікросхему живлення/датчика. Зібрана плата ще не є робочим продуктом, доки цей кремнієвий елемент не містить правильної прошивки. Згортання програмування в друковану плату — замість того, щоб постачати порожні плати для прошивки клієнтом — економить крок, дозволяє заводу перевірити роботу пристрою під час функціонального тесту та дозволяє записувати унікальні дані в кожен блок. Питання не в тому, Чи програмувати під час асемблерування, але який метод підходить до виробу.

Спосіб 1: Попереднє програмування поза платою мікросхеми

Під час позаплатного попереднього програмування пристрої завантажуються прошивкою. перед тим вони розміщуються на платі. Це робиться на програматорі пристроїв, а на гучності на автоматизована система програмування який витягує деталі зі стрічково-котушкового пристрою, програмує їх (часто багато одночасно — «групове» програмування), перевіряє та перемотує або подає їх на лотки для машини захвату та розміщення.

  • Сильні сторони: дуже швидкий на лінії поверхневого монтажу (без кроку програмування під час складання), не потрібен доступ до програмування на платі, висока пропускна здатність для стабільної прошивки.
  • Компроміси: Деталі призначені для однієї версії прошивки, тому пізня зміна коду означає перепрограмування або утилізацію запасів; обробка додає крок; а дані для кожного блоку (серійні номери, калібрування) зазвичай не можуть бути записані таким чином, оскільки кожна деталь ідентична.

Попереднє програмування є незамінним для великосерійних продуктів, прошивка яких заморожена, а також для пристроїв, які незручно програмувати в схемі.

Спосіб 2: Внутрішньосхемне / внутрішньосистемне програмування (ICSP/ISP)

Внутрішньосхемне програмування — також відоме як внутрішньосистемне програмування (ISP) або внутрішньосхемне послідовне програмування (ICSP) — завантажує прошивку. після Пристрій припаюється до плати через невеликий інтерфейс програмування, розташований на збірці. Програматор підключається до роз'єму або набору тестових контактних майданчиків, плата подається на живлення, а прошивка записується та перевіряється на місці.

  • Сильні сторони: завжди завантажує поточний образ прошивки; підтримує калібрування та дані для кожного пристрою; забезпечує перевірку функціональності одразу після програмування; оновлення прошивки не потребують переробки деталей.
  • Компроміси: Розташування повинно забезпечувати доступ до програмування; це додає час на станції програмування/тестування; а спільне використання виводів або відсутність підтягувань може призвести до збоїв, якщо їх не продумати ретельно.

Це налаштування за замовчуванням для більшості сучасних розробок, оскільки воно об'єднує програмування, калібрування та відстеження на готовій платі, а також тому, що прошивка майже завжди постійно розвивається.

Загальні інтерфейси програмування ІС (JTAG, SWD, SPI)

інтерфейс Типові пристрої примітки
SWD (2-провідний) Мікроконтролери ARM Cortex-M Компактний (SWDIO/SWCLK + живлення/GND); також налагодження
JTAG- Мікроконтролери, FPGA, CPLD, ланцюги граничного сканування Можна програмувати прошивку та тестувати з'єднання
SPI / Інтернет-провайдер AVR, SPI флеш-пам'ять, пристрої конфігурації Дивіться спільний доступ до автобуса під час програмування
ICSP Сімейство мікросхем PIC Кілька контактів; резервний доступ до MCLR/PGC/PGD
Завантажувач UART / USB Багато мікроконтролерів із вбудованим завантажувачем Програми через існуючі послідовні/USB-лінії
I²C EEPROM, інтелектуальні датчики Для даних конфігурації/калібрування більше, ніж коду

Попереднє програмування проти внутрішньосхемного програмування: що обрати

Розгляд Віддає перевагу попередньому програмуванню Сприятливості всередині схеми (ICSP)
Об'єм Висока, стабільна гучність Від прототипу до середнього обсягу; змішані збірки
Стабільність прошивки Заморожений, рідко змінюється Образи, що розвиваються, або образи для кожної збірки
Дані на одиницю Не потрібно (ідентичні деталі) Серійні номери, MAC-код, потрібне калібрування
Доступ до ради директорів Немає бажаного заголовка програмування Доступні програмні панелі/роз'єми
Перевірка під час тесту Зроблено окремо У поєднанні з FCT в одній станції

Багато програм використовують гібрид: великий обсяг зовнішньої пам'яті, попередньо запрограмований поза платою, тоді як мікроконтролер прошивається внутрішньосхемно, тому останні дані програми та кожного блоку завантажуються в лінію.

Як спроектувати плату для внутрішньосхемного програмування

Внутрішньосхемне програмування проходить гладко лише за умови, що макет це підтримує. Сплануйте це перед випуском файлів:

  • Відкрийте програмні контакти — невеликий роз'єм або, для економії місця, тестові контакти розміром з контакти pogo. Тримайте їх збоку та подалі від високих деталей.
  • Зарезервуйте правильні сигнали — наприклад, SWDIO/SWCLK, або MCLR/PGC/PGD, або JTAG TCK/TMS/TDI/TDO/TRST, плюс датчик живлення цілі та заземлення.
  • Захистіть спільні автобуси — додайте послідовно з’єднані резистори або ізоляцію, щоб програматор не конкурував з іншими пристроями на тих самих лініях під час програмування.
  • Підтягування/підтягування вниз та скидання — забезпечити правильні пасивні стани та доступне скидання, щоб пристрій надійно переходив у режим програмування.
  • Живлення та послідовність — забезпечити можливість живлення пристрою для програмування (живлення від цілі або програматора) без зворотного живлення решти плати.
  • Плануйте безпеку заздалегідь — якщо ви встановлюєте біти захисту від читання/блокування, переконайтеся, що послідовність все ще дозволяє перевірку, перш ніж деталь буде заблоковано.

Це саме ті предмети, а Огляд дизайну для тестування перевірки, оскільки доступ до програмування та доступ до тестування зазвичай використовують один і той самий пристрій.

Програмування для кожного блоку: серіалізація, калібрування, безпека

Одна з найвагоміших причин для внутрішньосхемного програмування полягає в тому, що кожна плата може отримувати самостійно дані:

  • Серійні номери та унікальні ідентифікатори для відстеження та гарантії.
  • MAC-адреси / мережеві ключі для підключених продуктів.
  • Калібрувальні константи вимірюється під час функціонального тесту та записується назад у пристрій, щоб кожен блок відповідав специфікаціям.
  • Конфігурація регіону/функції для варіантів продукту, побудованих на основі одного проекту апаратного забезпечення.
  • Замок безпеки — після програмування та перевірки встановлюються біти захисту від читання або блокування для захисту IP-адреси прошивки. Оскільки блокування часто є незворотним, це останній крок, який ретельно перевіряється.

Де відбувається програмування ІС на лінії друкованих плат

У типовому процесі внутрішньосхемне програмування виконується на спеціалізованій програмній станції або, частіше, у поєднанні з функціональний тест: плата вставляється в прилад, завантажується прошивка, виконується калібрування, пристрій перевіряється, записуються дані та дані безпеки для кожного пристрою, а також реєструється результат проходження/непроходження, а також запис для цього серійного номера. Поєднання програмування з FCT означає, що пристрій визнається справним лише після того, як він запрограмований та доведено, що працює.

Це теж де простежуваність фіксується — пов’язуючи версію прошивки, значення калібрування та результати тестів з кожним пристроєм — що є тим видом доказів, які іноземні покупці повинні запитувати у виробника за контрактом.

Поширені помилки програмування ІС, яких слід уникати

  • Немає доступу до програмування в макеті — виявлення на виробництві того, що нікуди підключити програміста.
  • Суперечка за автобус — спільне використання ліній програмування з іншими активними пристроями та відсутність ізоляції, що призводить до періодичних збоїв.
  • Занадто рано блокується — встановлення бітів безпеки перед перевіркою, щоб не можна було діагностувати збої.
  • Перенесення попередньо запрограмованих запасних частин на прошивку, яка незабаром буде змінена — утилізація або переробка деталей після оновлення коду.
  • Нечітка передача — не вказано, яку версію прошивки, які дані для кожного пристрою та який стан безпеки має застосовувати завод.

Послуги з програмування ІС у Highleap Electronics

Highleap Electronics – це китайський виробник друкованих плат та друкованих плат, який інтегрує програмування пристроїв у складання «під ключ» для клієнтів, що здійснюють доставку до Сполучених Штатів, Європи та Азіатсько-Тихоокеанського регіону. Метою є плата, яка постачається запрограмованою, відкаліброваною, перевіреною та простежуваною, а не пустою.

  • Програмування IC через JTAG, SWD, ISP/ICSP та послідовні завантажувачі, вбудовані або попередньо запрограмовані, залежно від потреб проекту.
  • Функціональне тестування поєднується з програмуванням та калібруванням на одній станції, з веденням записів для кожного блоку.
  • Огляд дизайну для тестування доступ до програмування, ізоляція та послідовність безпеки перед заморожуванням файлів.
  • PCBA під ключ охоплюючи весь процес пошуку, поверхневого монтажу (SMT), програмування, тестування та серіалізації.
Деталі програмування ІС під час обробки друкованих плат

Малюнок 2. Деталі програмування ІС під час обробки друкованих плат

Програмування ІС під час PCBA (PC Based Code - Часті питання)

Що означає внутрішньосхемне програмування (ICSP)?

Це означає завантаження прошивки в пристрій після того, як він вже припаяний до плати, через інтерфейс програмування (наприклад, SWD, JTAG, ISP або ICSP), відкритий на збірці. Плата підключається до програматора, подається живлення, а прошивка записується та перевіряється на місці.

Що краще: попередньо програмувати мікросхеми чи програмувати їх на платі?

Це залежить від обсягу, стабільності прошивки та того, чи потрібні кожному пристрою унікальні дані. Попереднє програмування є найшвидшим для великого обсягу, замороженої прошивки. Внутрішньосхемне програмування краще, коли змінюється прошивка, коли потрібне калібрування або серіалізація, або коли ви хочете перевірити пристрій під час функціонального тесту. Гібридні підходи є поширеними.

Що мені потрібно забезпечити для програмування ІС під час складання?

Образ та версія прошивки, цільовий пристрій та інтерфейс, точки програмування/підключення на платі, будь-які дані для кожного пристрою (серійні номери, MAC-адреса, процедура калібрування) та бажаний стан безпеки/блокування. Програмування потім виконується на виділеній станції або разом із функціональним тестом.

Чи може кожна плата отримати унікальний серійний номер або калібрування?

Так — це ключова перевага внутрішньосхемного програмування. Унікальні ідентифікатори, MAC-адреси та калібрувальні константи, виміряні під час тестування, можуть бути записані в кожен пристрій, а значення зареєстровані для відстеження.

Як захистити мою прошивку від зчитування?

Більшість мікроконтролерів підтримують біти захисту від читання або блокування, які вимикають зовнішнє зчитування після програмування. Вони встановлюються на завершальному етапі, після перевірки пристрою, оскільки блокування часто є незворотним. Обговоріть з виробником точний стан безпеки, який ви хочете отримати.

Чи займає додавання програмного заголовка багато місця на платі?

Не обов'язково. Ви можете використовувати компактний дво- або чотирипровідний інтерфейс (наприклад, SWD) або замінити роз'єм невеликими тестовими контактами, до яких контактують контакти випробувального пристрою, що мінімізує займану площу виробництва.

Чи може китайський виробник безпечно обробляти програмне забезпечення?

Так, коли виробник контролює версії прошивки, програмує та перевіряє на задокументованій станції, застосовує узгоджене блокування безпеки та надає записи для кожного пристрою. Визначте версію прошивки, дані та політику безпеки у письмовій формі, щоб не було двозначності щодо того, що завантажується.

Теги

5G PCB Материнська плата зі штучним інтелектом Алюмінієва друкована плата Конденсатор Керамічна друкована плата Звичайна обробка поверхні Мідна монета Друкована плата свердлити Дрон PCB Послуги з виробництва електроніки Гнучка друкована плата FR4 PCB HDI HDI PCB Важка мідна друкована плата HF PCB Високошвидкісна друкована плата клавіатура LED Плата світлодіодного драйвера LED PCB Матеріальна Медичні друковані плати PCB з металевим сердечником PCB Assembly Дизайн друкованої плати Файли дизайну друкованої плати База знань PCB Виробництво друкованих плат Матеріали для друкованих плат Упаковка друкованої плати Виробництво друкованих плат Зворотне проектування друкованих плат Технологія PCB Тест PCB Методи випробування друкованих плат Друкована плата силової електроніки Джерело живлення Резистор РЧ друкована плата Жорстка друкована плата Flex Напівпровідникова друкована плата SMT Пайка Паяльна маска
отримати миттєву цінову пропозицію

Рекомендовані повідомлення

Як отримати цінову пропозицію на друковані плати

Давайте проведемо для вас аналіз DFM/DFA та надамо вам звіт. Ви можете безпечно завантажити свої файли через наш вебсайт. Нам потрібна наступна інформація, щоб надати вам цінову пропозицію:

    • Gerber, ODB++ або .pcb, спец.
    • Список специфікації, якщо вам потрібна збірка
    • Кількість
    • Час повороту
Окрім виробництва друкованих плат, ми пропонуємо повний спектр електронних послуг, включаючи проектування друкованих плат, виготовлення друкованих плат (PCBA) та комплексні рішення. Незалежно від того, чи потрібна вам допомога з прототипуванням, перевіркою проекту, пошуком компонентів чи масовим виробництвом, ми надаємо комплексну підтримку, щоб забезпечити успіх вашого проекту.

Для послуг з виготовлення друкованих плат (PCBA), будь ласка, надайте свою специфікацію матеріалів (BOM) та будь-які конкретні інструкції зі складання. Ми також пропонуємо аналіз DFM/DFA для оптимізації ваших конструкцій для технологічності та складання, забезпечуючи безперебійний виробничий процес.






    Швидка примітка: Наша команда надішле вам електронного листа невдовзі після надсилання. Щоб гарантовано отримати нашу відповідь, ми рекомендуємо перевірка папки СПАМ/НЕПОЖЕЛАНА ПОШТА якщо ви не бачите нашого повідомлення у своїй поштовій скриньці.