|
LPC2104 и RL-FlashFS, Помогите подружить |
|
|
|
Aug 29 2009, 09:33
|
Участник

Группа: Участник
Сообщений: 26
Регистрация: 3-12-08
Пользователь №: 42 171

|
Добрый день всем. Разведена платка с SD карточкой и 2104 камушком. Камушки пришли самой первой ревизии, без SSP. Написал драйверочек под простой SPI(кто осваивал RL-FlashFS знает, там надо 4 функции написать). Ставлю finit() в самом начале проги, при сбросе проц доджен пытаться инициализировать карту. Что интересно, два сброса finit возвращает 1(карта не инициирована) на третий сброс программа застревает внутри этого finit и сыплет какую то шелуху по спиайным ногам. И повторяется эта картина железно - сброс, сброс, застряла, сброс, сброс, застряла. Чтобы отсечь ненужные вопросы сразу скажу - с железом все в порядке. С карточками раньше работал. Взял программку инициации карточки из своего проекта на авр, посадил сверху на упомянутый драйверочек SPI, засунул в 2104 в этой проблеммной платочке - карта отзывается, инициализируется. Но хочется заставить её работать из под RL-FlashFS. Поэтому хочется услышать совет людей, портировавших сабж на камни 2104/05/06 с простым SPIем. Заранее спасибо. На всяки случай - виснет здесь:
U8 spi_send (U8 outb) { /* Write and Read a byte on SPI interface. */
/* Wait if TNF cleared, Tx FIFO is full. */ // while (!(SSPSR & TNF)); S0SPDR = outb;
/* Wait if RNE cleared, Rx FIFO is empty. */ while (!(S0SPSR &(1<<7))); return (S0SPDR); }
|
|
|
|
|
 |
Ответов
|
Aug 31 2009, 07:26
|

Профессионал
    
Группа: Свой
Сообщений: 1 032
Регистрация: 13-03-08
Из: Маськва
Пользователь №: 35 877

|
Не работал ни с 2104, ни с FlashFS, ничего не понял про "простой SPI". Самое главное, не понял, зачем читать всякие TNF и RNE, если в SSP есть бит busy. Рабочий код выглядит так: Код int SPI_ProcessByte (unsigned char sym) { SSP0DR = sym; while (SSP0SR & BIT(4)); // ждём освобождения контроллера return SSP0DR; // и возвращаем принятый байт }
--------------------
Тут обсуждается творческий порыв, а не соответствие каким-либо стандартам ©
|
|
|
|
|
Aug 31 2009, 09:21
|
Участник

Группа: Участник
Сообщений: 26
Регистрация: 3-12-08
Пользователь №: 42 171

|
Цитата(esaulenka @ Aug 31 2009, 14:26)  Не работал ни с 2104, ни с FlashFS, ничего не понял про "простой SPI". Самое главное, не понял, зачем читать всякие TNF и RNE, если в SSP есть бит busy. Камушки пришли самой первой ревизии, без SSP
Причина редактирования: Излишнее цитирование.
|
|
|
|
Сообщений в этой теме
Пал LPC2104 и RL-FlashFS Aug 29 2009, 09:33 DpInRock ЦитатаНа всяки случай - виснет здесь
К флэшке это ... Aug 30 2009, 19:45 esaulenka Меня несколько смутили слова "FIFO" и уп... Aug 31 2009, 14:40 Пал Цитата(esaulenka @ Aug 31 2009, 21:40) Ме... Aug 31 2009, 17:54  esaulenka Цитата(Пал @ Aug 31 2009, 21:54) Как же м... Sep 1 2009, 07:40 DpInRock Цитатаfinit для меня черный ящик
Так и надо было т... Sep 1 2009, 12:22 esaulenka Скачал, полистал. Это где, простите?
S0SPSR - это... Sep 1 2009, 12:58 DpInRock Исходя из того, что в топике даже не попытались пр... Sep 1 2009, 14:26 Пал Цитата(DpInRock @ Sep 1 2009, 21:26) Исхо... Sep 2 2009, 08:47  toweroff Цитата(Пал @ Sep 2 2009, 12:47) "Вся... Sep 2 2009, 17:48
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|