Cadavre 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Есть готовое устройство на AT91RM. Требуется зашить программку во внутреннюю ROM память контроллера и запускать после RESET. Заливаю программку через JTAG-отладчик и жму Go. Программа работает. Но при отсоединении JTAG и нажатии RESET программа не запускается. В чём причина может быть? Может нужно выставлять определённое значение пина BMS (Boot Mode Select), чтобы программа загружалась из внутренней ROM? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба У AT91RM внутренняя ROM масочная и записи не подлежит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Cadavre 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Что значит масочная? Тогда как с помощью JTAG'а у меня получается запускать программу? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Думаю, вы запускаете ее из RAM. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Cadavre 0 14 апреля, 2011 Опубликовано 14 апреля, 2011 (изменено) · Жалоба В даташите написано про работу загрузчика и что-то про ножку BMS(Boot Mode Select). Но никак не пойму, как влияет на bootloader при подаче RESET состояние ноги BMS, которое я задаю сам? В чём отличия если подам BMS = 0 или BMS =1? У меня подключена DataFlash AT45 на NPCS0 и выставлен BMS = 1. Получается, что АРМ должен тестить после RESET на наличие корректной таблицы векторов прерываний эту флешку, т.е. должны быть видны импульсы на осциллографе, когда тыкаюсь в MOSI/MISO контроллера или SI/SO флешки... но импульсов нет, в чём причина может быть? Изменено 14 апреля, 2011 пользователем Cadavre Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 14 апреля, 2011 Опубликовано 14 апреля, 2011 · Жалоба В даташите написано про работу загрузчика и что-то про ножку BMS(Boot Mode Select). Но никак не пойму, как влияет на bootloader при подаче RESET состояние ноги BMS, которое я задаю сам? В чём отличия если подам BMS = 0 или BMS =1? Если BMS = 1, в нулевой адрес мапится ROM с загрузчиком, если BMS = 1 - внешняя память на NCS0. То есть во втором случае загрузчик просто не запускается. У меня подключена DataFlash AT45 на NPCS0 и выставлен BMS = 1. Получается, что АРМ должен тестить после RESET на наличие корректной таблицы векторов прерываний эту флешку, т.е. должны быть видны импульсы на осциллографе, когда тыкаюсь в MOSI/MISO контроллера или SI/SO флешки... но импульсов нет, в чём причина может быть? Может быть любая совершенно неисправность в цепях питания, тактирования, сброса. А может, вы просто не успеваете эти импульсы заметить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Cadavre 0 20 апреля, 2011 Опубликовано 20 апреля, 2011 · Жалоба Много ли проблем ведёт собой неисправность цепи сброса? Я обнаружил, что сброс на ножке МК у меня не происходит вовсе, когда я нажимаю кнопку RESET на плате или при включении питаниия (при вкл-ии питания платы микросхема ADM811 должна выдавать импульс RESET'а на ножку МК). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Cadavre 0 22 апреля, 2011 Опубликовано 22 апреля, 2011 · Жалоба Проверьте, пожалуйста, правильно ли я делаю :rolleyes: : задаю BMS = 1 (загружается bootloader из ROM) и ведёт поиск подключенных устройств dataflash. На NCS0 подключена AT45, а на NCS1 - AT25F. С помощью оцсиллографа удалось отследить импульсы на MOSI/MISO у контроллера AT91RM, т.е. одну из флешек АРМ находит, потому-что нет буквы 'C' в окне HyperTerminal. Как мне сделать, чтобы контроллер выдавал приглашние по Xmodem? Задать на землю MISO или чипселекты, чтобы dataflash не были определены? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 22 апреля, 2011 Опубликовано 22 апреля, 2011 · Жалоба Как мне сделать, чтобы контроллер выдавал приглашние по Xmodem? Задать на землю MISO или чипселекты, чтобы dataflash не были определены? Угу. Только "сломать" dataflash тем или иным способом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Atridies 0 12 октября, 2011 Опубликовано 12 октября, 2011 · Жалоба У AT91RM внутренняя ROM масочная и записи не подлежит. Позвольте полюбопытствовать: а у AT91SAM9R64 - тоже ROM не подлежит перезаписи? А то я копаюсь весь день по документам - и ни слова о перезаписи ROM. И ни слова о том, что она неперезаписываемая. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 68 12 октября, 2011 Опубликовано 12 октября, 2011 · Жалоба И ни слова о том, что она неперезаписываемая. Она Read Only Memory, что само по себе намекает нам на невозможность перезаписи. Не подлежит, конечно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DpInRock 0 12 октября, 2011 Опубликовано 12 октября, 2011 · Жалоба ROM==Read Only Memory. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться