AT45DB081D

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Аватара пользователя
ELcat
Друг Кота
Сообщения: 3258
Зарегистрирован: Вт май 19, 2009 09:27:30
Откуда: Украина

AT45DB081D

Сообщение ELcat »

Здравствуйте! Помогите запустить флешку 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)
Реклама
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: AT45DB081D

Сообщение Engineer_Keen »

SO в 0, точно не в третьем состоянии? даже когда CS в 1? Reset подтянут к питанию?
Реклама
Аватара пользователя
ELcat
Друг Кота
Сообщения: 3258
Зарегистрирован: Вт май 19, 2009 09:27:30
Откуда: Украина

Re: AT45DB081D

Сообщение ELcat »

Похоже таки, что в "Z"-состоянии. Она что выключена (в спячке)?
Аватара пользователя
ELcat
Друг Кота
Сообщения: 3258
Зарегистрирован: Вт май 19, 2009 09:27:30
Откуда: Украина

Re: AT45DB081D

Сообщение ELcat »

RESET нет, не подтянут - он сидит на ноге меги через резистор 560Ом, в начале программы RESET дёргается в "0" на 100мс, затем ставится в "1", где и висит постоянно. А что RESET для работы не нужен, его можно повесить на Vcc?
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: AT45DB081D

Сообщение Engineer_Keen »

Можно конечно reset-ом управлять, только зачем? Я его всегда с VCC соединяю. Нога SO в z - состоянии находится всегда кроме моментов передачи данных память->МК. В Си не силен, но вроде ваш код должен работать. Приведите весь код, может где в инициализации косяк.
Реклама
Аватара пользователя
ELcat
Друг Кота
Сообщения: 3258
Зарегистрирован: Вт май 19, 2009 09:27:30
Откуда: Украина

Re: AT45DB081D

Сообщение ELcat »

Сейчас не могу привести - код на компе на работе. В инициализации чего косяк, SPI? Вроде всё нормально там, код генерился визардом CVAVR, осциллографом SI и SCK просматриваются отлично. Какова вероятность, что флеха битая/дохлая. Я, конечно, паяю в "стерильных условиях" относительно электростатической безопасности, имею в этом опыт. Правда фирма, в которой я скупаюсь, два битых контроллера мне уже продала - тини2313 и мегу16 - не жаловался, но осадок, как говорится, остался.
Реклама
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: AT45DB081D

Сообщение Engineer_Keen »

То что флешка дохлая вероятность 50/50 - либо дохлая, либо нет :))) Я их из руками лапал, и хранил не в фольге, ничего, работают. Одну только убил, случайно 14 вольт подал на питание... Режим 0 не пробовали?
Аватара пользователя
ELcat
Друг Кота
Сообщения: 3258
Зарегистрирован: Вт май 19, 2009 09:27:30
Откуда: Украина

Re: AT45DB081D

Сообщение ELcat »

Всё работает!..
Аватара пользователя
Engineer_Keen
Друг Кота
Сообщения: 3872
Зарегистрирован: Пт янв 29, 2010 10:27:40
Откуда: Москва

Re: AT45DB081D

Сообщение Engineer_Keen »

так в чем дело было?
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»