8XC251SA, SB, SP, SQ USER’S MANUAL
A-58
Example:
The on-chip RAM locations 40H, 50H, and 60H contain 01H, 70H, and 15H, respectively.
After executing the following instruction sequence
DJNZ 40H,LABEL1
DJNZ 50H,LABEL2
DJNZ 60H,LABEL
on-chip RAM locations 40H, 50H, and 60H contain 00H, 6FH, and 14H, respectively, and
program execution continues at label LABEL2. (The first jump was not taken because the
result was zero.)
This instruction provides a simple way of executing a program loop a given number of times,
or for adding a moderate time delay (from 2 to 512 machine cycles) with a single instruction.
The instruction sequence,
toggles P1.7 eight times, causing four output pulses to appear at bit 7 of output Port 1. Each
pulse lasts three states: two for DJNZ and one to alter the pin.
Variations
DJNZ dir8,rel
Binary Mode
Source Mode
Not Taken
Taken
Not Taken
Taken
Bytes:
3
3
3
3
States:
3
6
3
6
Hex Code in:
Binary Mode = [Encoding]
Source Mode = [Encoding]
Operation:
DJNZ
(PC)
←
(PC) + 2
(dir8)
←
(dir8) – 1
IF (dir8) > 0 or (dir8) < 0
THEN
(PC)
←
(PC) + rel
DJNZ Rn,rel
Binary Mode
Source Mode
Not Taken
Taken
Not Taken
Taken
Bytes:
2
2
3
3
States:
2 5
3
6
Hex Code in:
Binary Mode = [Encoding]
Source Mode = [A5][Encoding]
TOGGLE:
MOV R2,#8
CPL P1.7
DJNZ R2,TOGGLE
[Encoding]
1 1 0 1
0 1 0 1
direct addr
rel. addr
[Encoding]
1 1 0 1
1 r r r
rel. addr
Summary of Contents for 8XC251SA
Page 2: ......
Page 3: ...May 1996 8XC251SA 8XC251SB 8XC251SP 8XC251SQ Embedded Microcontroller User s Manual...
Page 18: ......
Page 19: ...1 Guide to This Manual...
Page 20: ......
Page 30: ......
Page 31: ...2 Architectural Overview...
Page 32: ......
Page 41: ...3 Address Spaces...
Page 42: ......
Page 63: ...4 Device Configuration...
Page 64: ......
Page 81: ...5 Programming...
Page 82: ......
Page 102: ......
Page 103: ...6 Interrupt System...
Page 104: ......
Page 120: ......
Page 121: ...7 Input Output Ports...
Page 122: ......
Page 132: ......
Page 133: ...8 Timer Counters and Watchdog Timer...
Page 134: ......
Page 153: ...9 Programmable Counter Array...
Page 154: ......
Page 170: ......
Page 171: ...10 Serial I O Port...
Page 172: ......
Page 187: ...11 Minimum Hardware Setup...
Page 188: ......
Page 197: ...12 Special Operating Modes...
Page 198: ......
Page 206: ......
Page 207: ...13 External Memory Interface...
Page 208: ......
Page 239: ...14 Programming and Verifying Nonvolatile Memory...
Page 240: ......
Page 250: ......
Page 251: ...A Instruction Set Reference...
Page 252: ......
Page 390: ......
Page 391: ...B Signal Descriptions...
Page 392: ......
Page 400: ......
Page 401: ...C Registers...
Page 402: ......
Page 436: ......
Page 437: ...Glossary...
Page 438: ......
Page 446: ......
Page 447: ...Index...
Page 448: ......
Page 458: ......