LINUX.ORG.RU

История изменений

Исправление KivApple, (текущая версия) :

Любой более-менее нормальный микроконтроллер (во всяком случае PIC, MSP430, AVR и ARM такое умеют) поддерживает создание bootloader. А значит может прошиваться через что угодно, хоть UART, хоть SPI, хоть I2C, хоть через Интернет (с помощью Wi-Fi или GSM-модуля, разумеется). Просто написать свой загрузчик или взять готовый, если он подходит тебе.

Да и UART в некоторых ситуациях вполне может мультиплексироваться. Например, рассмотрим MSP430. У него для прошивки через UART-BSL (такой bootloader прошитый изготовителем) надо сначала подать правильные импульсы на RESET и TEST, а UART через который идёт прошивка является программным и висит на других ножках, так что аппаратный не тратится. Можно соединить параллельно все МК и подключить к прошивальщику, а RESET и TEST вывести индивидуально от каждого МК. Благо импульсы на них очень просты и аппаратный UART для них не нужен, хватит GPIO. В итоге получается вполне себе мультиплексирование. Только если для SPI нужна одна линия для выбора МК (RESET у AVR), то у MSP430 потребуются две (RESET и TEST). У других МК ситуация та же - если для входа в bootloader (то что STM32 шьются по UART это таки бутлоадер, штатная прошивка у них идёт через JTAG, у AVR да, прошивка через SPI реализована аппаратно) требуются простые действия с некоторыми входами, то можно запараллелить все сигнальные линии кроме этих.

Исправление KivApple, :

Любой более-менее нормальный микроконтроллер (во всяком случае PIC, MSP430, AVR и ARM такое умеют) поддерживает создание bootloader. А значит может прошиваться через что угодно, хоть UART, хоть SPI, хоть I2C, хоть через Интернет (с помощью Wi-Fi или GSM-модуля, разумеется). Просто написать свой загрузчик или взять готовый, если он подходит тебе.

Да и UART в некоторых ситуациях вполне может мультиплексироваться. Например, рассмотрим MSP430. У него для прошивки через UART-BSL (такой bootloader прошитый изготовителем) надо сначала подать правильные импульсы на RESET и TEST, а UART через который идёт прошивка является программным и висит на других ножках, так что аппаратный не тратится. Можно соединить параллельно все МК и подключить к прошивальщику, а RESET и TEST вывести индивидуально от каждого МК. Благо импульсы на них очень просты и аппаратный UART для них не нужен. В итоге получается вполне себе мультиплексирование. Только если для SPI нужна одна линия для выбора МК (RESET у AVR), то у MSP430 потребуются две (RESET и TEST).

Исходная версия KivApple, :

Любой более-менее нормальный микроконтроллер (во всяком случае PIC, MSP430, AVR и ARM такое умеют) поддерживает создание bootloader. А значит может прошиваться через что угодно, хоть UART, хоть SPI, хоть I2C, хоть через Интернет (с помощью Wi-Fi или GSM-модуля, разумеется). Просто написать свой загрузчик или взять готовый, если он подходит тебе.

Да и UART в некоторых ситуациях вполне может мультиплексироваться. Например, рассмотрим MSP430. У него для прошивки через UART-BSL (такой bootloader прошитый изготовителем) надо сначала подать правильные импульсы на RESET и TEST, а UART через который идёт прошивка является программным и висит на других ножках, так что аппаратный не тратится. Можно соединить параллельно все МК и подключить к прошивальщику, а RESET и TEST вывести индивидуально от каждого МК. Благо импульсы на них очень просты и аппаратный UART для них не нужен.