EasyManua.ls Logo

Holtek BS82B12A-3 - Special Vecto�S; Look-�P Table

Holtek BS82B12A-3
168 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.20 28 January 23, 2015 Rev. 1.20 29 January 23, 2015
BS82B12A-3/BS82C16A-3/BS82D20A-3
Touch Key 8-Bit Flash MCU with LED/LCD Driver
BS82B12A-3/BS82C16A-3/BS82D20A-3
Touch Key 8-Bit Flash MCU with LED/LCD Driver
Special Vectors
WithintheProgramMemory,certainlocationsarereservedfortheresetandinterrupts.Thelocation
0000Hisreservedforusebythedeviceresetforprograminitialisation.Afteradeviceresetis
initiated,theprogramwilljumptothislocationandbeginexecution.
Look-up Table
AnylocationwithintheProgramMemorycanbedenedasalook-uptablewhereprogrammerscan
storexeddata.Tousethelook-uptable,thetablepointermustrstbesetupbyplacingtheaddress
ofthelookupdatatoberetrievedinthetablepointerregister,TBLPandTBHP.Theseregisters
denethetotaladdressofthelook-uptable.
Aftersettingupthetablepointerpair,thetabledatacanberetrievedfromtheProgramMemory
usingthe"TABRD[m]"or"TABRDL[m]"instructions respectively.Whentheinstructionis
executed,thelowerordertablebytefromtheProgramMemorywillbetransferredtotheuser
denedDataMemoryregister[m]asspeciedintheinstruction.Thehigherordertabledatabyte
fromtheProgramMemorywillbetransferredtotheTBLHspecialregister.Anyunusedbitsinthis
transferredhigherorderbytewillbereadas"0".
Theaccompanyingdiagramillustratestheaddressingdataowofthelook-uptable.
Register T BLH
User S electe d
Register
High B yteLow B yte
TBLP R egis te r
Data
Address
16 b its
 
Last p age o r
TBHP R egister
Table Program Example
Thefollowingexampleshowshowthetablepointerandtabledataisdenedandretrievedfromthe
microcontroller.ThisexampleusesrawtabledatalocatedintheProgramMemorywhichisstored
thereusingtheORGstatement.ThevalueatthisORGstatementis"0700H"whichreferstothe
startaddressofthelastpagewithinthe2KwordsProgramMemoryoftheBS82B12A-3.Thetable
pointerissetupheretohaveaninitialvalueof"06H".Thiswillensurethattherstdatareadfrom
thedatatablewillbeattheProgramMemoryaddress"0706H"or6locationsafterthestartofthe
lastpage.Notethatthevalueforthetablepointerisreferencedtotherstaddressofthespecic
pageifthe"TABRD[m]"instructionisbeingused.Thehighbyteofthetabledatawhichinthis
caseisequaltozerowillbetransferredtotheTBLHregisterautomaticallywhenthe"TABRD[m]"
instructionisexecuted.
BecausetheTBLHregisterisaread-onlyregisterandcannotberestored,careshouldbetaken
toensureitsprotectionifboththemainroutineandInterruptServiceRoutineusetableread
instructions.Ifusingthetablereadinstructions,theInterruptServiceRoutinesmaychangethe
valueoftheTBLHandsubsequentlycauseerrorsifusedagainbythemainroutine.Asaruleitis
recommendedthatsimultaneoususeofthetablereadinstructionsshouldbeavoided.However,in
situationswheresimultaneoususecannotbeavoided,theinterruptsshouldbedisabledpriortothe
executionofanymainroutinetable-readinstructions.Notethatalltablerelatedinstructionsrequire
twoinstructioncyclestocompletetheiroperation.

Table of Contents

Related product manuals