реклама на сайте
подробности

 
 
> IAR 5.11, Объясните pls
Laurica
сообщение May 16 2008, 15:28
Сообщение #1





Группа: Новичок
Сообщений: 9
Регистрация: 17-04-08
Пользователь №: 36 836



Собственно проблема такая - примеры для AT91SAM7A3 компилятся, линкуются и тп. но!, при попытке прогнать их во встроенном симуляторе Cstartup.s с первой точки (reset) улетает куда-то на адрес 6E7C0000, при попытке переписать стартап чтобы он с ресета уходил на lowlevel_init в симуляторе все ОК, однако в железе - мертвяк. все во Flash_DEBUG
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
sKWO
сообщение May 17 2008, 05:41
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 355
Регистрация: 27-03-07
Из: Україна, Чуднів
Пользователь №: 26 530



Цитата(Laurica @ May 16 2008, 18:28) *
Собственно проблема такая - примеры для AT91SAM7A3 компилятся, линкуются и тп. но!, при попытке прогнать их во встроенном симуляторе Cstartup.s с первой точки (reset) улетает куда-то на адрес 6E7C0000, при попытке переписать стартап чтобы он с ресета уходил на lowlevel_init в симуляторе все ОК, однако в железе - мертвяк. все во Flash_DEBUG

Немного непонятно
А файл прошивки должен формироваться в режиме Реалис. Вы так его формировали?
И ещё, где-то было сообщение нащёт версии 5.11 толи В толи А что она вообще не рабочая.


--------------------
нельзя недооценивать предсказуемость глупости
Go to the top of the page
 
+Quote Post
zltigo
сообщение May 17 2008, 06:31
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(sKWO @ May 17 2008, 07:41) *
И ещё, где-то было сообщение нащёт версии 5.11 толи В толи А что она вообще не рабочая.

- А это правда, что Сидоров выиграл машину в лотерею?
- Правда. Только не машину, а тысячу рублей. И не в лотерею, а в преферанс, и не выиграл, а проиграл...


Цитата(Laurica @ May 17 2008, 08:16) *
...все-же хочется работать, а не бороться со средствами разработки... help.gif smile3046.gif

Боритесь только сами с собой. Разработчики коммпилятров ошибаются несораизмеримо реже, нежели их пользователи smile.gif. тем более на переходе в main(). A EWARM 4.xx, Вы конечно взять можете на сайте iar.com, но незачем.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Laurica
сообщение May 17 2008, 10:53
Сообщение #4





Группа: Новичок
Сообщений: 9
Регистрация: 17-04-08
Пользователь №: 36 836



Цитата(zltigo @ May 17 2008, 10:31) *
Боритесь только сами с собой. Разработчики коммпилятров ошибаются несораизмеримо реже, нежели их пользователи smile.gif.

Да я не против бороться, я даже за twak.gif . Но чтобы бороться надо знатьхоть с чем конкретно. Кто нибудь знает где почитать как startup-ы пишуться в 5.11 с примерами/картинками smile.gif. На сайте IAR я посмотрю, но по-моему там уже везде ссылки на 5.10-5.11.
Go to the top of the page
 
+Quote Post
zltigo
сообщение May 17 2008, 14:27
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Laurica @ May 17 2008, 12:53) *
с примерами/картинками smile.gif.

C картинками - это Вам тогда в детский сад надо пойти. А так - базовый вариант startup в комплекте поставки + документация на контроллер/ASM.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Laurica
сообщение May 17 2008, 17:02
Сообщение #6





Группа: Новичок
Сообщений: 9
Регистрация: 17-04-08
Пользователь №: 36 836



Цитата(zltigo @ May 17 2008, 18:27) *
C картинками - это Вам тогда в детский сад надо пойти.


Да староват вроде как для сада уже... Зря вы так, наглядный пример лучше трех талмудов.
Go to the top of the page
 
+Quote Post
zltigo
сообщение May 17 2008, 17:33
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Laurica @ May 17 2008, 19:02) *
Зря вы так, наглядный пример лучше трех талмудов.

Повторяю:
Код
..базовый вариант startup в комплекте поставки..

Более, чем нагляден и достаточно универсален. Разве только без картинок smile.gif.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
Laurica
сообщение May 17 2008, 18:55
Сообщение #8





Группа: Новичок
Сообщений: 9
Регистрация: 17-04-08
Пользователь №: 36 836



Обратился к первоисточнику:
Код
        ARM
__vector:
        ldr  pc,[pc,#+24]            ;; Reset ----------------------------------
__und_handler:                                                                             |
        ldr  pc,[pc,#+24]            ;; Undefined instructions                   |
__swi_handler:                                                                              |
        ldr  pc,[pc,#+24]            ;; Software interrupt (SWI/SVC)        |  
__prefetch_handler:                                                                       |
        ldr  pc,[pc,#+24]            ;; Prefetch abort                              |
__data_handler:                                                                            |
        ldr  pc,[pc,#+24]            ;; Data abort                                   |
        DC32  0xFFFFFFFF             ;; RESERVED                                 |
__irq_handler:                                                                              |
        ldr  pc,[pc,#+24]            ;; IRQ<-----------------------------------
__fiq_handler:                                                                              
        ldr  pc,[pc,#+24]            ;; FIQ                                            
                                                                                                  
        DC32  __iar_program_start                                                  
        DC32  __und_handler
        DC32  __swi_handler
        DC32  __prefetch_handler
        DC32  __data_handler<-------------------------------------- а из IRQ сдесь
        B .
        DC32  IRQ_Handler_Entry
        DC32  FIQ_Handler_Entry


если я правильно понимаю, то вот сдесь
Код
ldr  pc,[pc,#+24]

происходит добавление к текущему адресу числа 24, (смещение на 6 dword) то есть если выполнится первая такая команда, то мы окажемся там, где стрелочка в коде. Так?
Понимаю, что звучит по-дурацки, но... wacko.gif
Go to the top of the page
 
+Quote Post
zltigo
сообщение May 19 2008, 06:23
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



Цитата(Laurica @ May 17 2008, 20:55) *
если я правильно понимаю, то вот сдесь
Код
ldr  pc,[pc,#+24]

происходит добавление к текущему адресу числа 24, (смещение на 6 dword) то есть если выполнится первая такая команда, то мы окажемся там, где стрелочка в коде. Так?

Нет. "Для разобраться" надо просто слегка посмотреть на архитектуру процессора и на то, что значат в ASM скобочки [].
Хотя написано, конечно от балды. Я так не пишу, дабы не заморачивать голову ненужными магическими числами.
Так читабельнее:
Код
                ldr     pc, (?vect_entry + 4*0); 00
                ldr     pc, (?vect_entry + 4*1); 04
                ldr     pc, (?vect_entry + 4*2); 08
                ldr     pc, (?vect_entry + 4*3); 0C
                ldr     pc, (?vect_entry + 4*4); 10
                dc32    0                     ; 14 Summ of other vectors instructions
                ldr     pc, [pc,#-0xFF0]; 18 Jump directly to the address given by the AIC
                                        ; from [0xFFFFF030] Curent 18h +conveyer
                ldr     pc, (?vect_entry + 4*7); 1C
;----------------------------------------------------------------------------
                ORG     0x20
             ; Constant table entries (for ldr pc) will be placed at 0x20
?vect_entry:
                dc32    ?cstartup            ; Reset
                dc32    ?undf_abort    ; UND
                dc32    vPortYieldProcessor; SWI
                dc32    ?pref_abort    ; P_ABT
                dc32    ?data_abort    ; D_ABT
                dc32    0                    ; ARM-reserved vector
                dc32    0                    ; IRQ (Jump directly!)
                dc32    FIQ_ISR_handler; FRQ


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Laurica   IAR 5.11   May 16 2008, 15:28
|- - Laurica   Цитата(sKWO @ May 17 2008, 09:41) Немного...   May 17 2008, 06:16
|- - alexander55   Цитата(Laurica @ May 17 2008, 22:55) Кодl...   May 19 2008, 05:33
||- - Laurica   Цитата(alexander55 @ May 19 2008, 09:33) ...   May 19 2008, 06:14
|- - Laurica   За пример - большое спасибо, так и вправду понятне...   May 19 2008, 06:46
- - Vitaliy_ARM   Столкнулся с такой проблемой. Не могу в этом IAR ...   May 20 2008, 09:03
|- - Сергей Борщ   Цитата(Vitaliy_ARM @ May 20 2008, 12:03) ...   May 20 2008, 09:44
|- - Vitaliy_ARM   Цитата(Сергей Борщ @ May 20 2008, 13:44) ...   May 20 2008, 10:01
- - Vitaliy_ARM   Потихоньку разбираюсь с C++. Не пойму один момент....   May 22 2008, 08:07
- - Сергей Борщ   Цитата(Vitaliy_ARM @ May 22 2008, 11:07) ...   May 22 2008, 08:40
- - Vitaliy_ARM   Цитата(Сергей Борщ @ May 22 2008, 12:40) ...   May 22 2008, 14:29
- - Сергей Борщ   Ах вот оно как! Я чего-то подумал, что TIMER1 ...   May 22 2008, 18:18
- - Vitaliy_ARM   Цитата(Сергей Борщ @ May 22 2008, 22:18) ...   May 23 2008, 09:26
- - Сергей Борщ   Цитата(Vitaliy_ARM @ May 23 2008, 12:26) ...   May 23 2008, 11:27
- - Vitaliy_ARM   Цитата(Сергей Борщ @ May 23 2008, 15:27) ...   May 26 2008, 07:01
- - Сергей Борщ   Цитата(Vitaliy_ARM @ May 26 2008, 10:01) ...   May 26 2008, 08:45
- - Vitaliy_ARM   Цитата(Сергей Борщ @ May 26 2008, 12:45) ...   May 26 2008, 09:20


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:47
Рейтинг@Mail.ru


Страница сгенерированна за 0.01495 секунд с 7
ELECTRONIX ©2004-2016