Прошивка
Это понятие впервые встречается на программе «Электроника, программирование и инженерная практика» — примерно 13-14 лет (7-8 класс).
Программа, записанная прямо внутрь устройства: хранится в его памяти и запускается сама, как только включили питание.
Инструкция, выученная наизусть: устройству не надо никуда подглядывать — включился и сразу знает, что делать.
Назвать три устройства дома, внутри которых записана программа, и одно, где программы нет вовсе (например, фонарик на кнопке).
Программа, хранящаяся в постоянной памяти устройства; микроконтроллер выполняет её с момента подачи питания. «Прошить» — записать программу в эту память: именно это происходит при загрузке скетча в Arduino. Новая прошивка полностью заменяет старую — поведение устройства меняется без переделки железа.
Прошить Arduino двумя скетчами по очереди и убедиться: после выключения и включения питания плата выполняет последний записанный.
ПО в энергонезависимой памяти (флеш), управляющее железом напрямую или поверх RTOS. В Arduino запись идёт через загрузчик (bootloader) — маленькую постоянную прошивку, принимающую код по последовательному порту; «чистый» микроконтроллер прошивают программатором. Краевые случаи: обрыв питания при обновлении может «окирпичить» устройство; обновление по воздуху (OTA) обычно требует места под две копии прошивки.
Найти ошибку: скетч компилируется, но плата после загрузки «молчит» — проверить выбор платы и порта в IDE и мигание светодиодов RX/TX при загрузке.
Частое заблуждение
«Прошивка делается на заводе один раз и навсегда». Нет: прошивку можно заменять; загружая скетч в Arduino, ты каждый раз записываешь в микроконтроллер новую прошивку.