16+
Четверг
22 ноября
Вход |Карта сайта | |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры

 
   Новая тема Правила Регистрация Поиск »» Архив
Вернуться в конференциюТопик полностью
Николай Коровин  (24.06.2017 00:39, ссылка, просмотров: 2620)
Кто-нибудь делал настройки девайса при помощи эмуляции USB-харда/флопа? Делается массовый сторож (скажем, через V-USB, если на Меге --> ) но вместо SD дальше типа как-то так: 
Хардкодится системная область. Я в три сектора по 512 уложился, но оно, хотя и соответствует формальным спецификациям FAT, но безбожно нарушает негласные умолчания, поэтому работает не везде (в контр не шил, тестил на волшебной коробочке Zalman ZM-VE200). Даже линух увидел, но всосал только как read-only. Правда, это было напрасное задротство, потому что объём прошивки не меняется, отдавать 1 или 8 одинаковых секторов, забитых константами. Короче, это всё была лирика, а суть в том, что контр при доступе к системной области на чтение отдаёт её, а при доступе на запись -- говорит, мол, всё сделано, хозяин, а сам ессно ни байта нигде не меняет, потому что нету никакой ложки. Так вот, вся фишка в том, что именно записано в этой системной области. А записано в ней то, что у нас в корне лежит один файл, который занимает единственный существующий на диске кластер. Остальные или забиты константой Bad, или просто после него диск кончается. И вот доступ к этому кластеру обрабатывается уже "всерьёз". Если приказано в него записать -- контр парсит содержимое и извлекает оттуда настройки прибора. Если приказано читать -- вытягивает из EEPROM настройки и отдаёт этот типа-как-файл. Это был у меня 4-й сектор, итого этот "иногда почти работающий" образ потянул на два килобайта всего, хотя, как я сказал выше, это значения не имеет. Можно и стандартную дискету (с FAT12 обычного её размера) так же захардкодить, просто задать "от номера такого-то до такого-то отдавать сплошняком константу такую-то". Т. е. получаем весьма небольшой плевочек кода, который эмулирует дисковое устройство, на котором всегда виден один файл, хоть стирай, хоть форматируй. И этот файл можно редактором открыть, поменять настройку и пересохранить. Распарсить текст, пришедший на контр от компа -- тоже не особо сложная задача, сформировать "на отдачу" -- тем более. Кто-нибудь так делал уже? Понравилось или я хернёй занимаюсь?
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7527 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXVIII