Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: at91sam7x
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
serikbei
Рабоаю с AT91SAM7X-EK evaluation board с FreeRTOS в eclipse. Програмирую с помощью Amontec JTAG key. У меня проблема со сбросом (RESET). После програмирования, при нажатии кнопки сброса, контроллер сбрасывается все как и пологается. Но стоит отключить питание и снова включить, Reset больше не работает. Проверил ногу на контроллере ( NRST ) все нормально при нажатии кнопки напряжение идет с High на LOW. Не могли бы вы дать совет где искать ошибку.
Заранее спасибо.
zltigo
Цитата(serikbei @ Jul 31 2007, 22:15) *
где искать ошибку.

В программе, естественно. Например точка входа - после загрузки JTAG загрузчик стартует с любой, ну а по reset - без варианов. Может какой скрипт инициализирующий выполняется JTAGом. Ну и а Вы часом не в RAM программу грузите smile.gif
goodwin
В AT91SAM7 нога reset после подачи питания неактивна. Ее надо включить программно.
По крайней мере в SAM7S64 наткнулся на то-же самое...
S_agent
Цитата(goodwin @ Jul 31 2007, 23:50) *
В AT91SAM7 нога reset после подачи питания неактивна. Ее надо включить программно.
По крайней мере в SAM7S64 наткнулся на то-же самое...

именно так, для активации сброса по NRST нужно проинитить бит URSTEN(=1) в регистре RSTC_MR.
Noxter
А у меня этот контроллер перестал работать и прошиваться. Стоит на отладочной плате Olimex и работал только с переферией платы (Изучал архитектуру). Чтобы это могло быть?
defunct
Цитата(Noxter @ Aug 1 2007, 19:10) *
А у меня этот контроллер перестал работать и прошиваться. Стоит на отладочной плате Olimex и работал только с переферией платы (Изучал архитектуру). Чтобы это могло быть?

видать стерли программу. И контроллер стартуя из флеша остается с клоком на 30khz.
Варианта два -
1. уменьшить клок JTAG'a до 30khz.
2. Закоротить пин ERASE куда положено и включить плату на более чем 200ms. Проц переключится на загрузку из ROM'a (samba), что вернет вам клок 48Mhz.
serikbei
всем спасибо. Плохо читал документацию.
записал AT91C_BASE_RSTC->RSTC_RMR = AT91C_RSTC_URSTEN | (0x1<<8) | (unsigned int)(0xA5<<24); и все заработало
goodwin
Цитата(serikbei @ Aug 1 2007, 22:54) *
всем спасибо. Плохо читал документацию.
записал AT91C_BASE_RSTC->RSTC_RMR = AT91C_RSTC_URSTEN | (0x1<<8) | (unsigned int)(0xA5<<24); и все заработало


Дык просто привычка и инерционность мышления wink.gif Вроде как аксиома - при подаче сигнала reset все долно сброситься smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.