Современные стиральные машины, холодильники и даже водонагреватели снабжаются электронными модулями управления, которые следят за температурой и регулирует нагрев, считают обороты вращения барабана, проверяют исправность всех узлов и информируют пользователя или мастера о неисправностях. В центре всего этого процесса находится микроконтроллер (процессор), выполняющий определенный набор инструкций (прошивку).
Программа для прошивки стаирльной машины.jpg
Микроконтроллер или процессор
Разница между микроконтроллером и микропроцессором (сейчас все устройства это микро, но иногда эту приставку упускают для простоты) состоит в том, что микроконтроллер выполняет программный код, как и процессор, но еще и содержит в себе периферийные устройства, таймеры, устройства ввода-вывода (см. рис.).
Т.е. в бытовой технике все центральные микросхемы модуля управления - это микроконтроллеры, а не процессоры, но на разговорном сленге мастеров принято их называть именно процессоры.
Схематичное изображение прошивки
Это очень упрощенный и простой пример для понимания содержимого инструкции или программы для микроконтроллера стиральной машины, в реальности весь этот цикл гораздо сложнее и имеет кучу ответвлений и условий, но принцип именно такой.
Деление прошивки на config и sw
Со временем люди стали понимать, что в программе можно менять только определенные параметры и, тем самым, улучшать ее или настраивать под другие модели, например можно изменить время ожидания сигнала блокировки с 1 минуты на 30 секунд, чтобы быстрее проинформировать пользователя о необходимости закрыть люк или изменить количество оборотов на отжиме, чтобы белье было более сухим или на оборот снизить их, чтобы подшипники не выходили из строя через 1-2 года эксплуатации.
Заменив эти параметры переменными, мы получим два файла
software.bin (схематично изображен на рисунке)
config.bin содержимое ( X=50об/мин. Y=2 минуты Z=1 минуты )
Разница между СОФТ и КОНФИГ
Теперь можно менять отдельные параметры в файле config.bin и не переписывать всю программу. Таким образом, мы отделили конфигурационные данные (config) от основной программы.
software (SW) – программа для микроконтроллера, описывающая порядок выполнения операций и контроля процесса.
config – часть SW с настройками и параметрами необходимыми для выполнения программы.
Мы специально разделили эти два параметра и дали им два различных определения, чтобы внести наибольшую ясность в понимая процесса программирования, хоть мы и понимаем, что подобное деление не совсем корректное. Как первый, так и второй файл могут называть прошивка, по мимо этого прошивкой могут называть и процесс замены этих файлов памяти процессора.
Что такое компилятор?
Понятие «прошивка» берет свое начало еще в 1960 годах, когда применяли магнитные сердечники, сквозь которые продевали провода, определенным образом, делалось это вручную и было очень похоже на прошивку, с тех пор этот термин остался с нами и им теперь называют порой совсем разные вещи. К сожалению, только люди могут обмениваться словами, машины (микроконтроллеры) не понимают ни русского языка, ни любого другого человеческого языка, так как же им рассказать про инструкции (программу), которые им необходимо выполнять?
Для этого есть специальные программы-переводчики (компиляторы), которые переводят «человекопонятную» программу в машинный код, который и выполняет наш процессор, в большинстве своем данный переводчик встроен в среду разработки и является ее частью. Т.е. человек набирает программу, примерно по тому же алгоритму, как мы и говорили ранее, только употребляя допустимые слова и символы на английском языке, а среда разработки выдает на выходе файл, который понимает наш микроконтроллер и может его выполнить.
Декомпилятор
Обратный процесс перевода (декомпилирование) зачастую либо невозможен вовсе, либо очень трудоемок, но если смотреть внимательно, то можно выявить закономерности и выводить их в понятный вид. Как и в любой программе или цикле, в прошивке могут происходить сбои, вызванные внешними факторами или ошибками (недоработками) внутри программы, при этом содержимое программы может повредиться и приводить к неправильной работе устройства. Чтобы контролировать этот процесс разработчики стали считать байты (информация внутри прошивки) и эту сумму прописывать в саму прошивку, а мастера (например: по ремонту стиральных машин) могут с помощью специальных программ пересчитать эту сумму и сделать вывод о исправности или неисправности прошивки.
Контрольная сумма
Контрольная сумма — это некоторое значение, необходимое для определения исправности прошивки, путем сравнения исходного и посчитанного результата, вычисляется различными алгоритмами и, как правило, состоит из четырехзначного числа в шестнадцатеричном коде.
Изменяемая и неизменные области
Также прошивка может состоять из двух областей:
Область неизменных данных - та область, которая учитывается при подсчете контрольной суммы и которая не может изменяться в процессе хранения и выполнения программы.
Изменяемая область данных — часть данных прошивки, которые не учитываются при подсчете контрольной суммы и, как правило, хранящая текущее положение органов управления или статистику ошибок. Эти области могут находиться совместно в одном файле config (например прошивки EVO1 или EVO2 от Ariston/Indesit) или раздельно (как в Arcadia, статистика отдельно от config)
Вопросы и коментарии
@Вакуленко А. 7 ноября 2024
Почему не пропускает на второй урок?
@Владимир Б. 5 ноября 2024
Так и не принимает ответ на первый урок
Возможно нужно обратить внимание на то из чего прошивка состоит, как считают содержимое прошивки и с каким параметром его сравнивают
@Алексей К.
9 ноября 2024
@Алексей С. 5 ноября 2024
Вопросов нет всё ясно и понятно
Удачи в изучении, если будут вопросы обязательно пишите
@Юсуф Р.
9 ноября 2024
@Олег М. 4 ноября 2024
Не пускает во второй урок при правильном ответе на контрольный вопрос
Пробуйте переформулировать ответ, плюс смотрите подсказку по числу символов
@Динар Х.
9 ноября 2024
@Михаил З. 2 ноября 2024
Вапросов нет, всё понятно.
Удачи в изучении
@Андрей У.
9 ноября 2024
@Эдуард 19 апреля 2024
Вопросов нет, всё понятно.
@Максим Д. 26 марта 2024
Здравствуйте, нашел нужную прошивку на техномаг для аркадия. Там она весит около 10 кб. Скачал ее в телефон там показывает вес 77 кб. И теперь конвертер на сайте не принимает ее потому что она большая. Непойму что делать , подскажите пожалуйста.?
@Дмитрий Н. 27 января 2024
Что такое прошивка стиральной машины и как она влияет на ее функционирование? Я слышал, что прошивка - это процесс обновления программного обеспечения стиральной машины, но я не совсем понимаю, как это работает. Что именно меняется в прошивке и какие преимущества она может принести? Какие типичные обновления включает в себя прошивка стиральной машины? Какую роль играют производители и сервисные центры в процессе прошивки? Каким образом прошивка может решить проблемы и улучшить функциональность стиральной машины? Я также интересуюсь, есть ли у прошивки какие-то потенциальные негативные последствия, например, возможность повреждения устройства или ухудшения его производительности. Каким образом пользователи могут получить и установить обновленную прошивку для своей стиральной машины? И, наконец, стоит ли мне беспокоиться о прошивке своей стиральной машины, если она работает без проблем? Буду благодарен, если вы сможете ответить на эти вопросы и помочь мне разобраться в этой теме
Добрый день! У Вас очень много вопросов в одном, поэтому позволю себе ответить только на один. Прошивка это набор команд для микроконтроллера, ее нельзя улучшить, перепрошивкой, как например в телефонах. Она или работает или нет, а нужна она(перепрошивка) когда модуль управления не работает
@Яков
27 января 2024
@Дмитрий Р. 17 сентября 2022
а 00 или ff -это программа или пустая область
@Ильяс М. 10 декабря 2022
Для общего понимания норм
@Дмитрий С. 2 мая 2023
А разве в слове "сумма" 6 букв?
@Владимир А. 26 октября 2023
Очень интересно и познавательно для изучения и общего понимания процесса.
@Алексей К. 15 мая 2023
Доброго времени суток. Вот не могу понять. Из первого урока о прошивках ясно что при помощи сравнения контрольной суммы с исходным числом можно определить исправность прошивки . Получается что ответ на контрольный вопрос "контрольная сумма" но пишет что ответ не верный. Выходит или я ошибаюсь или глюк в программе . Что делать уже 4 раза прочитал этот урок 2 раза посмотрел видео, хочется дальше изучать но не пропускает . Помогите что не так ?
Вы верно отвечаете, попробуйте еще раз, если не получится, то обратитесь ко мне в телеграмм
@Александр К.
24 октября 2023
@Максим Ч. 15 марта 2022
Все здорово, но очень важно дополнить курс методикой прошивки процессоров Renesas которые стоят на модулях Arcadia 2-3 и Windy, так как большинство уже разобралось с Arcadia 1 и EVO2. Так же мне кажется уместным дополнить курс прошивкой DSP так как 3х фазные модуля попадаются довольно часто
Уже работаю над данным вопросом, но нужно понимать что важно дать не просто методику прошивки, но и инструмент для этой операции, так как покупать оригинальный программатор за 40-60 т.р. не по силам для мастеров
@Андрей А.
15 марта 2022