|
|
  |
как прошить AT91SAM7S256, на отладочной плате |
|
|
|
Nov 4 2009, 13:29
|
Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 17-03-08
Пользователь №: 35 988

|
Цитата(sergeeff @ Nov 4 2009, 15:48)  Каша у вас в голове полная. JTAG какое имеет отношение к получению bin-файла? Абсолютно никакого. это я понял!! Джатаг не имеет отношения!! Каши нет) глава где описывалось подключения стартапа была отнесена к джатагу!! поэтому я неанимательно смотрел ту часть. А так как раз про линкер и его установки описывалось!!
Причина редактирования: Нарушение п.3.4 Правил форума.
|
|
|
|
|
Nov 4 2009, 16:55
|
Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 17-03-08
Пользователь №: 35 988

|
УРА уважаемые ура! фаил бин, прикладеный в скаченом с саита олимекса, заставил моргать ногу, естествено я решил вникнуть глубже в вопросы програмирования мк и открыл полностью проект..попытался для начала его скомпелировать..выскачела ошибка со ссылкои на фаил Cstartup.s79..я его отклыл в блокноте и увидил, что упоминается там исключительно "Generic CStartup to AT91SAM7S64" я же использую 256 процессор. я так понимаю, что для компилятора и процессора это не одно и тоже? регистры там разные, память?? если я изменю все в фаиле с ......64, на .....256, это мне не поможет?да. и еще впрос.стартапа достаточно одного для мк, или же для каждои программы прошиваемои в мк, стартап необходимо переделывать?? или же все зависит от того, в какои участок памяти я записываю бин фаил? ..простите за делитанские вопросы)
|
|
|
|
|
Nov 4 2009, 17:20
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(alexan300 @ Nov 4 2009, 19:55)  выскачела ошибка со ссылкои на фаил Cstartup.s79 ... если я изменю все в фаиле с ......64, на .....256, это мне не поможет? Вы бы лучше сообщение об ошибке сразу процитировали, а то остается только гадать, в чем могло быть дело. Цитата(alexan300 @ Nov 4 2009, 19:55)  да. и еще впрос.стартапа достаточно одного для мк, или же для каждои программы прошиваемои в мк, стартап необходимо переделывать?? или же все зависит от того, в какои участок памяти я записываю бин фаил? Стартап - часть программы. Вопрос не понял, если честно.
|
|
|
|
|
Nov 4 2009, 17:56
|

Профессионал
    
Группа: Участник
Сообщений: 1 620
Регистрация: 22-06-07
Из: Санкт-Петербург, Россия
Пользователь №: 28 634

|
Цитата(alexan300 @ Nov 4 2009, 20:32)  переформулирую ранее заданый вопрос.. стартап универсален для одного типа мк., а для другого мк нужен другои стартап? Почитайте чужой опыт приручения прцессора ARM - http://microsin.ru/content/view/653/1/ - где-то на пункте 34 затрагивается тема startup. У меня программа скомпилированная для 64-го вполне работала в старших моделях - пока не заморачивайтесь. У вас ошбки не из-за этого. {offtopis on}Мне вот не понять, как можно столько времени бится головой об стену? У меня ножкой процессор начал махать где-то через пару часов после того, как я при наличии jtag программатра wiggler и спаянного на макетке просессора начал править под свои нужды startup, шедьший в примерах к yagarto (автор, в свою очередь, жестоко правил под себя соответствующий файл от NutOS). Уже потом я задавался вопросами - а правильно ли я программирую тактовый генератор и тому подобными вопросами (о чём я на этом форуме справшивал и мне конкретно помогли). Ну ведь готовые проекты есть, если не понятно что-то с настройками - оставьте изменение ключиков компилятора и опций проекта на тот момент, когда всё заработает! {offtopis off} Вспомнился баннер в песочнице - "бригада опытных телепатов ответит на все ваши вопросы". Вам ассемблер указал на номера строк. Что за инструкции в этих строках (и предшествующих) находится? Привели бы, не у всех IAR стоит.
Сообщение отредактировал Genadi Zawidowski - Nov 4 2009, 18:00
|
|
|
|
|
Nov 4 2009, 18:06
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(alexan300 @ Nov 4 2009, 20:32)  вот что пишит компилятор.. По всей видимости проект не предназначен для вашей версии ИАРа. Цитата(alexan300 @ Nov 4 2009, 20:32)  я думаю что фаил, на который компилятор ссылается предназнчен для ....64 проца. а у меня ...s256. Поверьте, на данном этапе это совершенно не важно. Отличаются они только обемами флеш и ОЗУ, любая программа для 64-го обязана работать на 256-м.
|
|
|
|
|
Nov 4 2009, 18:19
|
Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 17-03-08
Пользователь №: 35 988

|
PROGRAM ?RESET ;- Begins a program module RSEG INTRAMEND_REMAP ;- Begins a relocatable segment RSEG ICODE:CODE (2) ;- Begins a relocatable segment ; corresponding address is 32-bit aligned PUBLIC __program_start CODE32 ;- Always ARM mode after reset ORG 0 ;- Sets the location counter ; corresponds to the RESET vector address ;------------------------------------------------------------------------------ ;- Exception vectors ;------------------------------------------------------------------------------ ;- These vectors can be read at address 0 or at RAM address вот на эти пункты ссылается... Цитата(Genadi Zawidowski @ Nov 4 2009, 20:56)  У меня программа скомпилированная для 64-го вполне работала в старших моделях - пока не заморачивайтесь. У вас ошбки не из-за этого. Я про это и пишу, что скаченный пример решил просто откомпелировать, и создать бин фаил для прошивки, сначало ничего не меняя...а мне ошибки..бин фаил приложеный в примере успешно все прошил. если бы бинарник успешно создался и прошил бы МК, то следующим шагом я начал б потихоньку что то менять, отслеживая возникающии ошибки, и имея увереность что все библиотеки у меня подключены а также есть рабочии стартап...
Причина редактирования: Нарушение п.3.4 Правил форума.
|
|
|
|
|
Nov 4 2009, 19:21
|
Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 17-03-08
Пользователь №: 35 988

|
Цитата(Genadi Zawidowski @ Nov 4 2009, 21:45)  Есть предложение найти проект соответствующий версии компилятора, что у Вас есть. Или заставить среду создать проект под Ваш процессор, компилирующийся без ошибок (возможно, с пустой функцией main) и вбить в него обльно валяющиеся даже на этом форуме последовательности инициализации порта на вывод и мерцания светодиодом. Тут либо проект компилирующиися без ошибок и бесполезный так как нету стартапа, либо рабочии бинарник, но со стартапом не работающим в моеи среде)) последовательность инициализации порта может и валяется где то, но она сплош а асемблере. луше б эту пследовательность фаиликом отдельным к проекту вешать и не лазить в его нутро до лучших времен. Не подскажите, можно ли ИАРом этот стартап создать для моего процессора. РС. это мои первый опыт знакомства с МК.
|
|
|
|
|
Nov 4 2009, 20:01
|
Профессионал
    
Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007

|
Не бывает проекта без startup'a! Поймите, наконец, что любой процессор должен быть настроен на работу + должны быть выполнены некоторые ритуальные действия, необходимые для работы собственно программы (принято для С/С++ что программа начинается в модуле main()). Масса молодых программистов развращена интегрированными средами и не хочет разобраться в порядке работы с компилятором, линкером и прочими, не очень сложными вещами. Могу сообщить вам страшный секрет - в MS Visual Studio и в Borland Builder'e тоже есть startup модули.
У вас сейчас проблема с ассемблерным файлом. Что так сложно посмотреть, что там IAR в разных версиях такого разного требует в синтаксисе ассемблерных модулей? Ведь действительно, примеров масса. Скорее всего надо будет поправить пару строк.
Кто вам сказал, что настройка аппаратных средств процессора может быть написана только на ассемблере? Я же вам давал ссылку на библиотеки Atmel'a - там примеры почти на все случаи жизни. Все на С, кроме некоторых вещей (таких, какие как раз программируются в startup'e) , которые не написать на языке высокого уровня. Читайте, изучайте. Никто за вас это не сделает.
P.S. А как настроить порт на вывод на С я уже несколько выше писал.
|
|
|
|
|
Nov 4 2009, 20:24
|
Частый гость
 
Группа: Участник
Сообщений: 128
Регистрация: 17-03-08
Пользователь №: 35 988

|
Большое спасибо..попробывал.. программа на мк не запускается.. #define WORKMASK AT91C_PIO_PA8 замениел на 8.. по моему без стратапа ну никак(( компилируется нармально с одним предупреждением. бинарник выходит., в мк записывается, но не выполняется(( Цитата(sergeeff @ Nov 4 2009, 23:01)  Не бывает проекта без startup'a! Поймите, наконец, что любой процессор должен быть настроен на работу + должны быть выполнены некоторые ритуальные действия, необходимые для работы собственно программы (принято для С/С++ что программа начинается в модуле main()). Масса молодых программистов развращена интегрированными средами и не хочет разобраться в порядке работы с компилятором, линкером и прочими, не очень сложными вещами. так примеры то я смотрел и скачал с олимекса.. бинарник работает, но вот проект который этот бинарник создал у производителя, у меня ну никак не хочет компилироваться.. все верно проблемма в ассемблерном коде, туда и кивает компилятор..но лучше былаб проблемма в Си коде..больше шансов разобраться, а асемблер это лес густои ( RSEG INTRAMEND_REMAP ;- Begins a relocatable segment ORG 0 ;- Sets the location counter ну вот что он мне хочет этим сказать??
Причина редактирования: Нарушение п.3.4 Правил форума.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|