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

 
 
> SAM3S и таблица векторов, как подцепить обработчик прерываний?
Liseev
сообщение Dec 18 2012, 11:28
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 99
Регистрация: 27-10-07
Из: СПб
Пользователь №: 31 797



Нужно отлавливать прерывания по UART RX
Контроллер UART сконфигурировал
Контроллер NVIC сконфигурировал
Осталось прописать адрес обработчика в таблицу векторов. Чойто не пойму как это сделать?
Компилятор IAR
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vladimir_orl
сообщение Jan 10 2013, 11:09
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 191
Регистрация: 18-09-12
Из: Орёл
Пользователь №: 73 591



Вот стартап

; startup.s


.ref start
.ref undef
.ref swi
.ref pabt
.ref dabt
.ref irq
.ref fiq


.sect ".ivt"




reset: b start
undef: b undef
swi: b swi
pabt: b pabt
dabt: b dabt
nop
irq: b irq
fiq: b fiq

.text



Вот вывод:


**** Build of configuration Debug for project asm2 ****

C:\ti\ccsv5\utils\bin\gmake -k all
'Building file: ../main.c'
'Invoking: ARM Compiler'
"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" -mv5e --code_state=32 --abi=eabi -me -g --include_path="C:/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --define=dm368 --diag_warning=225 --display_error_number -k --asm_listing --preproc_with_compile --preproc_dependency="main.pp" "../main.c"
"../main.c", line 12: warning #262-D: explicit type is missing ("int" assumed)
"../main.c", line 38: warning #225-D: function declared implicitly
"../main.c", line 78: warning #112-D: statement is unreachable
"../main.c", line 111: warning #112-D: statement is unreachable
"../main.c", line 81: warning #179-D: label "loop" was declared but never referenced
'Finished building: ../main.c'
' '
'Building file: ../startup.s'
'Invoking: ARM Compiler'
"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" -mv5e --code_state=32 --abi=eabi -me -g --include_path="C:/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --define=dm368 --diag_warning=225 --display_error_number -k --asm_listing --preproc_with_compile --preproc_dependency="startup.pp" "../startup.s"
'Finished building: ../startup.s'
' '
'Building target: asm2.out'
'Invoking: ARM Linker'
"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/bin/cl470" -mv5e --code_state=32 --abi=eabi -me -g --define=dm368 --diag_warning=225 --display_error_number -k --asm_listing -z --stack_size=0x800 -m"asm2.map" --heap_size=0x800 -i"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/lib" -i"C:/ti/ccsv5/tools/compiler/tms470_4.9.5/include" --reread_libs --warn_sections --display_error_number --rom_model -o "asm2.out" "./startup.obj" "./main.obj" "./evmdm368_i2c.obj" "./evmdm368_gpio.obj" "./evmdm368_eeprom.obj" "./evmdm368.obj" -l"libc.a" "../DM368.cmd"
<Linking>
'Finished building target: asm2.out'
' '

**** Build Finished ****


Насколько я понял, линковщик просто не видит асм файл, хотя он добавлен в проект. То есть там ни в карте памяти ни в бинарнике этих джампов нет.

Но собирает без ошибок, просто не добавляет эту таблицу переходов
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 16:44
Рейтинг@Mail.ru


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