focusrite scarlett 2i2 скачать драйвера nvidia geforce gt 240 драйвера скачать скачать usb драйвера для windows xp bluetooth usb host controller драйвер скачать Загрузка. Пожалуйста, Участвуй в конкурсе Знак качества от FiiO и выиграй Hi-Fi плеер! Узнай кто выиграл долгоиграющий Lenovo Vibe P1m. Итоги Заряженного конкурса В этом разделе новые темы могут создавать только Модераторы. Ваши вопросы Вы можете задавать во всех открытых темах и в корневом разделе! SDHC driver - драйвер для SDHC карт памяти, для большинства девайсов на WM5/WM6 Перед установкой рекомендуется сделать Бэкап. Ссылку с источника не но могу сказать что сайт с похожим очень очень названием :-Р Ставим. Делимся впечателниями у кого заработало у кого нет. Сообщение отредактировал romchk - 13.09.2010, 03:18 К огромному сожалению, не заработала карта Transcend miniSDHC 4 Gb. FS n560. А вафля работает при установке этого драйвера? В теме лукса это уже много раз обсуждалось. Но каждый раз при установке поддержки SDHC отрубается WiFi. Сообщение отредактировал Serbli - 11.09.2007, 17:07 На фуджике карта работает, а вот WiFi глохнет. юзаю дровишки под universal.сделанные 8гб трансценд и вафля пахают как родные.хехе. да и еще. чтобы заработала 8гб сд карта нужна СТРОГО ВМ6 АКУ 0.2.1 И НА ВМ5 И ВМ6 РАННИ ХСБОРОК РАБОТАТЬ ОНА НЕ БУДЕТ Темы не нашел больше нигде. Сообщение отредактировал panot - 11.09.2007, 20:34 Извиняюсь за мой плохой русский язык, но вы тоже не умеете хорошо по-чешски: Eten Glofiish X500, WM6 Crossbow WWE R01 032 0436, Kingston microSDHC 4GB, Griffin EarThumps, Krusell Horizontic Platinum with Multidapt-XS как насчет SDHC на Qtek s200 что нибудь слышно, когда сделают дрова? PNC, а попробовать эти не судьба? Было: Samsung SGH-i700, Mitac Mio A700, HTC Universal, HTC Advantage, HTC Touch HD, iPhone 3G 16Gb, HTC Kaiser, HTC HD2, HTC One X, Samsung Galaxy Note II. Стало: Siemens SX1 4 шт., Samsung Galaxy Note III 9005, Nokia N91 8Gb, HTC HD2, HTC OneS Жители республики Коми-собираемся тут!, Клуб Энергетиков 4ПДА тут! Призёр 2-й Премии 4PDA в номинации Спасатель, Призёр 3-й Премии 4PDA в номинациях Доктор07 и Рулевой07 кто нибуть проверял на HTC Cingular 8525? izmalkoff, 04.10.07 23:47:15 PNC, а попробовать эти не судьба? пробовал, кроме того как отрубается вай фай никакого на азус P535 4гига работает нормально. А hp 4700 по умолчанию разве не поддерживает SDHC? на WM6 Сообщение отредактировал stilet - 26.11.2007, 00:24 Было: Samsung SGH-i700, Mitac Mio A700, HTC Universal, HTC Advantage, HTC Touch HD, iPhone 3G 16Gb, HTC Kaiser, HTC HD2, HTC One X, Samsung Galaxy Note II. Стало: Siemens SX1 4 шт., Samsung Galaxy Note III 9005, Nokia N91 8Gb, HTC HD2, HTC OneS Жители республики Коми-собираемся тут!, Клуб Энергетиков 4ПДА тут! Призёр 2-й Премии 4PDA в номинации Спасатель, Призёр 3-й Премии 4PDA в номинациях Доктор07 и Рулевой07 А по точнее, может кто-нибуть подсказать, а то Sdшку собираюсь брать гигов на 8-16? И еще вопрос, CFки на такой же обьем без проблем пойдут? stilet, это лучше спросить у создателя прошивки. Только те, кто предпринимают абсурдные попытки, смогут достичь невозможного. Альберт Эйнштейн. Пожалуйста, очистите кеш браузера. 4PDA 2005-2016 г. Все права защищены. зарегистрированный товарный знак. Загрузка. Пожалуйста, Вы можете прямо сейчас скачать SDHC Driver бесплатно, без регистрации и без SMS! Доступна полная версия SDHC Driver для КПК и коммуникаторов на операционной системе Windows Mobile в формате cab или exe. SDminiSD, microSD флеш-карточки формата SDHC Secure Digital High Capacity, допускают объем от 2 до 32 гигабайт. Эти карточки имеют такой же внешний вид и размеры, как и прежние SD, однако SDA 2.0 стандарт в SDHC использует другой способ адресации памяти, нежели в традиционных SD картах sector addressing вместо byte addressing. Поэтому такие карты могут использоваться только в устройствах, поддерживающих SDHC. При этом новые, совместимые с SDHC устройства, поддерживают обычные SD карты. Устанавливать драйвер только в память самого аппарата! Здесь Вы можете скачать бесплатно SDHC Driver для КПК, коммуникатора или Pocket PC, почитать описания и посмотреть скриншоты. У нас представлена наиболее полная информация о файле: разрешения дисплея, поддерживаемые версии Windows Mobile, формат файла exe или cab. Обсудить особенности работы, порядок установки на КПК новой версии SDHC Driver и настройки программы можно в комментариях - общайтесь и проявляйте активность. Также у нас можно отправить файл на свой почтовый ящик, это будет полезно тем, у кого заблокировано скачивание. Для КПК или коммуникатора SDHC Driver скачать бесплатно можно прямо с нашего сайта, версия, требования установки и формат файла указаны в описании. Эти и другие функции доступны зарегистрированным пользователям. Зарегистрируйтесь либо войдите на сайт под своим именем и получите ссылку на скачивание файла. Вы можете оставить свои отзывы и комментарии к файлу, всего комментов здесь оставили 11, ваш будет следующим ;- Однако, имейте в виду: у нас запрещено выкладыват или запрашивать варез, серийники и кряки для SDHC Driver и других программ. Спасибо за понимание! кто скачал, отпишитесь. на глофишь х 650 идет? Обьясните а для чего эт прога нужна???? как правильно установить прогу, что бы она заработала? на HTC P3300 Вы не авторизованы на сайте, и поэтому сможете добавить комментарий только используя свой аккаунт Вконтакте. Вам необходимо авторизоваться или пройти регистрацию здесь, что бы иметь возможность полноценно пользоваться всеми сервисами сайта. Первый раз? Или войти через соц. сети Быстро. Просто. Безопасно. Android, Apple, Asus, Facebook, Full HD, Galaxy, HP, HTC, IOS 7, iPhone, iPhone 6, Lenovo, LG, Microsoft, Motorola, Samsung, Samsung Galaxy S5 mini, Sony, Vertu, Windows 8.1 Найдётся всё. Прямо сейчас. Попробуй! Все файлы и информация, находящиеся на данном сайте, были найдены в сети интернет, как свободно распространяемые или присланы различными пользователями. Если Вы являетесь правообладателем той или иной продукции, и условия на которых она представлена на данном ресурсе, не соответствуют действительности, просьба немедленно сообщить администрации сайта любым приемлемым способом с целью устранения правонарушения. Описание: SDminiSD, microSD флеш-карточки формата SDHC Secure Digital High Capacity, допускают объем от 2 до 32 гигабайт. Эти карточки имеют такой же внешний вид и размеры, как и прежние SD, однако SDA 2.0 стандарт в SDHC использует другой способ адресации памяти, нежели в традиционных SD картах sector addressing вместо byte addressing. Поэтому такие карты могут использоваться только в устройствах, поддерживающих SDHC. При этом новые, совместимые с SDHC устройства, поддерживают обычные SD карты. Доп. информация: Wi-Fi может не работать Сайт не распространяет и не хранит электронные версии произведений, а лишь предоставляет доступ к создаваемому пользователями каталогу ссылок на торрент-файлы, которые содержат только списки хеш-сумм А это для каких устройств? Кто установил, отпишитесь пожалуйста, работает или нет. Хотелось бы узнать для каких устройств данная вещь?? Обязательно ли Нужна поддержка СДШЦ?? И что делает данный драйвер?? Етот должен подходить ко всем. У меня FS loox n560, windows mobile 6, подходит. Даний driver подерживает sdhc карти 4гб, 8гб и так дали. Driver надо записивать в паметь pda/ppc. По томучто ево легко стерать и наченает работать у меня wi-fi. Когда я ползуюсь gpsом тогда чтоби било по болше места записиваю driver. Т е ты хочешь сказать - что поставив этот драйвер появиться поддержка СДШЦ?? У меня Q-tek S200 просто эту хрень не поддерживает Я так понимаю, что драйвер предназначен для девайсов производства HTC. Данный драйвер включает поддержку карточек типа SDHC, на устройствах, где ее официально нет. Таким образом Вы получаете возможность увеличить объем памяти при помощи карточек размер стандартной карточки максимум 2Gb, формат SDHC имеет на сегодня максимальный размер 32Gb. Тестировал драйвер на устройстве AnyDATA. Все прекрасно работает, теперь вместо максимального объема карточки 2Gb есть полная поддержка SDHC. На данный момент пользуюсь Kingston 8Gb. Данный драйвер включает поддержку карточек типа SDHC, на устройствах, где ее официально нет. Таким образом Вы получаете возможность увеличить объем памяти при помощи карточек размер стандартной карточки максимум 2Gb, формат SDHC имеет на сегодня максимальный размер 32Gb. Тестировал драйвер на устройстве AnyDATA. Все прекрасно работает, теперь вместо максимального объема карточки 2Gb есть полная поддержка SDHC. На данный момент пользуюсь Kingston 8Gb. Включите отдачу, пожалуйста! Хочу попробовать на своем HTC Gene P3400. Обычные SD включая microSD - до 2 Гбайт включительно. 4GB - это уже SDHC. В HTC Touch и более позних моделях эта поддержка есть изначально. была обычная карта miniSD на 4 гига, не HC, но правда она сильно глючит Да, есть обычные на 4 гига, токмо у меня днем с огнем не сыскать. Обычные SD включая microSD - до 2 Гбайт включительно. 4GB - это уже SDHC. В HTC Touch и более позних моделях эта поддержка есть изначально. Интересно тогда чтоже у меня уже 3 месяца за 4 гига в коммуникаторе стоят? А не СД ли? Хорошая штука. Eten G500: полет нормальный Transcend miniSDHC 4 Gb class 4. До установки данного драйвера енот эту карту просто не видел, после же - все нормально. За неделю пока что пользования глюков не замечено. P. S. Имхо, пойдет на всех девайсах под WM5 и WM6. За другие версии WM ничего сказать не могу. Пробуйте и отписывайтесь, указывая сам девайс и версию оси. на еноте стоит WM5 AKU 2.0 билд 080 который. ктонть, кто пробовал на qtek s200 отпишите, работает ли? и как там вифи, отваливается, или нет? По имеющимся у меня сведениям, данный драйвер на Qtek s200 НЕ работает. Мои Также оглашу список девайсов, на которых работает, по имеющимся у меня данным: Asus p525, p535, Acer 311, glofish x500, 720 LOOX, Mio A700, A701. Также судя по отзывам заработал на Samsung i600. А на I-mate K-jam пойдёт? HTC Wizard. Просто не знаю, стоит-ли покупать miniSD 4GB 29? По имеющимся у меня сведениям, данный драйвер на Qtek s200 НЕ работает. Мои Также оглашу список девайсов, на которых работает, по имеющимся у меня данным: Asus p525, p535, Acer 311, glofish x500, 720 LOOX, Mio A700, A701. Также судя по отзывам заработал на Samsung i600. писец.тогда уберите из шапки для ибо выше приведены модели, из которых нет ни одного htc. strangerx, если какого-дибо девайса нету в моем списке это еще не значит, что на нем не пойдет. Список приведен для тех девайсов, на которых пошло на 100% безо всяких глюков, тоесть это те девайсы, на которых тестировал либо сам лично это glofish x500 и Mitac Mio A700 либо мои хорошие знакомые. Насчет всех остальных - скорее всего пойдет тоже. Насчет поддерживаемых осей уточнил - WM5 и WM6. На случай возможного хардрезета: либо держать при себе обычную SD карту, дабы установить заново данный драйвер, либо для тех, кто умеет ковыряться в прошивке - вмонтировать его в Extended Rom там содержатся проги и инсталляторы, которые автоматом стартуют после ХР. Поскольку после ХР слетит и драйвер этот, вместе со всем остальным, и девайс перестанет видеть карту. там ждругой адаптр какой то, что такой драйвер не подходит, а другой писать программер нужен и деньги ему На Dell Axim x51vс Windows Mobile 5.0 теперь считываются SDHC и одновременно отлично работает Wi-Fi. Под WM 6.0 не проверял. Думаю, что на x51v будет работать и под неофициальной WM 6.0. Wi-fi не работает в 5.0 в 6.0 заработал 1. существует много sd карт на 4 гига. не sdhc. у меня стоит такая год и не глючит. 2. выше сказано что подходит к loox 720. но это wm 2003 se. значит эту ось тоже поддерживает? 3. куда именно копировать cab файл? Кароч - дам объяснения как владелец HTC. В аппаратах HTC дофига где пользуется стандарт MICRO SD. А карты такого форм- фактора разделяются до 2 гб - обычные, больше - SDHC. Обычные SD и mini SD уже давно известно что они продаюцца и 4 и 8 и даже 16 гигов. А вот micro SD 4 гиговые появились сравнительно недавно - для них и драйвер. На Htc Touch Cruise такой драйвер не нужен - там все и так пучком. Привет, Хабрапользователь. Кажется, ты используешь AdBlock. Хабрахабр развивается и существует за счет доходов от рекламы. Добавь нас в исключения. Все эмбеддеры, рано или поздно, сталкиваются с проблемой нехватки ПЗУ микроконтроллера для своих проектов. Ну банально, Вам нужно разработать систему управления простеньким ЧПУ станком, где управляющая программа хранится на самом девайсе или систему сбора данных, скажем, от датчиков какого-нибудь эксперимента очевидно, что микроконтроллер изначально не предназначался для хранения таких массивов информации. Решений сего кейса масса, начиная от приобретения и подключения микросхем EEPROM и заканчивая коннектом стандартной USB флешки к аппаратному USB хосту камня если таковой имеется, конечно. Ну, а для хэнд-майд проектов, отличным вариантом будет самая, что ни на есть классическая SDшная карта памяти. Они бывают разного типа, имеют различные механизмы инициализации и передачи данных и подключаются к хосту через различные интерфейсы их, правда, только три, но об этом позже. Более того, многие современные микроконтроллеры имеют на своем борту аппаратные модули этих интерфейсов, и работа разработчика сводится лишь к их конфигу и посылу карточке нужных команд в соответствии с протоколом. Ну и еще карты памяти имеют приятное свойство элементарно покупаться на каждом шагу. Не буду переписывать Википедию приведу здесь основные сведения и виды SD карт памяти и их характеристики. Secure Digital формат популярный пожалуй, самый популярный на сегодняшний день формат flash памяти для использования, в основном, в портативных устройствах. Внутри каждой такой карточки имеется, собственно, микросхема flash памяти Memory Core и, связывающий ее с внешним миром контроллер, имеющий 8 регистров. Задачи последнего аппаратная реализация внешних интерфейсов, поддержка информации о карте тип, емкость, класс скорости еще куча других характеристик, контроль электропитания, и, конечно, управление самой микрухой памяти адресация, чтение, запись, очистка и оганизация порядка 80 команд управления. Формат SD был основан компаниями Panasonic, SanDisk и Toshiba на основе MMC карт. Позже эти компании создали организацию SD Card Association, в настоящее время занимающуюся разработкой и продвижением технологии SD. Основной документ, в котором досконально описан интерфейс, протокол, команды, регистры карточек Physical Layer Simplified Specification Copyright 2001-2006 SD Group Panasonic, SanDisk, Toshiba and SD Card Association. Именно эту информацию используют всякие RD центры при разработки аппаратного и программного обеспечения своих будущих девайсов. Сам файлик благополучно лежит в свободном доступе в инете, и скачать его не предоставляется никаких сложностей. Так вот, в соответствии с этим документом, существуют следующие типы карт памяти: SD карты или еще SDSC Secure Digital Standard Capacity первое поколение карт памяти. Ограничение по объему 2 Гб. Минимальный размер адресуемого пространства 1 байт. SDHC карты Secure Digital High Capacity карты памяти повышенной емкости до 32 Гб. Имеют существенное отличие от первого типа, а именно, адресация происходит блоками по 512 байт и никто в этом мире не может изменить это значение. Иными словами, нельзя просто так взять и записать, к примеру, 71 байт информации: минимальный размер пачки, повторюсь, 512 байт. Особо не копал, почему так, но есть личное мнение, что это из-за используемого 32-битного адресного пространства контроллера и из-за того, что карты памяти обычно форматируются под ту или иную файловую систему, размер кластера которой удобно сочетается с такими блоками. Еще у SDHC карт дугой процесс инициализации, о котором поговорим чутка по позже. SDXC Secure Digital eXtended Capacity карты памяти расширенной емкости теоретически аж до 2Tб памяти. Адресация тоже по 512 байт. Вот оно и получается при 32-битном пространстве: 232512 2 Тб. На каждое поколение карт существуют спецификации, и при этом в каждом документе на более новое поколение описывается инфа о старых то есть они толстеют с каждым обновлением продукта. Так что скачиваем Physical Layer Simplified Specification самой последней версии и находим там все, что надо для работы со всеми поколениями карт. Кроме этого, карты памяти делятся на несколько классов по скорости чтения/записи данных. Ну, а что касается всяких там mini-, microSD, microSDXC и т.д. это всего лишь другой размер корпуса и распиновка никаких внутренних отличий от карточек стандартных габарит. А теперь важно: ВНЕ зависимости от типа карты, емкости, ее производителя, типа корпуса, цвета и магазина, где вы ее купили все Security Digital карты имеют одинаковые интерфейсы взаимодействия с внешним миром. Команды, механизмы инициализации разные, да, но интерфейсы ОДИНАКОВЫЕ. Именно это позволяет напофиг воткнуть в фотик как SD, так и SDHC карту памяти. Ну, вот и пришел момент обсудить язык карточки, а точнее аж три: SD и UHS-II нэйтив спикер и язык универсальной микропроцессорной коммуникации, который сейчас знает каждая Как было сказано выше, Security Digital карты имеют три внешних интерфейса: SD, UHS-II и SPI. Первые являются родными каналами обмена данными с хостом, и, как следствие, позволяют реализовать полнофункциональное, полноскоростное взаимодействие. SPI же не поддерживает ряда команд и не дает максимальной скорости обмена данными, зато он есть во всех микроконтроллерах и в современных и в старых моделях, что делает возможным без особых проблем приконнектить карточку ко всему, что плохо лежит. Существует масса статей о том, как это сделать. Но, с развитием микропроцессорной техники, с уменьшением нанометров в технологическом процессе производства камней, SPI интерфейс, как средство коммуникации с SD картой постепенно отмирает. Действительно, если ваш МК поддерживает аппаратную реализацию SD протокола, будите ли Вы связываться с менее функциональной альтернативой? Судьба послала мне на проект камень Stm32f4 от STMicroelectronics, в котором как раз таки и имеется периферийный модуль SDIO Security Digital Input Output, аппаратно реализующий и интерфейс, и протокол карточки. Так что же такое SD протокол и с чем его едят? Ключевых понятий тут три: команда последовательность битов, воспринимаемых контроллером карточки и призывающих его к тому или иному действию; отклик ответ контроллера карты на команду. Он может содержать как общую информацию статус карты, текущее состояние различных внутренних модулей и т.д., так и, собственно, ожидаемую хостом информацию запросили в команде идентификатор карты получили его в отклике; данные ну тут без комментариев. Но прежде, чем посмотрим на логику протокола, обратимся к физике интерфейса очень обзорно. Pin 2 линия команд и откликов; Pin 1, 7, 8, 9 линии 4-битной шины данных. Все посылки карточке и обратно есть последовательности битов, строго синхронизированные с тактовым сигналом, передаваемым по линии CLK. Рекомендуемые частоты описаны в спецификации на карту и имеют различное значение, в зависимости от ее типа и класса скорости. Отмечу только, что для любой карты инициализация проходит на очень малой по сравнению с передачей данных частоте. Шина данных может быть 1-битной работает только D0 или 4-битной это конфигурируется при инициализации. Важно, что для SD карт со стороны хоста линии данных и команд должны быть Push-Pull и быть подтянуты к питанию через резисторы 4.5 10 кОм. Тактовую шину тоже нужно подтянуть к питанию. Бывает несколько вариантов обмена информацией хост карта. Все команды делятся на требующие и не требующие отклик. Как видно из рисунка, если нам хосту нужно послать команду, не требующую отклика просто шлем ее. Если же, команда подразумевает некий ответ, шлем, а затем ждем ответа. Почти все команды и отклики проверяются контрольной суммой, как со стороны хоста, так и со стороны карты. Ну, посмотрим на формат команды: Кадр состоит из 48 бит. Первый старт бит всегда нуль. Затем, говорим, что данные направляются от хоста к карте и посылаем команду с аргументом. Да, да, команда состоит из индекса и аргумента. После команды обязательно шлем 7-битную контрольную сумму, вычисляемую по алгоритму циклически избыточного кода CRC и завершаем посылку стоп битом. Команды бывают двух типов: CMD базовые команды и ACMD Application-Specific Command. Они могут быть с аргументом и без, иметь отклик и не иметь. Всего существует порядка 80 команд не считал точно, может и больше и каждая из них подробно описана в спецификации. Мы остановимся лишь на некоторых, необходимых для основной работы с карточкой инициализация, чтение, запись. Индекс команды это та цифра, которая идет после символов CMD или ACMD. Под него отведено 6 бит и 32 бита аргумента команды, если таковой требуется. Важное пояснение по поводу ACMD : пространство их индексов пересекается с индексами CMD команд, поэтому, чтобы контроллер воспринял команду именно, как Application-Specific, ей должна предшествовать CMD55 ! Отклик если требуется тоже целая тема, хотя бы, потому что их пять типов. R1 normal response command длина 48 бит. Пожалуй, самый популярный отклик. Содержит в себе старт бит, бит направления передачи от карты к хосту, 6 битов индекса команды, побудившей на генерацию отклика, статус карты и, конечно же, контрольную сумму со стоп битом. Всю информацию в отклике этого типа несет 32 битное поле статуса карты. В спецификации тщательно и добросовестно расписано, что означает каждый бит этого статуса карта занята/свободна, блокирована/разблокирована, текущее состояние автомата передачи данных, готовность к тому или иному действию и многое другое. R1b такой же формат, как и в случае R1 отклика, только передает еще флаг занятости busy по линии данных. R2 CID, CSD register длинной в 136 бит отклик передает хосту содержимое CID и CSD регистров контроллера карточки. Здесь вся полезная информация содержится в 127 битном поле, в которое помещается либо содержимое CID в случае, если это отклик на CMD2 или CMD10 команду, либо содержимое CSD регистра в случает посыла CMD9 команды. Так что же это за регистры такие, что под них специальные команды придуманы, да еще и с таким длинным откликом? CID Card identification data как видно из названия, содержит всю идентификационную информацию о карте серийный номер, производитель, дата изготовления и др. CSD Card-specific data вся техническая информация о карте объем памяти, размер блоков чтения/записи, максимальные скоростные характеристики, максимальные характеристики по потребляемому току в различных режимах и многое другое. Именно эту информацию использует хост мобилы или камеры для получения всей информации о вставленной карточке. R3 длиной в 48 бит, приходит как ответ на команду ACMD41 и несет в себе информацию о содержимом OCR Operation Conditions Register регистра карты. ACMD41 команда инициализации карты. После ее посыла необходимо ожидать данного отклика, который будет говорить об успешном завершении процесса инициализации и сообщать содержимое регистра OCR доступный диапазон напряжений, тип карты памяти, и флаг занятости. R6 Published RCA response содержит в себе RCA Relative card address карты и некоторые статус биты. Шина предполагает подключение нескольких карт к одному хосту. Поэтому очень важно такое понятие, как собственный адрес карты на шине. Это и есть содержимое RCA регистра. R7 Card interface condition 48 битовый отклик на команду CMD8. Карта оперирует определенным напряжением, ни больше не меньше. До инициализации необходимо это валидировать об этом позже. В ответе карта посылает само напряжение точнее значение, соответствующее этому диапазону и некий чек паттерн об это тоже позже. Напомню это было сказано давно, мы рассмотрели посыл команд и получение отклика от карты. Теперь самое время разобраться с тем, как же слать, собственно, данные. Повторюсь, делается это блоками по 512 байт для SDHC карт все адресное пространство карты разбито на 512 байтовый ячейки. Посылке данных всегда должна предшествовать специальная команда, говорящая контроллеру карты о том, что данные вот-вот уже пойдут. А идут они, как я уже говорил по 1- или 4-битной шине. Посмотрим на формат посылки данных к хосту от карты чтение. Возможны два режима передачи данных: одним блоком block read operation и несколькими блоками сразу multiple block read operation. В любом случае, старт передачи и ее завершение происходят по специальной команде, обратите внимание, с откликом. Обратная процедура запись осуществляется аналогичным образом, только между пачками обязательно присутствует busy, сигнализирующий о неготовности карты принять следующий блок данные еще не записались во флэш карты. Ну мы, эмбеддеры, люди привыкшие, что все надо инициализировать, поэтому SD карта не является исключением из этого великолепнейшего правила. Нужно прочекать поддерживаемые напряжения, назначить адреса, и вообще, убедиться, что мы можем работать с данной картой. Посмотрим на алгоритм инициализации, вытащенный из спецификаии и пройдемся по нему по порядку, блок за блоком, дабы понять, что нужно сделать с девайсом перед использованием по назначению. ВАЖНО : инициализация проводится на низко скоростном режиме! Частота клока карты не более 400 кГц!!! ЕЩЕ ВАЖНО : после подачи питания, не спешим грузить карту командами, дадим напряжению устаканиться, подождем 250 миллисекунд можно чуть подольше, в зависимости от числа карт, подключенных к одной шине, ширины линии данных и параметров источник питания. Как только вольтаж вышел на необходимый уровень, зарядились все паразитные емкости и т.д. и т.п., можно творить процесс инициализации. А начинается он с обнуления всех карт и перевода их в Idle State. Шлем CMD0, обратим внимание, без аргумента и не ждем ничего в отклике. В результате все карты на линии передут в холостой режим. Помните, я говорил, что напряжение нужно валидировать? Правильно! Нужно сказать карте, на каком вольтаже мы работаем и выслушать от нее все по этому поводу. Шлем CMD8 с аргументом, в котором биты 11:8 означают напряжение хоста и биты 7:0 check pattern проверочный шаблон любой, спецификация рекомендует слать 10101010. Биты напряжения ставятся в соответствии с таблицей: Ну, у нас все очень даже определено и далеко не Low Voltage Range. Stm32f4 выдает как раз напряжение в диапазоне 2.7 3.6 V, так что ставим 1 на восьмом бите аргумента. Итого, имеем команду с аргументом 110101010. Отправили. Прочекали, что все отправилось хорошо и ждем ответа, он не заставит нас делать это долго. В спецификации увидели, что ответ на эту команду R7 типа. Если мы его так и не дождались, то дальнейшая команда ACMD41 решит, как именно нас надули подсунули карту версии 1.X стандартной емкости или вообще не SD карту. Правда есть вероятность, что мы просто что-то не так делаем. Но не будем о грустном, и предположим, что флешка все таки ответила. Если с напряжением все хорошо, карта довольна, мы довольны, ответ будет содержать в себе все то, что мы отправили в аргументе, то есть 110101010. Это называется valid esponse. Если так, переходим к дальнейшему шагу, иначе опять же либо надули, либо где-то косяк. Дождались 110101010, и пришло время непосредственной инициализации команды ACMD41. И тут вспоминаем ВАЖНОСТЬ : чтобы сказать карточке, что команда не простая, а ACMD, отправим сперва CMD55. В аргументе обязательно указываем, адрес той карты, для которой эта команда предназначена. Но стоп, у нас, ведь, пока нет адреса, мы его не знаем. Ничего, узнаем но по позже, а пока пишем нули и шлем. Получив ответ типа R1 удостоверяемся, что карта готова принимать ACMD и только после этого шлем 41 индекс! Команда идет с аргументом, в котором на месте 30-ого бита указываем 1, что говорит о поддерживаемости хостом SDHC карт и напряжения хоста на месте 23:0 битов см. содержимое OCR регистра. Ответ ждем R3 типа. Здесь нам важно получить 1 на месте 31ого бита в пачке ответа, несущей содержимое OCR регистра карты флаг busy. Это будет говорить о том, что карта завершила процесс инициализации. Виду того, что этот процесс длится долго гораздо дольше, чем тактовый цикл микроконтроллера, необходимо слать ACMD41 в цикле до тех пор, пока не получим ответ со снятым флагом занятости. Как только это случилось, чекам 30 бит, и, если он единица, то имеем карту повышенной емкости SDHC или SDXC, и карту стандартной емкости SD в противном случае. Если же мы ждали, ждали, а флаг бизи все висит и висит, то, как и в описанном выше случае либо неподходящая карта, либо скорее всего наш косяк. Далее шлем CMD2 без аргумента и смотрим на ответ R2. В этом случае он будет нести информацию о содержимом CID регистра, и мы сможем вычитать ID производителя, серийный номер карты и прочую информацию. И, наконец, заключительный шаг получение адреса карты RCA relative address. Как оно уже упоминалось, к одной шине может быть подключено несколько карт, поэтому каждая должна иметь свой уникальный локальный адрес. Шлем CMD3 и получаем ответ типа R6, в котором в младших 16 битах содержится статус карты, а в старших новый RCA адрес. Отныне, для доступа к нашей карточке, мы должны будем звать ее по имени, то есть по RCA адресу. Опциональный пункт. По умолчанию карта работает с 1-битной шиной данных, что, ясное дело, медленнее, чем с 4-х битной. Если мы хотим достичь максимального быстродействия шлем ACMD6, с предшествующей CMD55, конечно же. Но прежде, нужно перевести карту в состояние Transfer State см. ниже командой CMD7 с RCA в качестве аргумента. В аргументе ACMD6 на месте самого первого бита пишем 1 если хотим включить 4-битный мод и 0 для отключение. Ответ R1 скажет об успешном проведении операции. В данном примере используется самодельная функция посылки команды, написанная под периферию Stm32F4. char SDIOsendcommandchar index, unsigned int arg, char resptype, unsigned int resp; resp type тип отклика 0 без отклика, 1 короткий 48 бит отклик, 2 длинный 136 бит отклик; resp массив откликов в случае короткого отклика информацию несет первый элемент массива, в случае длинного 4 элемента. Команда возвращает 0, в случае успешной операции посыла команды и приема ответа и код ошибки в противном случае. char SDHCcardinitializationunsigned int RCA char result; unsigned int RESP4; result SDIOsendcommand0, 0, 0, RESP;//Посылаем CMD0, дабы обнулить карты if result! 0 return result;//Чекаем на успех result SDIOsendcommand8, 0x1AA, 1, RESP;//Посылаем CMD8 с аргументом 110101010 if result! 0 RESP0! 0x1AA return 4;//Чекаем на успех while!RESP0 31 //Ждем, пока флаг бизи не слезет result SDIOsendcommand55, 0, 1, RESP;//Шлем CMD55, тем самым, говоря, что потом будет ACMD if result! 0 return result; result SDIOsendcommand0x29, 0x40020000, 1, RESP;//Шлем ACMD41 if result! 0 return result; result SDIOsendcommand2, 0, 3, RESP;//Шлем CMD2 и получаем инфу о карте if result! 0 return result; result SDIOsendcommand3, 0, 1, RESP;//Шлем CMD3 и получаем RCA номер if result! 0 return result; SDIO- CLKCR 0x02 01 111 81 14;//Наращиваем клок в части 2 - подробнее RCA RESP0 //Маскируем отклик и получаем RCA result SDIOsendcommand7, RCA, 1, RESP;//Выбираем нашу карту if result! 0 return result; result SDIOsendcommand55, RCA, 1, RESP;//Шлем CMD55, тем самым, говоря, что потом будет ACMD if result! 0 return result; result SDIOsendcommand6, 0x02, 1, RESP;//Шлем ACMD6 c аргументом 0x02, установив 4-битный режим if result! 0 return result; if RESP0! 0x920 return 1; else return 0;//Убеждаемся, что карта находится в готовности работать с трансфером return 0; Запускаем код, убеждаемся, что в ответе пришел НУЛЬ и завершаем инициализацию. Все, можем работать с памятью и писать/считывать информацию. Здесь всем рулит SD Memory Card State Diagram data transfer mode. Существует 6 статусов карты в этом режиме и узнать их можно в отклике R1 на месте 12:9 битов. Обратимся к спецификации. Stand by State stby устанавливается после инициализации вместо Idle State. Transfer State tran режим передачи данных. Receive Data State rcv ожидание пачки данных от хоста. Programming State prg запись принятой пачки во flash. Sending Data State data посылка пачки данных хосту. Disconnect State dis используется для выбора другой карты командой CMD7. Итак, после успешной инициализации мы находимся в состоянии tran, во всяком случае, должны находиться. Смотрим по диаграмме: для того, чтобы перейти на состояние rcv, нужно послать команду CMD24 с адресом 512 байтной ячейки, которую хотим записать. Послали. Карта перешла в режим ожидания данных. Далее начинаем кидать ей информацию по шине данных, пока не перекинем все 512 байт или не пошлем команду CMD12 стоп передачи. После завершения акта, карточка сама переедет в состояние prg и пробудет там некоторое время пока данные запишутся. Ждем. Как имено ждем? А посылаем ей в цикле CMD13 с адресом карты в аргументе, до тех пор, пока не вернется в отклике R1 типа статус tran. Когда это, наконец, случилось можно слать очередную пачку данных, вновь послав CMD24. Кроме того, существует еще режим записи несколькими блокам сразу CMD25 и другие режимы за подробностью в спецификацию. Дабы выполнить обратную процедуру, в первую очередь, убеждаемся, что карта стоит в tran. Шлем CMD17 с адресом RCA в аргументе. Если все пройдет успешно карточка переедет в состояние data и начнет выдавать на линии данных информацию, опять же 512 байтным блоком. Задача хоста в это время внимательно слушать линию и считывать данные. Как только посылка закончится, карта сама переедет в статус tran. Думаю, не стоит и говорить о том, что считывание так же как и запись возможна несколькими блоками сразу. Не буду приводить в этой статье листинг программы чтения/записи, так как он, в отличии от подпрограммы инициализации слишком сильно завязан на железе SDIO модуля микроконтроллера Stm32f4, а это тема второй части статьи.

2015 скачать sdhc driver драйвер для sdhc карт памяти

Спасибо за доверие!