Перейти к содержанию
    

FatFs. LPC2388. MCI. Не работает

Кто-нить пробывал эти исходники с картами больше 1Гб? У меня почему-то не работает...

Изменено пользователем Ivan Kuznetzov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кто-нить пробывал эти исходники с картами больше 1Гб? У меня почему-то не работает...

Исходники пробовал с: SanDisk 256MB, ProMax 2GB, SanDisk 4GB SDHC

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

усе заработало, после всовывания карточки, кнопочку RESET на отладочной платке жму - проходит, причем интересно, с SD картами можно такого не проделывать, только с SDHC... :biggrin:

 

обновил ff.c и ff.h на последние (0.07с), добавил ccsbcs.c для поддержки LFN, включил поддержку LFN в ff.h, но при выводе списка файлов имена все равно в формате 8.3...

Изменено пользователем Ivan Kuznetzov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

переделал немного fat_mci_demo.c - теперь глинные имена кажет :biggrin:

в архиве для LPC2368 (протестировано на LPC2378)

 

P.S.

Простите за оффтоп, но может у кого есть такой-же проектик для LPC2148 или LPC2138 на кейловском родном компиляторе?

lpc23xx_chan_mci.rar

Изменено пользователем Ivan Kuznetzov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

:smile3046: Народ, подскажите пожалуйста, как определить какой функции main() передается управление в данном проекте ? (имеется ввиду пост сразу перед моим вопросом)

 

там в файле Sturtup.s написано:

 

IMPORT __main

LDR R0, =__main

BX R0

 

Если воспользоваться "find in files", то вылезает три функции main()

в файлах - mcitest.c, rtctest.c, tmrtest.c, а ни один из этих файлов в проект не включен ... или все же включен ?

:smile3046:

 

Вопрос снят. Управление передается функции int main (void) в первом файле fat_mci_demo.c :laughing: (у меня она почему-то не находилась поиском, нашел при шагании симулятором)

(как удалить сообщение не знаю. :laughing: )

Изменено пользователем poq12

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго времени суток.

Помогите разобраться с инициализацией microSD карты. Пытаюсь запустить проект lpc23xx_chan на процессоре lpc2468.

 

Карта соединена с процессором следующим образом

P1[2] CLK

P1[3] CMD

P1[5] питание через полевик на PWR

P1[6] DAT0

P1[7] DAT1

P1[11] DAT2

P1[12] DAT3

 

исправил в проекте инициализацию в соответствии с подключением карты

 

PINSEL2 &= ~((3 << 4) | (3 << 6) | (3 << 10) | (3 << 12) | (3 << 14) | (3 << 22) | (3 << 24));
PINSEL2 |= (1 << 5) | (1 << 7) | (1 << 11) | (1 << 13) | (1 << 15) | (1 << 23) | (1 << 25);

 

при попытке инициализации выводится

MCI_INIT ok

timout CMD8 -> SD-Card<Version 2.0 or MMC

MCI_Send_ACMD failed -> MMC, invalid power-range or no card

MCI_POWER 0x00000000

rc=1

 

при выполнении функции MCI_GetCmdResp в регистре MCI_STATUS установлен бит CMD_TIMEOUT

пробовал на картах micro sd kingston 4GB sdhc и apacer 1GB

Питание и тактирование появляется на карте при попытке инициализации.

Подскажите в какую сторону копать.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что-то там было с питанием карты. Без биполярного транзистора перед полевым не хотело работать. Попробуйте "принудительно" включить питание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С питанием все нормально.

Случайно обнаружилась следующая странность. Подключаю щуп осциллографа к линии CLK, и древняя 16 МБ карта инициализируется нормально. Работает с fat нормально. Отключаю щуп, симптомы как в предыдущем посте. Пробовал резистор 10к повесить на подтяжку на CLK и остальные линии повесить, не помогает. Работает только с подключенным щупом. Не конденсатор же вещать на CLK :cranky:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я работаю в sd mode. Пробовал ставить подтяжку, резисторы 33 Ом на линии ставить. Не помогает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставил 100 pF конденсатор на CLK. В разрыв линий включены резисторы 30 Ом. Инициализируется со второго, третьего раза. После инициализации работает вроде нормально. Голову уже сломал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поставил 100 pF конденсатор на CLK. В разрыв линий включены резисторы 30 Ом. Инициализируется со второго, третьего раза. После инициализации работает вроде нормально. Голову уже сломал.

А как физически выполнен монтаж карты памяти, какой длины дорожки/провода, и нет ли рядом других быстрых сигналов с крутыми фронтами?

Не наводки ли?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Физически карта сидит в слоте припаяном на шлейф около 20 мм длиной. На плате зеркально площадки под слот развел, пока другая плата придет, повесил навесным:( До площадок на слоте дорожки длиной около 30 мм. Рядом с дорожками только земляной полигон.

 

Только что попробовал карту на 1 GB. Инициализируется с первого раза.

Изменено пользователем madnik

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Доброго времени суток. Подскажите пожалуйста как подключить FATFS(или что-то наподобие для работы с micro-SD) к TNKERNEL v2.5. Две недели уже бьюсь над этим вопросом. Не могу понять почему контроллер зависает при открытии файла.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...