реклама на сайте
подробности

 
 
 
Closed TopicStart new topic
> atmega128a и необъяснимые глюки, при работе с at45db161d
rat12
сообщение Sep 23 2010, 16:20
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 9-09-10
Из: Симферополь
Пользователь №: 59 396



Существует вполне рабочий проект на связке atmega128L и at45db161d по аппаратному spi. Всё бы ничего, но 128-е и 128L снимают с производства и взамен предлагают atmega128a. Миграции практически никакой в даташите не приведено, пишут про полную программную совместимость.
А на деле следующее:
atmega128a и at45db161d соединены проводниками по аппаратному spi (других spi устройств на шине нет), запитаны от одного источника напряжением 2, 97 В. Связи нет. При замене на той же плате процесора на atmega128L с тем же кодом на борту- всё работает. Что бы это могло быть?

Сообщение отредактировал rat12 - Sep 23 2010, 16:21
Go to the top of the page
 
+Quote Post
prottoss
сообщение Sep 23 2010, 16:55
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(rat12 @ Sep 23 2010, 23:20) *
Связи нет.
Большинство экстрасенсов сейчас в отпускеsmile.gif Можно подробнее? В смысле на какие нибудь команды DataFlash(smile.gif) отвечает или вообще молчит. Или тупо заменили и не работает и только "чеделатьчедалеть crying.gif "


--------------------
Go to the top of the page
 
+Quote Post
rat12
сообщение Sep 23 2010, 17:12
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 9-09-10
Из: Симферополь
Пользователь №: 59 396



Извините за малость фактов.
Есть 20 одинаковых плат. На нах стоят 20 процов 128А smile.gif
Все команды с памятью выполняют только 2 из 20. Т.е. на лицо некая статистика. Как я уже говорил, при замене на неработающей плате процессора с 128a на 128L всё волшебным образом начинает работать. Выполняются команды очистки, записи и чтения.
Напротив, до замены все эти команды выполняются как-то странно. Очистка - работает. Запись не работает либо работает недолгое время (несколько секунд от начала алгоритма) и чтение - почти не работает (удалось поймать 1 раз за сим процессом).
Частота spi довольна низка - 250 кГц.
Даже задержки в 12 мкс вводил после активации пина выбора кристалла памяти - думал, фронт не успевает. Не помогло.
Go to the top of the page
 
+Quote Post
prottoss
сообщение Sep 23 2010, 17:27
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(rat12 @ Sep 24 2010, 00:12) *
Даташиты сравнивали?


--------------------
Go to the top of the page
 
+Quote Post
rat12
сообщение Sep 23 2010, 18:04
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 9-09-10
Из: Симферополь
Пользователь №: 59 396



Да. Разницы не увидел.
Есть разница по напряжениям логического 0 на портах, увеличился на 0,1 В, копаю в эту сторону. Возможно, не хватает для включения кристалла памяти. Хотя врядли, в плече делителя на ноге CS памяти стоит резистор 10к на питание.
Go to the top of the page
 
+Quote Post
prottoss
сообщение Sep 23 2010, 20:13
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(rat12 @ Sep 24 2010, 01:04) *
Да. Разницы не увидел. Есть разница по напряжениям логического 0 на портах, увеличился на 0,1 В, копаю в эту сторону. Возможно, не хватает для включения кристалла памяти. Хотя врядли, в плече делителя на ноге CS памяти стоит резистор 10к на питание.
Копаете правильноsmile.gif Только вот не понятно с последним Вашим предложением. Чтобы кристалл включился, нужно ноль на CS подать, а Вы чего то про подтяжку к питанию говорите... Кстати, на входе MISO МК внутренний пулл-ап включен? А то может быть флэшка и отвечает, а МК понять не может. Вообще, для вылавливания таких глюков нуна осциллоскоп иметь.


--------------------
Go to the top of the page
 
+Quote Post
rat12
сообщение Sep 23 2010, 20:35
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 9-09-10
Из: Симферополь
Пользователь №: 59 396



Цитата
Только вот не понятно с последним Вашим предложением. Чтобы кристалл включился, нужно ноль на CS подать, а Вы чего то про подтяжку к питанию говорите...
А я это делал по аналогии с аппноутом AVR335, там CS подтянули к питанию, а выбор кристалла осуществляют переводом ноги МК, также подключенного к CS, в 0... В принципе, резистор и не нужен, но для души спокойнее, что в случае перезагрузки МК кристалл памяти не активизируется и мусора не понабирает.

Цитата
Кстати, на входе MISO МК внутренний пулл-ап включен?
Да.

Цитата
Вообще, для вылавливания таких глюков нуна осциллоскоп иметь.
Работаем в этом направлении smile.gif
Вообще бесит, что кристаллы "де юре" заменяемы, а "де факто" нет blink.gif
Go to the top of the page
 
+Quote Post
DS
сообщение Sep 23 2010, 21:30
Сообщение #8


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



А дно заземлили ? У "А", наскольо я помню, требуется дно землить.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
rat12
сообщение Sep 24 2010, 08:33
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 9-09-10
Из: Симферополь
Пользователь №: 59 396



Корпус TQFP -пластиковый. Нечего заземлять на данном типе smile.gif

Сегодня выкинул резистор, о котором шла речь ранее - ничего не изменилось sad.gif
Go to the top of the page
 
+Quote Post
prottoss
сообщение Sep 24 2010, 09:33
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(rat12 @ Sep 24 2010, 15:33) *
Сегодня выкинул резистор, о котором шла речь ранее - ничего не изменилось sad.gif
Ну а осциллографом то смотрели? Что приходит на флэшку, что от нее уходит? Если нет осциллографа rolleyes.gif , попробуйте простым светодиодом. Определитесь хотя бы, в какой стороне проблема.


--------------------
Go to the top of the page
 
+Quote Post
=GM=
сообщение Sep 24 2010, 11:30
Сообщение #11


Ambidexter
*****

Группа: Свой
Сообщений: 1 589
Регистрация: 22-06-06
Из: Oxford, UK
Пользователь №: 18 282



Цитата(rat12 @ Sep 23 2010, 16:12) *
до замены все эти команды выполняются как-то странно. Очистка - работает. Запись не работает либо работает недолгое время (несколько секунд от начала алгоритма) и чтение - почти не работает (удалось поймать 1 раз за сим процессом)

Ну, раз работает, но недолго, то значит, вы находились на границе допусков и после прогрева кристалла, когда параметры уплывают, вы выходите за границу. В SPI установках обратите внимание на фазу клока и полярность по отношению к данным, должно помочь.


--------------------
Делай сразу хорошо, плохо само получится
Go to the top of the page
 
+Quote Post
rat12
сообщение Sep 24 2010, 19:56
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 9-09-10
Из: Симферополь
Пользователь №: 59 396



Благодарю всех за помощь. Проблема решилась.
Всё было банальнее - логическая ошибка в алгоритме на более высоком уровне, нежели уровень записи во флеш sad.gif

Все работает! smile.gif
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 00:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01468 секунд с 7
ELECTRONIX ©2004-2016