|
|
  |
WinARM, IAR, KEIL, Вопрос чайника. |
|
|
|
Sep 26 2010, 09:24
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 26-01-10
Пользователь №: 55 071

|
Здравствуйте! Подскажите, пожалуйста.
Раньше работал с AVR, в последнее время через AVRStudio и WinAVR. Очень понравилось именно в такой связке. Но решил пересесть на ARM.
1. Есть ли среда разработки для ARM типа AVRStudio не выходя из которой можно компилить посредствам WinARM. 2. Может быть кто-нибудь посоветует достойную альтернативу? Как я понял исходя из поиска в интернете: большое количество примеров приведены для IAR и WinARM, но так как я уже привык к GCC хотелось бы что-то, что позволяет удобную работу с WinARM. 3. Как я понял KEIL это нечто самобытное и примеров под эту среду не много, так ли это?
|
|
|
|
|
Sep 27 2010, 10:33
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 26-01-10
Пользователь №: 55 071

|
1. Правильно ли я понял, что YAGARTO это аналог WinARM, т.е. это тот же GCC? 2. Можно ди данный YAGARTO или WinARM (который уже давно не развивается ) прикрутить к KEIL? 3. Кто-нибудь знает что-нибудь про arm_crossworks??? Кто работал??? Отзывы???
|
|
|
|
|
Sep 27 2010, 10:40
|

developer
   
Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032

|
Цитата(mjpronin @ Sep 27 2010, 14:33)  1. Правильно ли я понял, что YAGARTO это аналог WinARM, т.е. это тот же GCC? Да. Цитата(mjpronin @ Sep 27 2010, 14:33)  2. Можно ди данный YAGARTO или WinARM (который уже давно не развивается ) прикрутить к KEIL? Можно, но если вы будете использовать оценочную версию кейла, то будут ограничения на объем отлаживаемого кода. Цитата(mjpronin @ Sep 27 2010, 14:33)  3. Кто-нибудь знает что-нибудь про arm_crossworks??? Кто работал??? Отзывы??? Тот же GCC.
--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
|
|
|
|
|
Sep 27 2010, 11:01
|

developer
   
Группа: Свой
Сообщений: 902
Регистрация: 12-04-06
Из: Казань
Пользователь №: 16 032

|
Цитата(MrYuran @ Sep 27 2010, 14:54)  Э, а разве оно не эклипс-бэйзед? Зачем его ещё куда-то "прикручивать"? http://www.yagarto.de/howto/yagarto2/index.htmlЭто ни о чем не говорит. С таким же успехом можно и компилятор от Кейл к Эклипсу прикрутить )))
--------------------
Все может быть и быть все может, и лишь того не может быть-чего уж точно быть не может, хотя..и это может быть.
|
|
|
|
|
Oct 11 2010, 10:05
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 26-01-10
Пользователь №: 55 071

|
Здравствуйте. Не стал создавать новую тему, т.к. новые вопросы дополняют предыдущие.
Сейчас имею на руках: 1. Отладочная плата OLIMEX at91sam7-p64 (at91sam7s64) 2. IAR Embedded Workbench 5.4 Kickstar 3. SAM-BA 2.10 (пока JTAG программатора нет, надеюсь, буду шить через USB) 4. Долго не думая взял исходный код для программы предложенный Atmel (getting-started), изменил board.h под мою плату. Так что готовый проект есть. По интересующим вопросам уже почитал SAM-BA User Guide, а также Редькина, но остались вопросы. Подскажите, пожалуйста.
1. При компиляции проекта в IAR, где можно посмотреть информацию касательно размера программы – объем памяти занятый программой и переменными?
2. При запуске SAM-BA в списке «Select your board», что мне выбрать at91sam7s64-ek (но у меня не такая) или no_board?
3. При прошивке памяти программ, какую закладку выбрать DataFlash AT45DB/DCB или NandFlash? В поле Scripts надо ли каждый раз перед заливкой выбирать Erase All и Execute?
4. Если у меня в программе есть переменные, надо ли через SAM-BA дополнительно прошивать SRAM или только достаточно FLASH.
5. Надо ли вносить какие-нибудь изменения в поля: Start Address: 0x300000 Address: 0x40000000 (после Erase All разумеется уже 0х0) такие значения у меня были по умолчанию.
|
|
|
|
|
Oct 11 2010, 13:09
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(mjpronin @ Oct 11 2010, 13:05)  Здравствуйте. Не стал создавать новую тему, т.к. новые вопросы дополняют предыдущие.
Сейчас имею на руках: 1. Отладочная плата OLIMEX at91sam7-p64 (at91sam7s64) 2. IAR Embedded Workbench 5.4 Kickstar 3. SAM-BA 2.10 (пока JTAG программатора нет, надеюсь, буду шить через USB) 4. Долго не думая взял исходный код для программы предложенный Atmel (getting-started), изменил board.h под мою плату. Так что готовый проект есть. По интересующим вопросам уже почитал SAM-BA User Guide, а также Редькина, но остались вопросы. Подскажите, пожалуйста.
1. При компиляции проекта в IAR, где можно посмотреть информацию касательно размера программы – объем памяти занятый программой и переменными?
2. При запуске SAM-BA в списке «Select your board», что мне выбрать at91sam7s64-ek (но у меня не такая) или no_board?
3. При прошивке памяти программ, какую закладку выбрать DataFlash AT45DB/DCB или NandFlash? В поле Scripts надо ли каждый раз перед заливкой выбирать Erase All и Execute?
4. Если у меня в программе есть переменные, надо ли через SAM-BA дополнительно прошивать SRAM или только достаточно FLASH.
5. Надо ли вносить какие-нибудь изменения в поля: Start Address: 0x300000 Address: 0x40000000 (после Erase All разумеется уже 0х0) такие значения у меня были по умолчанию. 1. Да можно, для этого нужно в опциях options->linker->list поставить галочку generate linker map file, в папке согласно вашей конфигурации (DEBUG,RELEASE и т.д.) появится файл с расширением map в нем все и расписано. 2 Не знаю не юзаю. 3. at91sam7s64 имеет встроенную флеш память, а DataFlash AT45DB/DCB или NandFlash это внешне подключаемые этот процессор не умеет с них грузится и выполнять программы тобиш явно не ваш случай. Для вас надо что то Flash. 4. Нет не надо. 5. тоже что и пункт 2.
|
|
|
|
|
Oct 12 2010, 07:47
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 26-01-10
Пользователь №: 55 071

|
Спасибо. Многое стало ясно.
После того как я выполнил все предписанные манипуляции с TEST, плата определилась как новое устройство, затем произвел установку дров, потом SAM-BA признал МК и плату, произвел коннект через USB. Появились закладки для программирования необходимого МК.
Остался последний вопрос. Я прочел, что первоначально необходимо произвести манипуляции в поле Scripts, а именно выбрать Boot from Flash (GPNVM2), но у меня в самбе того нет, зато есть: Disable BrownOut Detector (GPNVM0) Disable BrownOut Reset (GPNVM1) Enable BrownOut Detector (GPNVM0) Enable BrownOut Reset (GPNVM1) Enable Flash access Enable Security Bit Erase All Flash так что мне выбрать?? Enable Flash access?? Erase All Flash??
Проверьте, так ли Вы делаете, те кто работает с SAM-BA: 1. Произвожу манипуляции с перезаписью SAM-BA. Самба перезаписывается во flash и МК готов к записи пользовательской программы???
2. Заливаю свою программу: Send File. Address: ??? Не знаю какой надо указать 0х00 чтобы в начало памяти писать или оставить то, что по умолчанию 0x100000 ????? Я так понимаю, надо писать в начало flash, чтобы пользовательская программа затерла собой самбу??? Или надо оставлять адрес по умолчанию????
3. Выбираю флаг: Enable Flash access - Execute, что переключает стартовый адрес МК на начало flash памяти с пользовательской программой???? По крайней мере, так написано в одной из книг.
4. Надо ли производить манипуляции с Erase All Flash??? Производится ли данная операция автоматически??? Ведь если код последующей программы меньше кода предыдущей, то она затрет собой не весь код предыдущей и будет белиберда???? Производится ли стирание всего flash, когда происходит запись самбы в память???
|
|
|
|
|
Oct 12 2010, 10:19
|
Участник

Группа: Участник
Сообщений: 50
Регистрация: 26-01-10
Пользователь №: 55 071

|
Народ, ну разве никто не работает с SAM-BA? Ну, есть же хоть что-нибудь ответить!? Может быть мне новую тему создать?
Сообщение отредактировал mjpronin - Oct 12 2010, 16:06
|
|
|
|
|
Oct 13 2010, 08:14
|

Частый гость
 
Группа: Участник
Сообщений: 149
Регистрация: 15-12-09
Из: Москва
Пользователь №: 54 280

|
Цитата(mjpronin @ Oct 12 2010, 14:19)  Народ, ну разве никто не работает с SAM-BA? Ну, есть же хоть что-нибудь ответить!? Может быть мне новую тему создать? Привет, сам пару дней назад прикупил платку от olimex at91sam7p256 от Olimex. И вот что я узнал (может тебе пригодится) 1)У камней at91sam7s нету бита GPNVM2 (этот бит есть у at91sam7x), поэтому то и в самбе в закладке scripts этого бита тоже нету. 2)Из этого следует (как я понял) Что нужно каждый раз заново перезаливать самбу во флеш, а затем уже заливать туда прошивку. 3)У меня все получилось с первого раза причем я ничего не меняя в самбе просто выбрал свой bin, затем сделал send file во флеш и передернул питание. После этого моя прога запустилась. Открытым остается вопрос, как не затирая самбу залить свою прошивку (вo флеш или в озу), затем запустить ее, а затем снова вернуться к самбе, (чтобы заново ее не заливать) и повторять процесс программирования. Пробовал изменять стартовый адрес на 200400 (по умолчанию был 200000) но ничего не помогло. При включении питания всегда начинает работать прошивка, а как передать управление на самбу непонятно ?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|