| 数据搜索系统,热门电子元器件搜索 |
|
HT48R005 数据表(PDF) 13 Page - Holtek Semiconductor Inc |
|
|
|||||||||||||||||||||||||||||
HT48R005 数据表(HTML) 13 Page - Holtek Semiconductor Inc |
|
13 / 62 page ![]() HT48R005/HT46R005 Rev. 1.00 13 November 29, 2011 Program Counter During program execution, the Program Counter is used to keep track of the address of the next instruction to be executed. It is automatically incremented by one each time an instruction is executed except for instructions, such as ²JMP² or ²CALL² that demand a jump to a non-consecutive Program Memory address. Note that the Program Counter width varies with the Program Memory capacity depending upon which device is se- lected. However, it must be noted that only the lower 8 bits, known as the Program Counter Low Register, are directly addressable by user. When executing instructions requiring jumps to non-consecutive addresses such as a jump instruction, a subroutine call, interrupt or reset, etc., the microcontroller manages program control by loading the required address into the Program Counter. For condi- tional skip instructions, once the condition has been met, the next instruction, which has already been fetched during the present instruction execution, is dis- carded and a dummy cycle takes its place while the cor- rect instruction is obtained. Device Program Counter Program Counter High Byte PCL Register HT48R005 HT46R005 PC9~PC8 PCL7~PCL0 The lower byte of the Program Counter, known as the Program Counter Low register or PCL, is available for program control and is a readable and writeable regis- ter. By transferring data directly into this register, a short program jump can be executed directly, however, as only this low byte is available for manipulation, the jumps are limited to the present page of memory, that is 256 locations. When such program jumps are executed it should also be noted that a dummy cycle will be in- serted. The lower byte of the Program Counter is fully accessi- ble under program control. Manipulating the PCL might cause program branching, so an extra cycle is needed to pre-fetch. Further information on the PCL register can be found in the Special Function Register section. Stack This is a special part of the memory which is used to save the contents of the Program Counter only. The stack is neither part of the Data or Program Memory space, and is neither readable nor writeable. The acti- vated level is indexed by the Stack Pointer, SP, and is neither readable nor writeable. At a subroutine call or in- terrupt acknowledge signal, the contents of the Program Counter are pushed onto the stack. At the end of a sub- routine or an interrupt routine, signaled by a return in- struction, RET or RETI, the Program Counter is restored to its previous value from the stack. After a device reset, the Stack Pointer will point to the top of the stack. If the stack is full and an enabled interrupt takes place, the interrupt request flag will be recorded but the ac- knowledge signal will be inhibited. When the Stack Pointer is decremented, by RET or RETI, the interrupt will be serviced. This feature prevents stack overflow al- lowing the programmer to use the structure more easily. However, when the stack is full, a CALL subroutine in- struction can still be executed which will result in a stack overflow. Precautions should be taken to avoid such cases which might cause unpredictable program branching. Arithmetic and Logic Unit - ALU The arithmetic-logic unit or ALU is a critical area of the microcontroller that carries out arithmetic and logic op- erations of the instruction set. Connected to the main microcontroller data bus, the ALU receives related in- struction codes and performs the required arithmetic or logical operations after which the result will be placed in the specified register. As these ALU calculation or oper- ations may result in carry, borrow or other status changes, the status register will be correspondingly up- dated to reflect these changes. The ALU supports the following functions: · Arithmetic operations: ADD, ADDM, ADC, ADCM, SUB, SUBM, SBC, SBCM, DAA · Logic operations: AND, OR, XOR, ANDM, ORM, XORM, CPL, CPLA · Rotation RRA, RR, RRCA, RRC, RLA, RL, RLCA, RLC · Increment and Decrement INCA, INC, DECA, DEC · Branch decision, JMP, SZ, SZA, SNZ, SIZ, SDZ, SIZA, SDZA, CALL, RET, RETI P r o g r a m C o u n t e r S t a c k L e v e l 1 S t a c k L e v e l 2 P r o g r a m M e m o r y T o p o f S t a c k S t a c k P o i n t e r B o t t o m o f S t a c k |
|
链接网址 |
| 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 |