|
Как отлаживать AT91RM9200?, Есть только Wiggler... |
|
|
|
Nov 23 2004, 09:16
|
Частый гость
 
Группа: Свой
Сообщений: 88
Регистрация: 15-10-04
Из: Новочеркасск
Пользователь №: 886

|
Цитата(xoms @ Nov 23 2004, 06:03 AM) Вот помнится не получилось у меня завести AT91RM9200 виглером А чем в итоге получилось (и получилось ли вообще  )?
|
|
|
|
|
Nov 23 2004, 10:32
|
Частый гость
 
Группа: Свой
Сообщений: 124
Регистрация: 20-06-04
Пользователь №: 67

|
Цитата(DPL @ Nov 23 2004, 12:16 PM) Цитата(xoms @ Nov 23 2004, 06:03 AM) Вот помнится не получилось у меня завести AT91RM9200 виглером А чем в итоге получилось (и получилось ли вообще  )? Получилось с отладкой MAJIC oт EPI (www.epi.com), но её покупать не надо, 1000$. Потом прошили в AT91RM9200 bootloader , и забыли про jtag и ice. Отлаживаемся по сети.
|
|
|
|
|
Nov 23 2004, 10:39
|
Местный
  
Группа: Свой
Сообщений: 212
Регистрация: 26-08-04
Пользователь №: 545

|
Цитата(xoms @ Nov 23 2004, 01:32 PM) Потом прошили в AT91RM9200 bootloader , и забыли про jtag и ice. Отлаживаемся по сети. Нельзя ли по подробнее, про процесс прошивки и отладки?
|
|
|
|
|
Nov 23 2004, 10:44
|
Местный
  
Группа: Свой
Сообщений: 212
Регистрация: 26-08-04
Пользователь №: 545

|
Цитата(IgorKossak @ Nov 23 2004, 12:53 PM) Ниужели драйверу JTAG не всё равно с каким процессором работать? Просто IAR плохо дружит с Wiggler-ом, но в то же время в IAR - наилучший код (по моему мнению) и с IAR-ом я дружу давно, работал с AVR-ами, не хотелось бы на что-то другое переходить. А вот как залить программку в AT91RM9200 - непонятно, хотя бы в ОЗУ.
|
|
|
|
|
Nov 24 2004, 03:51
|
Частый гость
 
Группа: Свой
Сообщений: 124
Регистрация: 20-06-04
Пользователь №: 67

|
Цитата(afad @ Nov 23 2004, 01:39 PM) Нельзя ли по подробнее, про процесс прошивки и отладки? Сам проц умеет згружать и запускать любой код по х-терминалу. подсовываем ему прожигальщик пзу, и он зашивает в память (у нас флешка) воотлоадер чего-нибудь. Работаем с OS VxWorks. Её bootloader после ресета лезет в сеть, забирает OS, загружает в ОЗУ. К ней по сети коннектится виндусовая оболочка с точками останова, watch, и тд. Она же грузит и наши аpplication.
|
|
|
|
|
Nov 24 2004, 08:17
|
Участник

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300

|
CrossStudio видит проц нормально только после перехода на быстрый кварц. Это приходится сразу прописывать в ресет-скрипте . Программа в срам грузится без проблем, да и выполняется тоже. Но вот какой-то гемор с ремапом и сбросом процессора. Так и не получается написать скрипт, чтоб все загружалось и работало автоматом. Если посмотреть скрипт от EB40A , то почему-то сброс процессора производят по переполнению WDT. И он там замечательно проходит, все грузится, запускается. Пытаемся повторить для AT91RM9200- одни косяки.
|
|
|
|
|
Dec 24 2004, 10:02
|
Участник

Группа: Свой
Сообщений: 70
Регистрация: 6-07-04
Пользователь №: 277

|
Цитата(undi @ Nov 24 2004, 11:17) CrossStudio видит проц нормально только после перехода на быстрый кварц. Это приходится сразу прописывать в ресет-скрипте . Программа в срам грузится без проблем, да и выполняется тоже. Но вот какой-то гемор с ремапом и сбросом процессора. Так и не получается написать скрипт, чтоб все загружалось и работало автоматом. Если посмотреть скрипт от EB40A , то почему-то сброс процессора производят по переполнению WDT. И он там замечательно проходит, все грузится, запускается. Пытаемся повторить для AT91RM9200- одни косяки. Подтверждаю. WIGGLER не работает. Где то проходила инфа, что проблема в том, что проц стартует на 32768Гц у WIGGLERA мин частота 4МГц/8 (я пользовался FLASH PROGRAMMER) от же с PXA 255 проблем нет
|
|
|
|
|
Dec 25 2004, 05:26
|
Участник

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300

|
Цитата(DIM @ Dec 24 2004, 13:02) Подтверждаю. WIGGLER не работает. Где то проходила инфа, что проблема в том, что проц стартует на 32768Гц у WIGGLERA мин частота 4МГц/8 (я пользовался FLASH PROGRAMMER) от же с PXA 255 проблем нет Ну в общем то проблему, так или иначе решили. Начиная с делителя на 5 работает и CW и FlashProgrammer, но ему опять же надо пару регистров заранее прописать, чтоб на бастрый кварц перешел.
|
|
|
|
|
Dec 27 2004, 09:45
|
Участник

Группа: Свой
Сообщений: 70
Регистрация: 6-07-04
Пользователь №: 277

|
[quote=undi,Dec 25 2004, 08:26] [quote=DIM,Dec 24 2004, 13:02]Подтверждаю. WIGGLER не работает. Ну в общем то проблему, так или иначе решили. Начиная с делителя на 5 работает и CW и FlashProgrammer, но ему опять же надо пару регистров заранее прописать, чтоб на бастрый кварц перешел. [/quote] попытка что-то не проходит значение регистров - 0xFFFFFC20=0x0000FF01 (PMC_MOR) значение регистров - 0xFFFFFC30=0x00000301 (PMC_MCKR) инициализация именно в этой последовательности говорит - кабель не присоединен. проверил все варианты делителя Может что-то еще надо записать. Хотя вроде этого достаточно
|
|
|
|
|
Dec 27 2004, 12:56
|
Участник

Группа: Свой
Сообщений: 54
Регистрация: 8-07-04
Из: Пермь
Пользователь №: 300

|
function RM9200_Reset() { TargetInterface.setNSRST(0); TargetInterface.delay(100); TargetInterface.setICEBreakerBreakpoint(0, 0x0, 0xFFFFFFFF, 0x0, 0xFFFFFFFF, 0x100, 0xf7) TargetInterface.setNSRST(1); TargetInterface.waitForDebugState(1000); TargetInterface.trst();
TargetInterface.pokeWord(0xFFFFFC20, 0x0000FF01); //start Main CLK TargetInterface.delay(10); //delay for stabillization TargetInterface.pokeWord(0xFFFFFC30, 0x00000001);
TargetInterface.pokeWord(0xFFFFFF00, 0x1); //remap TargetInterface.trst(); }
У нас написано так, хотя уже сам не помню, что тут про что. Хотя коннект должен производиться еще до выполнения скрипта, с любым делителем. Другое дело, что если мало поделить - не грузит ни хрена. Еще во время экпериментов было обнаружено, что ntrst, в общем то не нужен, и если его отодрать, то подключается и через 14 пиновый виглер.
|
|
|
|
|
Dec 27 2004, 14:45
|
Участник

Группа: Свой
Сообщений: 70
Регистрация: 6-07-04
Пользователь №: 277

|
Цитата(undi @ Dec 27 2004, 15:56) function RM9200_Reset() { TargetInterface.setNSRST(0); TargetInterface.delay(100); TargetInterface.setICEBreakerBreakpoint(0, 0x0, 0xFFFFFFFF, 0x0, 0xFFFFFFFF, 0x100, 0xf7) TargetInterface.setNSRST(1); TargetInterface.waitForDebugState(1000); TargetInterface.trst(); TargetInterface.pokeWord(0xFFFFFC20, 0x0000FF01); //start Main CLK TargetInterface.delay(10); //delay for stabillization TargetInterface.pokeWord(0xFFFFFC30, 0x00000001); TargetInterface.pokeWord(0xFFFFFF00, 0x1); //remap TargetInterface.trst(); } У нас написано так, хотя уже сам не помню, что тут про что. Хотя коннект должен производиться еще до выполнения скрипта, с любым делителем. Другое дело, что если мало поделить - не грузит ни хрена. Еще во время экпериментов было обнаружено, что ntrst, в общем то не нужен, и если его отодрать, то подключается и через 14 пиновый виглер. Спасибо огромное. До 2х записей допер, а вот все остальное - снимаю шляпу. а как этот скрипт запихать во FLASH PROGRAMMER?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|