ST-ONE обладает собственной файловой системой. При подключении к компьютеру или смартфону в системе появится еще один диск или карта памяти. Таким образом, можно обновить прошивку, произвести необходимые первичные настройки запуска устройства и выполнить другие операции в сервисном режиме.
Файловая система загрузчика представляет собой набор файлов и обладает рядом важных качеств. В основе файловой системы лежит стандарт FAT12. Это дает обратную совместимость с огромным множеством операционных систем. Но это не классическая FAT. Файловая система ST-ONE значительно компактнее и имеет ряд таких преимуществ как: управление режимом READONLY; защита таблицы размещения файлов; прозрачная работа с ремапом кластеров и адресов и некоторые другие хитрые трюки.
Так как FAT загрузчика не является стандартной - производить форматирование утилитами операционной системой недопустимо. Диск может быть отформатирован неправильно и корректная работа устройства будет невозможной. Поэтому форматирование стандартными утилитами запрещено на аппаратном уровне и не принесет ожидаемого результата. При этом часть кластеров может быть обнулена. Если возникает необходимость форматировать файловую систему, с целью привести ее к первоначальному виду или гарантированно затереть прошивку и другие пользовательские данные - используется функция системного форматирования, вызываемая программно или аппаратно на устройстве.
Файловая система является прозрачным отражением FLASH памяти MCU!
При подключении ST-ONE к компьютеру с операционной системой Windows можно увидеть следующее окно:
Как видно на изображении выше - файловая система состоит из 3 основных файлов. Устройство имеет брендовую пиктограммку N и метку ST-ONE, что легко выделяет его в списке устройств и дисков файловой системы компьютера.
На самом деле, файловая система несколько шире. И имеет системные, скрытые файлы. Увидеть их можно, например, воспользовавшись файловым менеджером.
Таким образом, мы имеем файловую систему состоящую из 5 файлов.
Файл | Размер, байт | Назначение |
---|---|---|
readme.txt | 512 | Сгенерированный информационный файл |
firmware.ini | 512 | Файл конфигурации загрузчика и прошивки в формате INI |
firmware.bin | 486 400 | Файл прошивки. Основная микропрограмма |
nicombel.ico | 512 | Иконка-логотип загрузчика |
autorun.inf | 512 | Файл описания для файловых систем Windows |
Такой вид система имеет после аппаратного форматирования. Вид и структура файлов может немного различаться в зависимости от версии загрузчика.
Как видно из таблицы выше, размер основной микропрограммы может достигать значительных размеров - 486 400 байт, что равняется 475 Кбайтам из максимально возможных 512 Кбайт FLASH-памяти предоставленной микроконтроллером.
Файлов может быть и больше, а микропрограмма может состоять из множества файлов, в зависимости от конфигурации устройства. При этом совокупный объем файлов микропрограммы не должен превышать размер в 475 Кбайт - то есть пространство, зарезервированное под основную микропрограмму.
Удаление или изменение системных файлов загрузчика - иконки и autorun не предполагается штатными средствами. Файлы имеют тип «системный» и в большинстве операционных систем или файловых менеджеров будут просто скрыты, что не будет мешать работе с загрузчиком.
Интерес для пользователя представляют 2 оставшихся файла: firmware.ini и readme.txt
Это главный файл конфигурации загрузчика. Он содержит важную информацию, параметры старта системы, позволяет лицензировать программное обеспечение, а так же выполнить тонкую аппаратную настройку - задать PIN-ы индикации, управления USB, заблокировать или разблокировать сервисный режим, устанавливать защиты.
FIRMWARE.INI имеет стандартный формат INI-файла, интуитивно понятен и редактируется любым текстовым редактором. Сохранить изменения можно простым сохранением файла, а указанные настройки будут применены при следующем старте системы.
Существует соглашение: регистр символов при работе с файлом конфигурации должен быть БОЛЬШИМ, а размер файла не может превышать 512 байт.
Соглашение принято с целью исключить реализацию более сложных механизмов обработки конфигурации и сократить объем загрузчика. В остальном - это самый обычный INI-файл и определение параметров осуществляется по принципу: [ПАРАМЕТР]=[ЗНАЧЕНИЕ]
Более подробное описание файла параметров и его директив смотрите в специальном разделе или документации.
Файл содержит информацию о текущей системе, он формируется динамически и генерируется для каждого чипа и версии загрузчика автоматически. Readme.txt содержит в себе информацию о версии загрузчика, модели контроллера на котором он работает, уникальный код чипа UniqueID, который присвоен каждому чипу при производстве и не подлежит изменению.
В файле информации можно увидеть калькулируемые значения точек входа для основной микропрограммы и сервисных JACK-подпрограмм. Это позволит сразу создавать программное обеспечение для ST-ONE не обращаясь в третьи источники за информацией для вашего загрузчика. Параметры OFFSET необходимо передать компилятору при сборке программного обеспечения для MCU.
Так же файл содержит другую системную информацию. Описание параметров вы сможете найти в соответствующем разделе сайта или документации.