Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Не работает ARM
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
OlegALL
Добрый день.
Такая ситуация. Процессор AT91RM9200 в нормальном режиме работы при попытке считывания программы из внешнего ПЗУ периодически выдаёт сигнал READ. Также наблюдаются периодические сигналы по всем адресным линиям (все эти сигналы выходные). Такое чувство, что процессор всё время опрашивает ПЗУ и не получает данные (по линиям данных ничего нет). Задача - установить из-за чего неисправность - процессора или ПЗУ (платы на производстве, дефект наблюдается в ряде плат). Что не работает - процессор или ПЗУ (или битая прошивка)?

Спасибо
kovigor
Если есть возможность, написать простейшую программку, читающую ПЗУ, загрузить ее в ОЗУ с помощью JTAG, запустить, а дальше вооружиться осциллографом и ... Но прежде прозвонить бы соотв. дорожки между МК и памятью на неисправной плате.
OlegALL
Цитата(kovigor @ Dec 13 2011, 16:03) *
Если есть возможность, написать простейшую программку, читающую ПЗУ, загрузить ее в ОЗУ с помощью JTAG, запустить, а дальше вооружиться осциллографом и ... Но прежде прозвонить бы соотв. дорожки между МК и памятью на неисправной плате.


Считаем, что обрывов и замыканий нет. Возможности написать программу тоже нет, платы разрабатываются в другом городе
DpInRock
Цитата
периодически выдаёт сигнал READ

Там еще небольшая кучка сигналов имеется. В частности, выборка кристалла.
На линиях данных что-то должно быть.

Ну, а описанная вами ситуация (сигнал READ идет постоянно) скорее всего не соответствует действительности.
OlegALL
Цитата(DpInRock @ Dec 14 2011, 07:41) *
Там еще небольшая кучка сигналов имеется. В частности, выборка кристалла.
На линиях данных что-то должно быть.

Ну, а описанная вами ситуация (сигнал READ идет постоянно) скорее всего не соответствует действительности.


Можно поподробнее о кучке сигналов и как они могут помочь при анализе?
Вообще на процессоре задействованы далеко не все сигналы

READ идёт периодически, я тщательно смотрел, причём платах на 7
DpInRock
Цитата
Можно поподробнее о кучке сигналов и как они могут помочь при анализе?

Насколько подробней?

При анализе помогает знание того, чем занимается процессор в то или иное время.

Постоянный READ означает, что процессор все время читает нечто из внешней памяти. Какой именно - неизвестно. Требуется анализ других сигналов.

Кроме того, если вы собрались отлаживать плату, то совершенно кошерно - закачать себе даташит. Там в подробностях рассказано, что именно делает этот процессор после подачи на него питания. Глава называется Boot.
Пересказывать ее тут нет никакого смысла.
--
Кстати, из даташита можно будет всязть и настоящие наименования сигналов. Ибо что такое READ можно только догадываться.
OlegALL
Согласно даташиту, процессор пытается загрузить программу из внешнего флэш, потом из eeprom, потом из 8-bit device
Если этих устройств нет, то вызывается boot uploader, что символизируется символом "С" на выходе последовательного приёмопередатчика. Однако этого не происходит. Сигнал чтения внешней памяти наблюдается периодически в течение где-то 40 сек, потом сменяется другим непонятным сигналом. Т.е. попытка чтения происходит циклически? Но по даташиту этого быть не должно. Сигналов на линии данных нет - видимо процессор не может считать из флеш.

Сопутствующий вопрос: какого причина неудавшейся попытки чтения флэш? Это неисправность микросхемы памяти, или "битая". Может ли прошивка быть загружена, например, наполовину или как-то криво? Или может там какой-то не тот файл? Узнать ответы на эти вопросы у разработчиков я не могу, по некоторым причинам

DmitryM
Цитата(OlegALL @ Dec 15 2011, 13:14) *
Согласно даташиту, процессор пытается загрузить программу из внешнего флэш
SPI Flash AT45 series!!!
Цитата
, потом из eeprom, потом из 8-bit device

Из параллельной флеш смотрите еррату, не всякая флеш подойдет, /CS 20ns.

Если в терминале нет СССС, то таки где то в носителе информации находятся первые шесть векторов прерываний, соответственно, пытается загрузить во внутренне ОЗУ. Смотрите datasheet.
OlegALL
Цитата(DmitryM @ Dec 15 2011, 13:47) *
SPI Flash AT45 series!!!
Из параллельной флеш смотрите еррату, не всякая флеш подойдет, /CS 20ns.

Если в терминале нет СССС, то таки где то в носителе информации находятся первые шесть векторов прерываний, соответственно, пытается загрузить во внутренне ОЗУ. Смотрите datasheet.


К процессору подключена только флешка, и то я на ней поднял ноги питания, то есть в нему не подключено ничего
DmitryM
Цитата(OlegALL @ Dec 15 2011, 13:58) *
К процессору подключена только флешка, и то я на ней поднял ноги питания, то есть в нему не подключено ничего

Ох, а вот это неправильно, достаточно отсоединить /CS, и посадить его на флешке в 1. А без питания что у Вас там за бардак будет...
acorn
Цитата(OlegALL @ Dec 15 2011, 13:58) *
К процессору подключена только флешка, и то я на ней поднял ноги питания, то есть в нему не подключено ничего


Так делать не стоит. Флешка продолжает питаться через защитные диоды на сигнальных линиях, одновременно их просаживая. И ей плохо, и процессору ее ответы могут быть непонятны.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.