Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
27.03.2013, 15:32
|
|
Частый гость
Регистрация: 14.08.2006
Сообщений: 27
Сказал спасибо: 3
Сказали Спасибо 27 раз(а) в 7 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от Valentin44
|
...
И все бы хорошо, но катастрофически не хватает памяти для других задач (МК мега128 заменить мегу невозможно).
...
|
Приветствую, коллеги.
А в сторону ATMega1284P не смотрели? Там - 16К ОЗУ...
Я давно на нее перешел...
Сообщение от Frensis777
|
Я такого не говорил. Я говорил побайтный:
|
В приведенной выше цитате из даташита указано, что байт является минимальной единицей информации при общении с карточкой. И не указано, что только его одного можно и считать/записать.
Но указано, как говорится, "члено- и -раздельно", что обмен идет секторами/буферами и т.п.
УСПЕХОВ.
__________________
________________________________________
Примите заверения в совершеннейшем к Вам почтении....
|
|
|
|
27.03.2013, 15:51
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от tempora
|
Вычисление адресации нафик не нужно, если нет планов работать с этой картой, как с FAT-диском. То есть, если карта будет использоваться только в том устройстве, о котором сейчас речь, то можно вести запись, например, начиная со второго физического блока, а в первом хранить информацию о том, сколько данных было записано. Получится самодельная, предельно упрощенная ФС с одним файлом.юю
Правда, я бы всё же рекомендовал не отказываться от работы с ФС на карте - неразумно это, так как лишает возможности прямого и ничем не замутнённого обмена файлами с другими устройствами. Карты с FAT понимают все или почти компьютеры - зачем лишать себя такой свободы?
|
Да, я тоже подумал и решил не отказываться от ФС.
Сообщение от tempora
|
В CodeVision, библиотека работы с SD/FAT - цельнотянутая от Chan'а, поэтому именно там и следует искать ответ на все вопросы, касающиеся работы с картой и с ФС.
В частности, чтобы писать и читать побайтно, достаточно пользоваться не низкоуровневыми функциями работы с картой, а функциями чтения из файла / записи в файл...Обоим: у Чана есть готовые примеры использования его либы, работают с полпинка. Рекомендую начать с них
|
Хорошо, спасибо, тов. tempora. Буду изучать.
Сообщение от ut1wpr
|
Сообщение от tempora
|
Понимать что творится в библиотеках, разумеется, нужно, а вот писать всё это самому, невзирая на наличие библиотек - чаще всего не нужно.
|
Как после сказанного новичку поступить? Забить на разборку библиотек? Поверить автору библиотек "на слово", что вся его писанина универсальна и устроит в любой ситуации? Как потом отследить ошибки библиотеки? Что за программист получится, который зависит от библиотек?
|
Ну, уважаемые тов.ut1wpr и тов.tempora. В принципе Вы оба правы, т.к. как низкоуровневое так и программирование на уровне ФС , каждое имеет свои особенности...Спасибо, конечно, товарищи , но, обо мне не беспокоитесь, я буду потихонечку изучать и, думаю, найду рациональное зерно.
Сообщение от alexust
|
Сообщение от Frensis
|
Я такого не говорил. Я говорил побайтный
|
В приведенной выше цитате из даташита указано, что байт является минимальной единицей информации при общении с карточкой. И не указано, что только его одного можно и считать/записать.
Но указано, как говорится, "члено- и -раздельно", что обмен идет секторами/буферами и т.п.
|
Ясно, спасибо, тов. alexust
|
|
|
|
27.03.2013, 16:29
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от ut1wpr
|
Для изменения размера сектора в карте есть отдельная команда в ее системе команд. Но насколько я помню, в современных картах она введена лишь для совместимости... Сколько я ни пытался размер менять, карта все равно работала только с 512. Сейчас уже трудно найти старые MMC с малыми объемами. В них эта функция еще жила в каком-то усеченном варианте. Но, повторяю, все мои карты возвращали положительный результат приема этой команды, но толку ноль. 512 и только. А вот 1024 - это пожалуйста.
|
А Вы, тов.ut1wpr, смотрели за состоянием бита READ_BL_PARTIAL регистра CSD?
Если бит READ_BL_PARTIAL установлен, то мы можем читать блоки данных, меньшие по размеру чем 512 байт. А потом уже командой CMD16 (SET_BLOCKLEN) устанавливаем требуемый размер блока для чтения.
|
|
|
|
27.03.2013, 17:01
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Насчет отличий м-ду CV и IAR, при работе с либой Чана - как говорится, найдите десять отличий:
__________________
There's always more than one way to skin a cat.
|
|
|
|
27.03.2013, 17:05
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от Frensis777
|
А Вы, тов.ut1wpr, смотрели за состоянием бита READ_BL_PARTIAL регистра CSD?
Если бит READ_BL_PARTIAL установлен, то мы можем читать блоки данных, меньшие по размеру чем 512 байт. А потом уже командой CMD16 (SET_BLOCKLEN) устанавливаем требуемый размер блока для чтения.
|
Если бы я не анализировал этот бит, то я бы и не лез на изменение. Повторяю, я очень внимательно изучил сей документ несколько лет назад. У меня сейчас нет проблем по работе с картами. Ни в составе файловой системы, ни в прямом низкоуровневом обращении. Именно сейчас я посередке некоего проектика, замешанного на использовании SDHCv2. Такой уж заказ поступил. Как раз пригодились те самые знания, полученные ранее. Кстати, пришлось дотошно пройтись по чановским либам и базовой FATFS и PFFS. Вторая меня не устроила. Хотя она спецом заточена под мелкие восьмибитовики.
Согласно поставленным мне условиям по примененному камню, пришлось отказаться от SDIO. Работать на голом SPI. Применение DMA в данной конфигурации особого выигрыша не дало. Существенный прирост в скорости (что мне и в принципе не надо) дает лишь использование DMA в тандеме с SDIO.
Как пишут на известных изделиях - "проверено электроникой"
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
27.03.2013, 17:11
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от Frensis777
|
Если бит READ_BL_PARTIAL установлен,
|
А есть ли сейчас карты, в которых он установлен?
__________________
There's always more than one way to skin a cat.
|
|
|
|
27.03.2013, 17:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от tempora
|
Насчет отличий м-ду CV и IAR, при работе с либой Чана - как говорится, найдите десять отличий:
|
Брр, не понял. Вы мне предлагаете найти отличия внутри одной и той же библиотеки? Или в специфике обращений к ней в разных системах? Зачем? У меня есть чем заняться. Я ж уже сказал, что CV меня не интересует.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
27.03.2013, 17:26
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Да нет, всё проще. Вы написали следующее:
Сообщение от ut1wpr
|
Ладно. ТС-у наверное надоело, он ждет готовых примеров, ... У вас есть? У меня нету. Я уже давно из под IAR-a не вылазю, а там немного по иному, нежели в CV.
|
Так вот, чтобы ТС не думал, что обращение к либам из IAR'а производится не так, как из CV ( мало ли - вдруг переходить планирует?) я его и успокоил.
А " отличия внутри одной и той же библиотеки" скорее всего, отсутствуют, что-то мне подсказывает.
__________________
There's always more than one way to skin a cat.
|
|
|
|
27.03.2013, 17:47
|
|
Почётный гражданин KAZUS.RU
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Сообщение от tempora
|
А "отличия внутри одной и той же библиотеки" скорее всего, отсутствуют, что-то мне подсказывает
|
Мудро.
Мне кажется, гораздо интереснее поковыряться в тех прослойках более нижних уровней, которые Чан не писал, они везде разные, а от них зависит 80% успеха.
Код:
|
while( disk_initialize(0) !=0 ){
printf("Карта не вставлена или неисправна.\n\r");
Error = 255; goto MainExit;
} |
Я когда-то наваял свой модуль инициализации, с тех пор им и пользуюсь. В любой момент могу проанализировать возникающие глюки и подкорректировать под свои требования.
__________________
С уважением,
Vic / ut1wpr
|
|
|
|
27.03.2013, 20:24
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: Вопросы по SD-Card in CodeVisionAVR
Товарищи, а с какой целью вызывается функция disk_timerproc() частотой в 100 Гц?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
LPC2468+SD card
|
Segriv |
Микроконтроллеры, АЦП, память и т.д |
9 |
07.11.2011 12:47 |
Ассемблерная вставка в CodeVisionAVR вопросы
|
E_C_C |
Микроконтроллеры, АЦП, память и т.д |
4 |
29.06.2011 17:14 |
SD-card
|
-Dreamer- |
Микроконтроллеры, АЦП, память и т.д |
10 |
15.05.2010 20:21 |
IDE card reader
|
ILLLYA |
Микроконтроллеры, АЦП, память и т.д |
1 |
14.04.2007 16:52 |
Разъем по MultiMedia Card
|
Дима |
Микроконтроллеры, АЦП, память и т.д |
1 |
16.07.2003 18:06 |
Часовой пояс GMT +4, время: 01:44.
|
|