реклама на сайте
подробности

 
 
> LPC2104 и RL-FlashFS, Помогите подружить
Пал
сообщение Aug 29 2009, 09:33
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 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);
}
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
DpInRock
сообщение Sep 1 2009, 14:26
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Исходя из того, что в топике даже не попытались привести код инициализации делаю вывод, что люди вообще не в курсах.
Ибо причин не работы SPI может быть крайне много.
А так как приведен тривиальный фрагмент кода, и даже ни в одном месте не сделана попытка обойти это зависание и проверить на реальную работоспособность... Короче люди элементарно не умеют отлаживать свои собственные программы.

Ведь очень просто узнать - это сбрасывается по каким-то причинам флаг готовности (но SPI корректно завершает свою работу) или так клоки дохнуть или еще чего... Т.е. проделать элементарные вещи.

И при наличии осциллографа не увидеть как работает SPI - это вообще нереальная ситуация. Проще интерфейса очень трудно придумать...


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Пал
сообщение Sep 2 2009, 08:47
Сообщение #3


Участник
*

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



Цитата(DpInRock @ Sep 1 2009, 21:26) *
Исходя из того, что в топике даже не попытались привести код инициализации делаю вывод, что люди вообще не в курсах.
Ибо причин не работы SPI может быть крайне много.
А так как приведен тривиальный фрагмент кода, и даже ни в одном месте не сделана попытка обойти это зависание и проверить на реальную работоспособность... Короче люди элементарно не умеют отлаживать свои собственные программы.

Ведь очень просто узнать - это сбрасывается по каким-то причинам флаг готовности (но SPI корректно завершает свою работу) или так клоки дохнуть или еще чего... Т.е. проделать элементарные вещи.

И при наличии осциллографа не увидеть как работает SPI - это вообще нереальная ситуация. Проще интерфейса очень трудно придумать...


Постараюсь удержаться в парламентских выражениях. Хотя если про меня начинают говорить в третьем лице в моем присутствии я обычно не стараюсь. Вы со своего первого поста начали рубить категоричными выражениями не видя картинки, ну так получите.

1.

На всяки случай - виснет здесь

К флэшке это отношения не имеет.

Вот и именно что имеет, пока не вставлена флешка все работает, посылки идут, зависания не происходит.

2

finit для меня черный ящик

Так и надо было топик называть - научите работать с SPI. И не приплетать флэшку.

Я сказал что не знаю что делает функция верхнего уровня(финит), для которой эспиайные функции только инструмент, и поэтому я не могу проверить правильность ее работы
осциллографом. И из этого вы сделали вывод что я не умею работать с эспиай. Даже несмотря на то что я перичислил вкратце задачи, к-рые я окучивал с его помощью. У вас с адекватностью все в порядке? Над вашими постами, их категоричностью и оторванностью от ситуации пять человек ржет с этой стороны компа.

3.

Ибо причин не работы SPI может быть крайне много.

Проще интерфейса очень трудно придумать...

Вы себя то слышите? Вы в одном посту себе противоречите. Рассуждаете с категоричностью тинэйджера и с его же уровнем знаний.

4.

И при наличии осциллографа не увидеть как работает SPI - это вообще нереальная ситуация.

см. пункт 3


Еще раз русским языком и после этого идите туда откуда пришли, ибо мне нужен совет делавших конкретное дело а не сентенции считающего что он все знает о том что он считает что он все знает. УМЕЮ. РАБОТАЛ. "С карточками раньше работал. Взял программку инициации карточки из своего проекта на авр, посадил сверху на упомянутый драйверочек SPI, засунул в 2104 в этой проблеммной платочке - карта отзывается, инициализируется. " - ЭТО ПОНЯТНО, ИЛИ ЭТО ДЛЯ ВАС СЛОЖНЕЕ В ПОНИМАНИИ ЧЕМ ЭСПИАЙ? "Вся проблема в том что функция finit для меня черный ящик(она сидит в библиотеке) и я не могу знать что она должна делать и не могу посмотреть поэтому осцилом правильность хода её выполненияю." - ЕСЛИ И ЭТО ТОЖЕ НЕ ПОНЯТНО, ТО РАЗГОВАРИВАЙТЕ С ОБОЯМИ.

НИЧЕГО ЛИЧНОГО
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 01:55
Рейтинг@Mail.ru


Страница сгенерированна за 0.01366 секунд с 7
ELECTRONIX ©2004-2016