|
ATMega->SPI->AT45DB, Сбои при программировании МК |
|
|
|
 |
Ответов
|
Dec 14 2009, 02:37
|
Местный
  
Группа: Свой
Сообщений: 256
Регистрация: 6-03-06
Из: Украина, г. Винница
Пользователь №: 15 017

|
Только предположение. Раздел даташита меги128, SPI Serial Programming Algorithm, вход в режим программирования. [quote] 1. Power-up sequence: Apply power between VCC and GND while RESET and SCK are set to ”0”. In some systems, the programmer can not guarantee that SCK is held low during power-up. In this case, RESET must be given a positive pulse of at least two CPU clock cycles duration after SCK has been set to ”0”. [quote] Так как в даташите не нашел отдельного описания последовательности входа в последоветельный режим программирования, то смею предположить, что для этого ресет и SCK садятся на ноль, потом на ресет подается импульс длиной более чем в 2 такта CPU. (Уточнить можно ) Супервизор "съедает" часть этого импульса (его ResetActiveTime = 250..1000ms) и вполне возможно, что он не доходит до меги. Также его может "съедать" и watchdog. Хотя это никак не связано с наличием/отсутствием АТ45.
P.S. Пересмотрел исходники AVR910. Оказывается, последовательность немного другая. (хотя я выражение из даташита "positive pulse" понимаю как переход 0->1->0) Сначала программатор садит SCK на "0". Потом ждет (~50 мс) дальше ресет на 0 и после паузы ~50 мс выдает на mosi "Programming Enable". То есть фаза входа в режим программирования начинается немного раньше подачи ресета. Ресет в момент выдачи программатором "0" НЕ активен, поэтому программатор и контроллер работают "навстечу". Из-за этого уровень на этой ноге при фронте на ресете может отличаться от "0". Отсюда и ошибка входа в режим программирования. Так что попробуйте sck подключить к ат45 через резистор
|
|
|
|
|
Feb 10 2011, 19:34
|
Группа: Новичок
Сообщений: 4
Регистрация: 10-08-09
Пользователь №: 51 815

|
Извиняюсь, что со своим вопросом в чужую тему. Но маленький вопрос. Использовал в устройстве память AT45DB011B-SU, а сейчас есть возможность купить только AT45DB011D-SH-B-ND. Полностью ли они взаимозаменяемые? Есть ли разница в коде при обращении к В и к D? Спасибо!
|
|
|
|
Сообщений в этой теме
prottoss ATMega->SPI->AT45DB Aug 13 2007, 13:01 GDI Были похожие проблемы в проекте с мега16 и ат45, с... Aug 13 2007, 14:03 prottoss Цитата(GDI @ Aug 13 2007, 22:03) P.S. А к... Aug 14 2007, 07:08  rx3apf Цитата(prottoss @ Aug 14 2007, 11:08) Вы ... Aug 15 2007, 09:38 oll Попробуйте "прицепить" электролит 33мкФ ... Aug 13 2007, 16:13 _Алекс У меня работает и программатор и флеш, схему включ... Aug 13 2007, 16:55 _Sam_ У меня такая память в двух проектах используется с... Aug 13 2007, 17:49 INT1 2 prottoss, а где же Ваша мега на схеме?, попробуй... Aug 14 2007, 07:49 prottoss Цитата(INT1 @ Aug 14 2007, 15:49) 2 prott... Aug 14 2007, 07:58  Сергей Борщ Цитата(prottoss @ Aug 14 2007, 10:58) А з... Aug 15 2007, 08:19   prottoss Цитата(Сергей Борщ @ Aug 15 2007, 16:19) ... Aug 15 2007, 11:48    Сергей Борщ Цитата(prottoss @ Aug 15 2007, 14:48) Но ... Aug 15 2007, 13:37     prottoss Цитата(Сергей Борщ @ Aug 15 2007, 21:37) ... Aug 15 2007, 14:00      Сергей Борщ Цитата(prottoss @ Aug 15 2007, 17:00) Неа... Aug 15 2007, 16:42 GDI В моем том проекте тоже стояла AT45DB081RI Aug 14 2007, 12:14 _Sam_ ЦитатаЕще выяснился один интересный ньюанс - если ... Aug 16 2007, 06:45 prottoss Цитата(_Sam_ @ Aug 16 2007, 14:45) Может ... Aug 16 2007, 10:52 Roger У меня возникла проблема со связью Atmega8L и at45... Dec 10 2009, 20:30 Roger Всем спасиб, проблема была в прорайке... Dec 11 2009, 16:47  rezident Цитата(Андрей67 @ Feb 11 2011, 00:34) Ест... Feb 10 2011, 20:57   Андрей67 Цитата(rezident @ Feb 10 2011, 23:57) Про... Feb 11 2011, 13:10  demiurg_spb Цитата(Андрей67 @ Feb 10 2011, 22:34) Изв... Feb 11 2011, 08:50
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|