Цитата(AndyBig @ Jan 10 2006, 19:54)

Работал с DataFlash + ATmega64, пользуясь аппаратным SPI. Питание контроллера - 5В, флэшки - 3,3В. Никаких проблем не возникло.
Проверьте:
1. Сконфигурированы ли у Вас соответствующие порты контроллера (MISO на вход, MOSI, ~SS и SCK на выход)
2. Включен ли SPI
3. Правильно ли выставлен режим SPI (должен быть 0 или 3)
4. Перед началом каждой команды, посылаемой в DataFlash, необходимо деактивировать и вновь активировать ChipEnable. Текущая команда выполняется флэшкой именно до деактивации chipenable, а не просто до получения новой команды (я на этом поначалу обжегся).
Кстати, сигнал BUSY, как и соответствующий флаг в регистре статуса, выставляется только на время выполнения нескольких команд (запись буфера в память, чтение памяти в буфер, сравнение памяти и буфера) и не означает, что флэшку вообще нельзя беспокоить. Скажем, получать у нее статус можно в любое время. Читать и писать буфер - тоже. Об этом довольно подробно написано в даташите на флэшку и в аппликейшне AN-4 Using Atmel's DataFlash.
1. Порты сконфигурированы как нада.
2. СПиАй включен
Обмен по нему видел осцилграфом
Но память ничего не отвечала
3. Насчет режима - содрал с АВР335 точно не проверял - надеюсь ошибка не там - проверю.
4. Насчет ChipEnable такого не видел осцилографом и в коде похоже нету.
Надеюсь что проблемма в этом
Завтра приду на работу - все проверю.
Вопрос: на какой интервал времени достаточно запретить а потом разрешить Флешку ??
Ещораз спасибо
Хотел сделать акцент
Использовал ли кто либо при работе
AVR335: Digital Sound Recorder with AVR and DataFlash
или все сами писали процедуры обмена с ДатаФлешкой ???
Я слышал что а Апноутах часто бывают ошибки
Хотя скорее вего ошибаюсь я
Спасибо