Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 14.05.2010, 21:13  
-Dreamer-
Частый гость
 
Регистрация: 22.03.2010
Адрес: Севастополь
Сообщений: 26
Сказал спасибо: 5
Сказали Спасибо 8 раз(а) в 5 сообщении(ях)
-Dreamer- на пути к лучшему
По умолчанию SD-card

Дорогие друзья!, понимаю, что для многих тема избита, но к сожалению только недавно до них «дошел» в связи, с чем вопрос: По команде CMD 17 (адрес-00000000) принимаю данные, которые не соответствуют данным первого сектора(MBR), данные стабильны. В связи счем напрашивается собственно сам вопрос- соответсвует ли адрес 00000000, первому сектору в системе, (MBR)?
Если нет, как определить адрес MBR(Master Boot Recorder)? Спасибо.
Реклама:
-Dreamer- вне форума  
Непрочитано 14.05.2010, 21:30  
Cyber_RAT
Прописка
 
Регистрация: 29.11.2007
Адрес: Могилев. РБ.
Сообщений: 143
Сказал спасибо: 30
Сказали Спасибо 20 раз(а) в 20 сообщении(ях)
Cyber_RAT на пути к лучшему
По умолчанию Re: SD-card

она может быть и не мбр.
делаю так:
читаю 0 сектор
смотрю по смещению 0x36 - если там FATXX это хорошо
иначе
читаем по смещению 0x1c6 (в этих 512 байтах)
номер сектора где мбр
там 16 бит - номер сектора
читаем этот сектор и смотрим по смещению 0x36 - если там FATXX это хорошо-иначе еррор карта, мы такую не хотим....
вот как-то так.
Cyber_RAT вне форума  
Непрочитано 14.05.2010, 22:06  
-Dreamer-
Частый гость
 
Регистрация: 22.03.2010
Адрес: Севастополь
Сообщений: 26
Сказал спасибо: 5
Сказали Спасибо 8 раз(а) в 5 сообщении(ях)
-Dreamer- на пути к лучшему
По умолчанию Re: SD-card

Cyber спасибо, но это уже второй шаг, начиная со смещения 1BEh начинается таблица раделов(PT) я это знаю , к стати чаще она отсутствует(MBR совпадает с PBR), а на месте PT текстовая строка "Remove disks or other media.я..Disk errorя..Press any key to restart", но мне надо определить Адрес именно MBR.
Я хочу сказать, что перед MBR видимо идут резервные сектора, которые в системе не видно.
-Dreamer- вне форума  
Непрочитано 14.05.2010, 22:47  
-Dreamer-
Частый гость
 
Регистрация: 22.03.2010
Адрес: Севастополь
Сообщений: 26
Сказал спасибо: 5
Сказали Спасибо 8 раз(а) в 5 сообщении(ях)
-Dreamer- на пути к лучшему
По умолчанию Re: SD-card

Частично отвечаю на свой вопрос, думаю с эти столкнутся многие и почему-то он нигде толком не описан.
В начале SD карты перед MBR действительно находятся резервные сектора, их количество написано по смещению 1Ch в MBR это значение различно для разных карт, но! Чтобы его прочитать нужно опять же знать адрес MBR! У меня пока один вариант – перебирать начальные адреса(по 512) пока не встретится значение EBh(jmp), это и будет нулевой сектор(в системе)-MBR.
Может кому-то известно более «веселое» решение. Буду рад любым советам.
-Dreamer- вне форума  
Непрочитано 15.05.2010, 13:14  
Cyber_RAT
Прописка
 
Регистрация: 29.11.2007
Адрес: Могилев. РБ.
Сообщений: 143
Сказал спасибо: 30
Сказали Спасибо 20 раз(а) в 20 сообщении(ях)
Cyber_RAT на пути к лучшему
По умолчанию Re: SD-card

приведите дамп первых 512 байт вашей sd карты...
что-то у меня с 10-ок sd-шек был от 16мб до 4 гиг и никогда я не заморачивался - и все работало.
Cyber_RAT вне форума  
Сказали "Спасибо" Cyber_RAT
-Dreamer- (15.05.2010)
Непрочитано 15.05.2010, 13:35  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: SD-card

Похоже в этой ветке путаница с MBR и BPB.

MBR(Master Boot Record) содержит информацию об смещении BPB(BIOS Parameter Block), размере и активности разделов. Является обязательной только, если диск планируется разбивать на разделы. Общепринятое расположение MBR - первый физический сектор накопителя.

BPB(BIOS Parameter Block) содержит набор параметров, описывающих логический диск - тип файловой системы, количество секторов на кластер и т.д. Располагается в начальном секторе каждого раздела.

SD карты обычно форматируются с одним разделом, поэтому MBR на них отсутствует, а 0-й сектор занимает BPB этого единственного раздела.

Во вложении перевод спецификации FATxx от мелкософта

Последний раз редактировалось AJScorp; 09.12.2010 в 22:31.
AJScorp вне форума  
Непрочитано 15.05.2010, 13:52  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: SD-card

Обработку ФАТа на SD я делал так:

1. чтение сектора 0х000000
2. проверка сигнатуры 0xAA55 по адресу 0x1FE.
3. проверка поля BPB_BytsPerSec
если значение равно 512, то это BPB и диск единственный, проверяем тип ФС
иначе это MBR
4. проверяем наличие разделов по адресам 1BEh, 1CEh, 1DEh, 1EEh
5. поиск BPB по смещениям в таблице разделов и проверка по пуктам 2,3

Последний раз редактировалось AJScorp; 15.05.2010 в 14:51.
AJScorp вне форума  
Сказали "Спасибо" AJScorp
-Dreamer- (15.05.2010)
Непрочитано 15.05.2010, 17:56  
-Dreamer-
Частый гость
 
Регистрация: 22.03.2010
Адрес: Севастополь
Сообщений: 26
Сказал спасибо: 5
Сказали Спасибо 8 раз(а) в 5 сообщении(ях)
-Dreamer- на пути к лучшему
По умолчанию Re: SD-card

Большое спасибо. Вроде разобрался. Смутило то, что в начале в HEX-редакторе
Посмотрел нулевой сектор, и решил, что это МВR т.к. все записи в том числе и загрузочная запись присутствуют, а с карты по адресу 00000000 в начале считываются нули(т.е.загрузочная запись отсутствует), поэтому смещение1BEh (таблица разделов-PT) проверять не стал. Сейчас посмотрел несколько SD с адреса
1BEh, и убедился, что таблица разделов на месте, а на месте загрузочной записи
(c адреса 00)либо нули, либо хлам, а в HEX-редакторе открывал как логический диск, т.е. просматривал PBR-загрузочную запись раздела.что и ввело в заблуждение. Спасибо.

Последний раз редактировалось -Dreamer-; 15.05.2010 в 18:53.
-Dreamer- вне форума  
Непрочитано 15.05.2010, 19:19  
AJScorp
Почётный гражданин KAZUS.RU
 
Аватар для AJScorp
 
Регистрация: 10.05.2005
Адрес: Саратов.ru
Сообщений: 1,548
Сказал спасибо: 384
Сказали Спасибо 737 раз(а) в 417 сообщении(ях)
AJScorp на пути к лучшему
По умолчанию Re: SD-card

To -Dreamer-, не за что, сам в одно время разбирался с этим, была задача по замене снятых с производства ZIP-накопителей на ZIP-эмуляторы с SD/MMC картами. Если будут еще вопросы - обращайтесь в личку или на форуме )

Cyber_RAT, наличие/отсутствие строки "FATxx" по смещению 0x36, по спеку от MS, не показатель наличия/отсутствия файловой системы FAT на диске. Это зависит от фазы луны в момент написания утилиты форматирования ее разработчиками. Кроме того, строка по этому смещению доступна только для FAT12/FAT16, для FAT32 она находится по адресу 0x52.

Последний раз редактировалось AJScorp; 15.05.2010 в 20:01.
AJScorp вне форума  
Непрочитано 15.05.2010, 20:02  
Cyber_RAT
Прописка
 
Регистрация: 29.11.2007
Адрес: Могилев. РБ.
Сообщений: 143
Сказал спасибо: 30
Сказали Спасибо 20 раз(а) в 20 сообщении(ях)
Cyber_RAT на пути к лучшему
По умолчанию Re: SD-card

а мне за что "не за что?"
p.s. а фат да... я не поддерживаю в своем девайсе фат выше 16... тут согласен-промашку дал.. смещение другое.
Cyber_RAT вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пытаюсь работать с SD card. Нужна помощь uk8amk Микроконтроллеры, АЦП, память и т.д 29 15.01.2011 13:20


Часовой пояс GMT +4, время: 07:20.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot