EasyManua.ls Logo

Holtek HT66F0175 - Pro�Ram Co�Nter; Stack

Default Icon
207 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Rev. 1.50 26 August 28, 2017 Rev. 1.50 27 August 28, 2017
HT66F0175/HT66F0185
A/D Flash MCU with EEPROM
HT66F0175/HT66F0185
A/D Flash MCU with EEPROM
Stack
ThisisaspecialpartofthememorywhichisusedtosavethecontentsoftheProgramCounter
only.Thestackhasmultiplelevelsandisneitherpartofthedatanorpartoftheprogramspace,
andisneitherreadablenorwriteable.TheactivatedlevelisindexedbytheStackPointer,andis
neitherreadablenorwriteable.Atasubroutinecallorinterruptacknowledgesignal,thecontentsof
theProgramCounterarepushedontothestack.Attheendofasubroutineoraninterruptroutine,
signaledbyareturninstruction,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agwillberecordedbut
theacknowledgesignalwillbeinhibited.WhentheStackPointerisdecremented,byRETorRETI,
theinterruptwillbeserviced.Thisfeaturepreventsstackoverowallowingtheprogrammertouse
thestructuremoreeasily.However,whenthestackisfull,aCALLsubroutineinstructioncanstill
beexecutedwhichwillresultinastackoverow.Precautionsshouldbetakentoavoidsuchcases
whichmightcauseunpredictableprogrambranching.
Ifthestackisoverow,therstProgramCountersaveinthestackwillbelost.
Stack
Pointer
Stack Level 2
Stack Level 1
Stack Level 3
:
:
:
Stack Level 8
Program Memory
Program Counter
Bottom of Stack
Top of Stack
Arithmetic and Logic Unit – ALU
Thearithmetic-logicunitorALUisacriticalareaofthemicrocontrollerthatcarriesoutarithmetic
andlogicoperationsoftheinstructionset.Connectedtothemainmicrocontrollerdatabus,theALU
receivesrelatedinstructioncodesandperformstherequiredarithmeticorlogicaloperationsafter
whichtheresultwillbeplacedinthespeciedregister.AstheseALUcalculationoroperationsmay
resultincarry,borroworotherstatuschanges,thestatusregisterwillbecorrespondinglyupdatedto
reect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

Table of Contents