数据搜索系统,热门电子元器件搜索
  Chinese  ▼
ALLDATASHEETCN.COM

X  

STR720 数据表(PDF) 68 Page - STMicroelectronics

部件名 STR720
功能描述  ARM720T 16/32-BIT MCU WITH 16K RAM, USB, CAN, 3 TIMERS, ADC, 6 COMMUNICATIONS INTERFACES
PDF  401 Pages
Scroll/Zoom Zoom In 100%  Zoom Out
制造商  STMICROELECTRONICS [STMicroelectronics]
网页  http://www.st.com
标志 STMICROELECTRONICS - STMicroelectronics

STR720 数据表(HTML) 68 Page - STMicroelectronics

Back Button STR720 Datasheet HTML 64Page - STMicroelectronics STR720 Datasheet HTML 65Page - STMicroelectronics STR720 Datasheet HTML 66Page - STMicroelectronics STR720 Datasheet HTML 67Page - STMicroelectronics STR720 Datasheet HTML 68Page - STMicroelectronics STR720 Datasheet HTML 69Page - STMicroelectronics STR720 Datasheet HTML 70Page - STMicroelectronics STR720 Datasheet HTML 71Page - STMicroelectronics STR720 Datasheet HTML 72Page - STMicroelectronics Next Button
Zoom Inzoom in Zoom Outzoom out
 68 / 401 page
background image
STR720 - ENHANCED INTERRUPT CONTROLLER (EIC)
68/401
Note
r5 is a generic register among those available, namely r0 up to r12. Since there is no
way to save SPSR directly into the ARM’s stack, the operation is executed in two
steps using r5 as transition help register.
The ISR Body routines.
A Footer routine to exit ISR. It must be:
1) LDMFD sp!,{lr}
Restore lr_sys for the system mode
2) MSR cpsr_c,#0xD2
Disable IRQ, move to IRQ mode
3) Clear pending bit in EIC (using the proper IPRx)
4) LDMFD sp!,{r5}
Restore r5
5) MSR spsr,r5
Restore Status register spsr
6) LDMFD sp!,{r5,lr} Restore status lr_irq and workspace
7) SUBS pc,lr,#4
Return from IRQ and interrupt reenabled
In the following two paragraphs some comments on the code lines introduced above and
some hints useful when realizing subroutines to be invoked by an ISR are reported.
7.6.1
Avoiding LR_sys and r5 registers content loss
A first example refers to a LR_sys content loss problem: it is assumed that an ISR without
instruction 5) in the header routine (and consequently without instruction 1) in the footer
routine) has just started; the following happens:
Instruction 4) is executed (so system mode is entered)
A subroutine is called with a BL instruction and LR_sys now contains the return address
A: the first subroutine instruction should store register LR_sys into the stack (the address
of this instruction is called B)
A higher priority interrupt starts before previous operation could be executed
New ISR stores address B into LR_irq and enters system mode
A new subroutine is called with a BL instruction: LR_sys is loaded with the new return
address C (this overwrites the previous value A!) which is now stored into the stack.
The highest priority ISR ends and address B is restored: now LR_sys value can be put
into the stack but its value has changed to address C (instead of A).
The work-around to avoid such a dangerous situation is to insert line 5) at the end of header
routine and consequently line 1) at the beginning of footer routine.
Similar reasons could lead register r5 to be corrupted. To fix this problem, lines 3) in header
and 4) in footer should be added.
1



Html Pages

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100  ...More


数据表 下载

Go To PDF Page


链接网址



ALLDATASHEET是否为您带来帮助?  [ DONATE ] 

关于 Alldatasheet   |   广告服务   |   联系我们   |   隐私政策   |   数据表链接    |   链接交换   |   制造商名单
All Rights Reserved©Alldatasheet.com


Mirror Sites
English : Alldatasheet.com  |   English : Alldatasheet.net  |   Chinese : Alldatasheetcn.com  |   German : Alldatasheetde.com  |   Japanese : Alldatasheet.jp
Russian : Alldatasheetru.com  |   Korean : Alldatasheet.co.kr  |   Spanish : Alldatasheet.es  |   French : Alldatasheet.fr  |   Italian : Alldatasheetit.com
Portuguese : Alldatasheetpt.com  |   Polish : Alldatasheet.pl  |   Vietnamese : Alldatasheet.vn
Indian : Alldatasheet.in  |   Mexican : Alldatasheet.com.mx  |   British : Alldatasheet.co.uk  |   New Zealand : Alldatasheet.co.nz
Family Site : ic2ic.com  |   icmetro.com