ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 июля
1354380 Топик полностью
Cкpипaч, пророк (25.09.2023 17:14 - 17:52, просмотров: 326) ответил bnb62 на В процессе научишься писать хорошо структурированный (ссылка) Си, тогда и сам определишь угнетение рутиной многословия.... От лени всё :)! Друже, от стремления совершенствовать инструменты приходишь в эшелоны тяжёлых компиляторов. И всё чаще замечается парадокс - автор кода на С не понимает даже мнемонический ассемблер его же виршей будь код написан хоть на Бейсике или... нотной грамоте. Надо лишь правильно.
Интересно, но я бы поспорил. 

1.Микросекундный SysTime и watchdog.


И то и другое почти всегда есть аппаратно, грех не использовать.


2. Загрузчик (BootLoader)


Бред.

Для большинства устройств, загрузка "неавторизированным персоналом" недопустима.

А вот удаленная загрузка - часто панацея.

Или дешевый программатор, как вариант.


3. Энергонезависимая Файловая Система FlashFS (числохранилище)


От задачи зависит.


Во многих задачах я ОТКАТИЛСЯ с параметризации на прошивки, наглухо сконфигурированные под конкретных объект управления.

Так меньше потери времени на восстановление (взял прошивку из папки и накатил).


4. Модульные тесты (скрепы)


Внутри "боевой прошивки" ? И как эти тесты должны себя проявлять?

Выдавать сигналы на выходы (с угрозой что-то реально угробить) или как?

Не делаю.

Для отладки использую электро-механические модели (и, на ранних этапах, программные модели).


5. Health Monitor (медбрат)


Прикладной алгоритм должен быть спроектирован так, чтобы "ловить" все ненормальности.

Отдельный "медбрат" это дурдом и признак некачественного прикладного алгоритма.


6. Full-Duplex Command Line Interface (CLIшка)


У меня это три регистра на Modbus (адрес, данные, команда).

Они позволяют "на ходу" прочитать и записать любую переменную в ОЗУ и любой параметр настройки в EEPROM.


7. Диагностика


см. п.6. Лемма: что бы ты не предусмотрел, в реальности понадобится что-то другое :)


Возможно, п.п. 4,5,6,7 должны давать возможность запускать удаленно проверки памяти, часов, еще каких-то кишок,

но это не на восьмибитнике. В реальной эксплуатации, устройства заменяются сразу, до попытки что-то выяснить.

И без ремонта идут в утиль.

Стоимость человеко-часа делает ремонт бессмысленным.


8 Аутентификация бинаря


Обязательно! Пару раз бился головой об стену, из-за этого, по молодости.


9 Black-Box Recorder (Чёрный ящик)


Если железо позволяет. На восьмибитнике - не помещается.

Ни разу не пригодилось, правда :)

Очень полезно в спорных ситуациях "наездов".

Когда эксплуатация орет что у контроллера был глюк, а ты спокойно возражаешь "в логах все чисто" - дорогого стоит.


10 Переход в энергосбережение

Из CLI? :)

См. п.7.

Возможно это полезно для батареечных устройств, с целью проверить режим тестером, на столе.

В ходе реальной эксплуатации, все произойдет именно тогда, когда у вас не будет доступа к CLI :)

... но не любой ценой.