| データシートサーチシステム |
|
HT95R65 データシート(PDF) 39 Page - Holtek Semiconductor Inc |
|
|
|||||||||||||||||||||||||||||
HT95R65 データシート(HTML) 39 Page - Holtek Semiconductor Inc |
|
39 / 82 page ![]() HT95R64/HT95R65 Rev. 1.00 39 March 3, 2010 Interrupts Interrupts are an important part of any microcontroller system. When an external event or an internal function such as a Timer/Event Counter requires microcontroller attention, their corresponding interrupt will enforce a temporary suspension of the main program allowing the microcontroller to direct attention to their respective needs. The external interrupt is controlled by the action of the external INT, PINT pins, while the internal inter- rupt are controlled by Timer/Event Counter 0 or 1 over- flow, a Real Time Clock overflow, a DTMF reciever valid character reception, an FSK decoder packet data re- ception or a multifunction interrupt. Interrupt Register Overall interrupt control, which means interrupt enabling and request flag setting, is controlled by two interrupt control registers, INTC0 and INTC1, located in the Data Memory. By controlling the appropriate enable bits in this register each individual interrupt can be enabled or disabled. Also when an interrupt occurs, the corre- sponding request flag will be set by the microcontroller. The global enable flag if cleared to zero will disable all interrupts. Interrupt Operation A Timer/Event Counter 0 or 1 overflow, a Real Time Clock overflow, a reception of a valid DTMF character, a FSK packet data, a rising edge on PC7 or a falling edge on INT/PC0/PC5 will all generate an interrupt request by setting their corresponding request flag, if their ap- propriate interrupt enable bit is set. When this happens, the Program Counter, which stores the address of the next instruction to be executed, will be transferred onto the stack. The Program Counter will then be loaded with a new address which will be the value of the correspond- ing interrupt vector. The microcontroller will then fetch its next instruction from this interrupt vector. The instruc- tion at this vector will usually be a JMP statement which will take program execution to another section of pro- gram which is known as the interrupt service routine. Here is located the code to control the appropriate inter- rupt. The interrupt service routine must be terminated with a RETI statement, which retrieves the original Pro- gram Counter address from the stack and allows the microcontroller to continue with normal execution at the point where the interrupt occurred. The various interrupt enable bits, together with their as- sociated request flags, are shown in the accompanying diagram with their order of priority. Once an interrupt subroutine is serviced, all the other in- terrupts will be blocked, as the EMI bit will be cleared au- tomatically. This will prevent any further interrupt nesting from occurring. However, if other interrupt requests oc- cur during this interval, although the interrupt will not be immediately serviced, the request flag will still be re- corded. If an interrupt requires immediate servicing while the program is already in another interrupt service routine, the EMI bit should be set after entering the rou- tine, to allow interrupt nesting. If the stack is full, the in- terrupt request will not be acknowledged, even if the related interrupt is enabled, until the Stack Pointer is decremented. If immediate service is desired, the stack must be prevented from becoming full. S I M C T L 0 R e g i s t e r N o t i m p l e m e n t e d , r e a d a s ' 0 " S P I / I 2 C O n / O f c o n t r o l 1 : e n a b l e 0 : d i s a b l e P C K c l o c k s e l e c t P e r i p h e r a l c l o c k e n a b l e 1 : c l o c k a n d o u t p u t e n a b l e 0 : c l o c k a n d o u t p u t d i s a b l e S P I M a s t e r / S l a v e a n d c l o c k c o n t r o l - d e s c r i b e d e l s e w h o s e b 0 C l o c k S o u r c e f S Y S f S Y S / 4 f S Y S / 8 T i m e r 2 o u t p u t / 2 P C K P S C 1 0 0 1 1 P C K P S C 0 0 1 0 1 S I M E N b 7 S I M 1 S I M 0 S I M 2 P C K E N P C K P S C 1 P C K P S C 0 Peripheral Clock Output Control - SIMCTL0 |
|
リンク URL |
| ALLDATASHEETはお客様のビジネスに役立ちますか? [ DONATE ] |
Alldatasheetは | 広告 | お問い合わせ | プライバシーポリシー | データシートへのリンク | リンク交換 | メーカーリスト All Rights Reserved©Alldatasheet.com |
| 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 |