AT45DB081D
AT45DB081D
Здравствуйте! Помогите запустить флешку AT45DB081D, желательно примерчик на Си (CVAVR). Делаю устройство на ATmega16A, в котором одной из ф-ций будет вывод речевых сообщений, хранящихся во внешней РПЗУ. Питание на флешу подаётся с параметрического стабилизатора на стабилитроне 3В. Все линии подключены к меге через резисторы 560Ом. На входы приходят сигналы /CS, SCK и SI с достаточно крутыми фронтами, но SO постоянно висит в нуле, как будто микросхема игнорирует команды. Использован аппаратный SPI на частоте 1МГц настроенный как мастер "режим 3".
EEP_CS = 0;
SPI_data = spi(0x9F);
for(cntr_spi = 0; cntr_spi > 6; cntr_spi++)
{
SPI_data = spi(0x00);
}
EEP_CS = 1;
(команда получения ID)
EEP_CS = 0;
SPI_data = spi(0x9F);
for(cntr_spi = 0; cntr_spi > 6; cntr_spi++)
{
SPI_data = spi(0x00);
}
EEP_CS = 1;
(команда получения ID)
- Реклама
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: AT45DB081D
SO в 0, точно не в третьем состоянии? даже когда CS в 1? Reset подтянут к питанию?
Re: AT45DB081D
Похоже таки, что в "Z"-состоянии. Она что выключена (в спячке)?
Re: AT45DB081D
RESET нет, не подтянут - он сидит на ноге меги через резистор 560Ом, в начале программы RESET дёргается в "0" на 100мс, затем ставится в "1", где и висит постоянно. А что RESET для работы не нужен, его можно повесить на Vcc?
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: AT45DB081D
Можно конечно reset-ом управлять, только зачем? Я его всегда с VCC соединяю. Нога SO в z - состоянии находится всегда кроме моментов передачи данных память->МК. В Си не силен, но вроде ваш код должен работать. Приведите весь код, может где в инициализации косяк.
- Реклама
Re: AT45DB081D
Сейчас не могу привести - код на компе на работе. В инициализации чего косяк, SPI? Вроде всё нормально там, код генерился визардом CVAVR, осциллографом SI и SCK просматриваются отлично. Какова вероятность, что флеха битая/дохлая. Я, конечно, паяю в "стерильных условиях" относительно электростатической безопасности, имею в этом опыт. Правда фирма, в которой я скупаюсь, два битых контроллера мне уже продала - тини2313 и мегу16 - не жаловался, но осадок, как говорится, остался.
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: AT45DB081D
То что флешка дохлая вероятность 50/50 - либо дохлая, либо нет
Я их из руками лапал, и хранил не в фольге, ничего, работают. Одну только убил, случайно 14 вольт подал на питание... Режим 0 не пробовали?
Re: AT45DB081D
Всё работает!..
- Engineer_Keen
- Друг Кота
- Сообщения: 3872
- Зарегистрирован: Пт янв 29, 2010 10:27:40
- Откуда: Москва
Re: AT45DB081D
так в чем дело было?


