roboforum.ru

Технический форум по робототехнике.
Текущее время: 23 ноя 2024, 18:44

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 21 авг 2010, 21:50 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Есть SPI DataFlash AT45DB321. Проблема заключается в том, что читается значение 0xB4 из памяти, независимо от того что писалось туда.
Теперь более конкретно.
- У SPI частота 5МГц
- Чтение байта статуса проходит нормально, все биты правильные.
- Запись производиться командой PROGRAM_MAIN_THROUGH_BUFFER1 (0x82), то есть напрямую, без буффера.
- Запись проходит корректно, смотрел осциллом.
- Для проверки код взял отсюда
Который без DMA, и начинается с AT45DB_
- После записи жду бит READY в статус байте, через некоторое время он появляется, не похоже чтобы ложно срабатывал.
- Чтение тоже корректно отрабатывает, но флеш отправляет байты 0xB4, проверял осциллом, странно.

Может кто сталкивался? Есть идеи?

В функции ожидания статуса READY, при возврате не отпускался chip select, поэтому следующий процесс чтения читал только статус регистр.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AT45DB проблема чтения/записи
СообщениеДобавлено: 21 авг 2010, 22:05 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Проверить правильность сигналов SPI. Можно в PROTEUS осцилограммы посмотреть и сравниь с даташитом.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AT45DB проблема чтения/записи
СообщениеДобавлено: 21 авг 2010, 22:10 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Проверял, осциллом, в живую. И статус байт читается нормально, когда пишет в память флаг BUSY есть, и на команды откликается соответственно. Все указывает на то, что живой чип и общение нормально.
У кого-нибудь есть простой пример записи\чтения страницы (без буффера) для этого чипа? Просто я дошел до кондиции, когда не вижу своих ошибок, нужен другой код, в интернете в основном все наворочено под микро ОС, мусора выкидывать много.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AT45DB проблема чтения/записи
СообщениеДобавлено: 21 авг 2010, 22:12 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
B4 - похоже на статусный байт...
(а WP не стоит случаем?)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AT45DB проблема чтения/записи
СообщениеДобавлено: 21 авг 2010, 22:18 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Да, действительно, это значение статус регистра, в нормальном состоянии..
WP в единице подвешен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: AT45DB проблема чтения/записи
СообщениеДобавлено: 21 авг 2010, 22:29 
Не в сети
Аватара пользователя

Зарегистрирован: 07 окт 2009, 00:29
Сообщения: 6028
Откуда: СПб
значит или команды попутали (где-то в чтении, скорее всего) или где-то между ними ЦС не сняли...
или что-то в таком духе...
как обычно, будете смеяться какая тупая ошибка БЫЛА :) но только после того, как найдете.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 23 авг 2010, 15:49 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Спасибо Michael_K


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 23 авг 2010, 16:00 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
А что было то не скажете ?

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 23 авг 2010, 16:19 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Добавил в первый пост жирным текстом


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 23 авг 2010, 16:35 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Сергей писал(а):
не отпускался chip select


Это можно было увидеть в PROTEUS в логическом анализаторе без модели памяти. Только проц и прога.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 23 авг 2010, 16:45 
Не в сети

Зарегистрирован: 29 дек 2004, 23:15
Сообщения: 3744
Откуда: Санкт-Петербург
прог. языки: C, C++, C#, Asm
ФИО: Кашликов Сергей
Я не хотел переносить код на AVR или PIC, потому что давно уже их не использовал.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: [Решено] AT45DB проблема чтения/записи
СообщениеДобавлено: 23 авг 2010, 17:27 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
В PROTEUS и ARM есть. :D

Если ARM то в лог анализаторе KEIL тоже отлично смотреть трассы сигналов.

_________________
Читайте !


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO