реклама на сайте
подробности

 
 
> своя FAT для связки MK <=> FLASH, Работа с FLASH - SD/MMC на MK - у меня АВР
QuickWitted
сообщение Sep 6 2007, 08:12
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 322
Регистрация: 21-06-07
Из: СНГ
Пользователь №: 28 596



Предлагаю разработать упрощённый аналог FAT для работы микропроцессора с флеш картами.

В современных микропроцессорах нижнего ценового диапазона относительно МАЛО RAM на борту
(У АТMega16 - 1к.б. НА ВСЁ). В связи с этим очень трудно сделать поддержку FAT - на запись.
(Флеш карты могут записывать информацию только БЛОКАМИ по 512байт (1024байт для >1Gb.))
Проще говоря таблицу размещения файлов надо где-то хранить иначе придётся после чтения
каждого кластера читать FAT снова и выяснять какой кластер писать/читать следующим
(на что тратится очень много ресурсов).

Если писать напрямик, а не в файл, то потом относительно проблемно будет читать такую флеш на ПК.
(т.е. нужен прямой доступ к диску, что трудно получить под Win XP)

В сети гуляет идея делать Пред форматирование (т.е. писать файл, а потом писать/читать уже из него)
но этот аспект нигде не описан.

Предлагаю разработать свою упрощённую файловую систему.
Т.е. на большую часть флешки писать файл данных, а в конце файл разметки.
Почему в конце - начало кластера 0 в FAT от диска к диску плавает,
а последний блок последнего сектора, последнего Кластера всегда в конце флеши.

Прогу по созданию файлов на флешке, я уже нацарапал...
На данном этапе думаю о создании файлового менеджера - по вытаскивании/залитию файлов в образ.

Интересно мнение ALL о данном проекте и предложения о том какие элементы
данных о файле включить и как более оптимально организовать файл разметки...
(если ковырять - то сделать универсально)


--------------------
Сайт с разработками http://www.mindrunway.ru/
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Cyber_RAT
сообщение Jan 8 2008, 09:49
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 162
Регистрация: 7-12-07
Из: Могилев
Пользователь №: 33 064



т.е. 16 мб флешка строго FAT12 ?
вроде как я свою посмотрел она 16 фат пишет... (или это из-за того что я ее под линуксом форматил с указанием ФС)
Go to the top of the page
 
+Quote Post
QuickWitted
сообщение Jan 9 2008, 04:31
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 322
Регистрация: 21-06-07
Из: СНГ
Пользователь №: 28 596



Цитата(Cyber_RAT @ Jan 8 2008, 15:49) *
т.е. 16 мб флешка строго FAT12 ?
(или это из-за того что я ее под линуксом форматил с указанием ФС)


Да...

Ни виндой, ни спец тулзой Hard Disk Low Level Format Tool отформатить под Фат16 у меня не вышло...
(обе жалуются на маленький обьём и форматить в фат16 на отрез отказываются...)

Если кто знает метод форматирования под виндой - киньте сюда...
(у меня есть пару флэшей 16 мб - для читалки книг сойдёт, но отформатировать под фат16 не получается...)


--------------------
Сайт с разработками http://www.mindrunway.ru/
Go to the top of the page
 
+Quote Post
galjoen
сообщение Jan 11 2008, 14:36
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(QuickWitted @ Jan 9 2008, 07:31) *
Если кто знает метод форматирования под виндой - киньте сюда...
(у меня есть пару флэшей 16 мб - для читалки книг сойдёт, но отформатировать под фат16 не получается...)

1. ПУСК
2. Мой компьютер (правой кнопкой)
3. Управление
4. Управление дисками
5. Выбрать нужный диск по названию, или если не отформатирован по емкости (правой кнопкой по окошечку где имя/размер написаны)
6. Форматировать
7. Размер кластера устанавливаем 512. Тогда всё, что больше 2 Мбайт (т.к. у FAT12 max 0xFFF кластеров м.б. - 4096*512=2097152) FAT16 будет. Если кластер 1024 установить - то начиная с >4 Мбайт и т.д.

А я логи в флешку пишу в предварительно отформатированную, и в файл определённый, уже на неё записанный. А по другому у вас и не получится - если флешка переполнится, что тогда делать??? Файл стирать и новый открывать? Это долго - логи за это время потеряются, а уж в том, что ОЗУ не хватит я уверен. А если в таком случае в начало файла писать по кольцу (FIFO) - преимуществ нету. Всё равно файл разбирать придётся - где у него начало искать.
Я ещё внутренние буфера флешки (у моей их 2 штуки по 1056 байт) как ОЗУ использую. Хотя это м.б. вам и не подойдёт. У меня-то флешка AT45DB642D (8 Мбайт) в само устройство запаяна, а всё это - составное USB устройство: MassStorage + HID. Т.е. флешку вытащить невозможно. Процессор у меня тоже AVR. Хоть и 4 кбайта памяти имеет, но на MassStorage max 600 байт удалось выделить. Других задач очень много. Да и к USB он редко подключается, только если логи считать или перенастроить (задача не основная).
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 11 2008, 15:51
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(galjoen @ Jan 11 2008, 16:36) *
1. ПУСК

Да sad.gif.
format /?
дальше все будет написано.



Цитата(QuickWitted @ Sep 6 2007, 10:12) *
Предлагаю разработать упрощённый аналог FAT для работы микропроцессора с флеш картами.

Из истории - FATы прекрасно существовали на персональном компьютере IBM XT, если кто не знает, то это на 8bit 8088 процессере с тактовой частотой 4,7MHz. Трудно найти сейчас контроллер не превосходящий сей компьютер по вычислительной мощи.
Предлагаю НЕ разрабатывать упрощенные аналоги FAT, если речь идет о съемных носителях.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
galjoen
сообщение Jan 14 2008, 12:07
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(zltigo @ Jan 11 2008, 18:51) *
format /?
дальше все будет написано.

А дальше надо будет dir набрать - чтоб узнать, что форматировать. А флешка-то не отформатирована - её-то в списке и не будет. Тогда, наверное, методом перебора надо будет действовать - форматировать всё подряд A, B, C и т.д.
Уважаемый(ая) zltigo, вам самому-то какой способ больше нравится? А другим участникам форума? Только не подумайте, что я любитель microsoft. Вовсе нет! Сам частенько sudo (уст-ть права админа - в Linux) набираю. Но при этом вовсе не садо себя чувствую, а совсем наоборот - мазо.
Цитата(zltigo @ Jan 11 2008, 18:51) *
Из истории - FATы прекрасно существовали на персональном компьютере IBM XT, если кто не знает, то это на 8bit 8088 процессере с тактовой частотой 4,7MHz. Трудно найти сейчас контроллер не превосходящий сей компьютер по вычислительной мощи.
Предлагаю НЕ разрабатывать упрощенные аналоги FAT, если речь идет о съемных носителях.

Полностью согласен!!!
+1
Ещё вспоминаю PDP-11 (Электроника-60). У неё, в базовой версии, 4 кслова (8 кбайт) ОЗУ было. А файловая система такая упрощённая была (все файлы линейные и т.д.), что загрузчик с дискеты в 32 слова (64 байта) умещался. Всё ПЗУ занимал! Такие ПЗУ тогда были.
Ну и где сейчас та файловая система? И ваша, упрощённая, уважаемый(ая) QuickWitted - там-же будет.

Если надо ОЗУ увеличить - хорошо-бы SPI-шное ОЗУ поставить. Знаю, что есть такие. Сам бы поставил, но купить не могу - говорят экзотика. Может кто использует (подскажет где купить)?
А то дошёл до того, что флешку SPI-шную (самую маленькую+дешёвую) ставил, что-бы её буфера как ОЗУ использовать. У AT45DB011 два буфера, по 264 байта каждый.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 14 2008, 23:52
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(galjoen @ Jan 14 2008, 15:07) *
А дальше надо будет dir набрать - чтоб узнать, что форматировать.
... дальнейшее поскипано...

Для общего развития - список дисков смотрится отнюдь не перебором dir. Воспользуйтесь diskpart ->
list volume
Цитата
самому-то какой способ больше нравится?

Командная строка.
Цитата
частенько sudo (уст-ть права админа - в Linux) набираю.

Для общего развития - это отнюдь не установить права админа. Проконсультируйтесь у сисадмина по поводу разрешенных Вам действий.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- QuickWitted   своя FAT для связки MK <=> FLASH   Sep 6 2007, 08:12
- - DL36   Цитата(QuickWitted @ Sep 6 2007, 11:12) П...   Sep 7 2007, 12:17
|- - QuickWitted   Цитата(DL36 @ Sep 7 2007, 18:17) 1K RAM к...   Sep 9 2007, 18:13
|- - DL36   Цитата(QuickWitted @ Sep 9 2007, 21:13) П...   Sep 10 2007, 12:48
|- - QuickWitted   ЦитатаБолее прямого примера (ну хотя бы рабочего п...   Sep 11 2007, 03:42
|- - QuickWitted   Цитата(QuickWitted @ Sep 11 2007, 09:42) ...   Sep 11 2007, 08:38
- - alexander55   Цитата(QuickWitted @ Sep 6 2007, 12:12) П...   Sep 20 2007, 11:41
|- - QuickWitted   Цитата(alexander55 @ Sep 20 2007, 17:41) ...   Sep 25 2007, 05:09
- - Cyber_RAT   Интересно - пишем. вообщем есть задача - собирать ...   Dec 10 2007, 07:24
|- - Сергей Борщ   Цитата(Cyber_RAT @ Dec 10 2007, 09:24) По...   Dec 10 2007, 16:02
|- - QuickWitted   Цитата(Сергей Борщ @ Dec 10 2007, 22:02) ...   Jan 8 2008, 09:38
|- - QuickWitted   Цитата(zltigo @ Jan 11 2008, 21:51) Из ис...   Jan 14 2008, 06:18
||- - zltigo   Цитата(QuickWitted @ Jan 14 2008, 09:18) ...   Jan 14 2008, 08:24
||- - rezident   Цитата(QuickWitted @ Jan 14 2008, 11:18) ...   Jan 14 2008, 08:33
||- - zltigo   Цитата(QuickWitted @ Jan 14 2008, 09:18) ...   Jan 14 2008, 09:38
- - Cyber_RAT   http://www1.mager.org/mkdosfs/ Linux mkdosfs for W...   Jan 11 2008, 12:53
- - Cyber_RAT   Может оно конечно и так... и 8bit 8088 фат подержи...   Jan 12 2008, 06:03
- - Cyber_RAT   я вот одного не понимаю... ну нужно нескольким чел...   Jan 15 2008, 06:10
- - one_man_show   Автор темы спросил "мнение ALL", вот все...   Jan 15 2008, 06:32
- - TailWind   Самый простой способ: --------------------------- ...   Jan 19 2008, 16:31


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 15:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01449 секунд с 7
ELECTRONIX ©2004-2016