Sei sulla pagina 1di 140

www.Aghazeh.

com

!"#
$

$ ##' %&

! "# $ $ %

)* #+ , - . / 01 2 % ( ( %&'

%7 .4 5 .6 3
8 01 9: " 2 ; %& +
2 ; . .< = > ?: . @ 1 A
E . B %C @D

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

GHII F

! "#
$% & '
& ' (
)& ' )
* +, (
4ALU3-./ +0 1 2 )
4IR3 "67 8 90 :; 8 5
/ = :/ 2 <
>
? 2
ROM (
EPROM ( (
E(PROM ) (
RAM 5 (
$ /% @ 90 RAM < (
> 0
A%
A% > B % C )
(DB) D )
4ALU3 -./ +0 1 2 ( )
E 6F :; 8 ) )
4Acc3 8 G H 5 )
:/ / = 2 < )
4IR3 "67 8 90 :; 8 I )
(PC) ' D '8 K J )
(AB) 8 H L )
CPU M "# ( )
N "67 8 90 O / P7 Q A% ! "# ) )
R 5 )
>8 NS
LUL< 8 ;0 T !
LUL< % T 5
ADJ ADU 5
AL A < ( 5
Error! Objects cannot be created from editing field codes. ) 5
READY 5 5

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

HOLD < 5
HLDA I 5
INTR J 5
INTA L 5
(JW<, IW<) RST<W< V 5
TRAP U 5
RESET IN 5
RESET OUT ( 5
X ,X( ) 5
CLK OUT 5 5
SID < 5
R ( 5
LUL< 8 8 H & ' ) 5
Y 9; Z 8 H X 8 ) 5
Z +, Z 8 H X 8 ( ) 5
O8 Z 8 H X 8 ) ) 5
Y 9; [\ Z 8 H X 8 5 ) 5
:9; Z 8 H X 8 < ) 5
LUL< 8 ;% ' ' 5 5
D 9' 5 5
Z +0 1 O 8 90 D B ( 5 5
Z ./ * 8 90 D B ) 5 5
X T * 8 90 D B 5 5 5
Stack ^ :/_ I]O * 8 90 D B < 5 5
`Q < 5
/ = I 5
' a 0 I 5
b ' ! 0 ( I 5
' c "67 8 90 $% / = ) I 5
LUL< +' O IC < 5
L)<< LJ<< IC I 5
L <I L << IC ( I 5
4PPI3 L(<< ) I 5
d`M e!0 J 5
T 8 :/ L 5
"/ 8 g S f ' V 5
+h = 8 % 8H E , V 5
Yi/T
LU< 7:/ !
LU< % T 7 j 08 <
`M D B8 <
$% D B8 ( <

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

D B8 ) <
0 D B8 5 <
PSEN < <
ALE I <
EA J <
RST L <
= 0 0 ' O O 8 V <
%kl *G U <
? 2 = 0 ( <
D8 ?/ m RAM ( <
%kT 8 H E RAM ( ( <
* +, $' ) ( <
n 8 * +, 5 ( <
8 D ? 2 90 ) <
8 H X 8 5 <
* +, 8 H 5 <
Y 9; 8 H ( 5 <
Y 9; [\ 8 H ) 5 <
8 8 H 5 5 <
+;' 8 H < 5 <
- . 8 H I 5 <
'G o 8 H J 5 <
8 p% ' 8 H L 5 <
"67 8 90 & ' < <
./ "67 8 90 ( < <
RAM ) < <
8 RAM ( ) < <
i9; ) ) < <
q O N "67 8 90 5 < <
' r 6s' "67 8 90 < < <
t I <
t E7 2 * +, I <
t :/_ * +, ( I <
t :/_ AQ u8 _ & J <
% 0 D B8 * "# L <
E7 2 L <
( E7 2 ( L <
) E7 2 ) L <
`Q L <
`Q = 0 L <
`Q 6 [\ 6 ( L <
`Q > ) L <
`Q O 5 L <
Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

`Q YS T O N9 < L <
`Q O 8 I L <
Ys
AVR D // !
I
/v 0 % T ( I
AVR 8 * ' a ) I
CPU ) I
? 2 ( ) I
' ? 2 ( ) I
:/_ O= ' D 8 * 8 ) ) I
4I/O3 w' O 2 5 ) I
Y9`
DMA
DMA > N` J
L()J DMA O %8 ' ( J
L()J Z :/_ O * +, ) J
* +, ) J
E 6F * +, ( ) J
* +, ) ) J
x T @ * +, 5 ) J
x T > y * +, < ) J
Z M _ z T]EQ * +, I ) J
x T * +, _ z T J ) J

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

; %C

' 9|0H 8 D |d9 *G % O { IU % 8


€ || • || Z||0 /N 8 }% ||' O~ ||7 /! O[||B !||
•|0 > Z' N ‚/ % T = pT Z" 8 9;% '
D | & | | Z' "_ O N vs% =H 8 /"s' 0
€ Z { ƒ G x+ Q8 e% v% Y Y u
|`' u8 | 8 B p% ' * 8 VIL 0 8
O |% E | | % S[ Z' | "_ Z M 8 kB % T =
E $% VIV 0 8 € ' c p 0 9/% > 0
n | Z0 OH $% X8 `0 …H „r ;2 ^ D '= 0 }T ~
O D '= T $% % O † ;2 ^ O
e% | | 9 0 $% O 8 ‡ 8 NS 4CPU3
e% € % B 7 9 5UUU 9/% O IC D ' P
‡ | Es Z0 OH „ VJ( 0 8 T ' 8

Integrated Electronics

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

/S VJU 8 LUL< „ LULU H = pT „ LUUL


€ F # 8 = ‡ I 8 ;0 T !
E||0 9|| || = || || ||ˆ e||%
| |T 4> | 9/T3‡ | I5 ‡ )( O 8 ;0 T !
O | | ! |‰ € |' 9| kB M #
O8 > Š O ' Z 9 E *8 M 7
' | Z| O |%8 | ' ^| = % „n
VL(8 |!/% | „ /9| ' 8 D +' 7 E Q
O | X & 8 ^7 O IBM E
8 O |' 8 ' O | xN D= c Z ‹
Z |‹ O O E Q O~ 7 /! 8 / =
€Y 9;

D '8 H B

||%8 O~ ||7 /! Z' ||+ Z||08 || ||# "Πe||%


(
„Z|08 •|+/ $|% /# = T Z D '= T
€E0 D 9 B ?' 8 ^ = 8 9 0 8 O
$|% O8 | E‹|0 Ž | Y|N ur 9 e% 8 y
E‹|0 :/| 8 8 > ' x ' ! Y9; 0
€E0 8
„ | Z| ?2{ # "Œ e% 8 •'H D "# E";Q
8 9 |0 8 D | ' r 9 /S A 9‘ O x• =

Personal Computer(PC)
Microprocessors

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z|08 # "Œ e% 8 €E0 D O8 H B ^ =


‡ Es 8 ;0 T ! u ’A% ’‡ Es 8 ;0 T !
| N|9' 8 LU< ‡ | Es| 7:/ ! „ LUL<
8 |9+7 €“= |T Z| AVR |7:/ ! 8 9
$|% |M |!'H 7 u ’A% ’8 ;0 T ! 8
8 | E‹0 „E0 7 Z% / H O[B % O
= || ||6 8 || € || Z||c ||9 T Z' ||/S
/9;| |9/% E | E 0 Z6Q O 8 ;0 T !
Z| O8 H % € '[B 8 Q 08 8 ` 8 .
D `90 O CPU 3 0 0 8 9 0 _ % c
> |v/† O |6 O | | 8 E0 4 0 = D //_
„8 |?/ ^|m u %H Z 8 I/O ? 2
e|% 8 u^/|•m €“= T Z ” 6 8
(
O I/O O N| 8 LUL< D•% + 9sT O Z0OH 8
`; ” 6 8 9 u^/•m €E T Y O 0
€“= T Z AVR DMA % T O8

J KL

=
6.%P ' O1 M 3 N

)
|! "# / = 9 e% 8
(
| |! |97 2 0 +Q = w7 . „ …H – dM

Microcontrollers
Peripheral
Bus

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

)
€ Y / H v% !% E B /S O Z
n |9 4CPU3 Z M O % 0 e%
€ 8

@ R = GQG

| 9' O | 4Y |03•| # "Œ $% Z 8


€ A% 6 D '[B $% D D //_ 08 $% ^ D
Z_:s| | v% |a% | |_ 8 q /v 0 — . G "6
| €Y ' Z @% 8 H 9 kB Y O ˜ '8
8 D[\ :/ 8 H „D P e%
= Z ™ ; % „P0 / Z2 o $% 8 €“8 HZ E0
ac O8 k|B8 O | , „ % ' 8 E ' +Q
| ' •% |0 Z| ./ O | p7 T = Z ' !6' „dc
€ ' | |9 B |?' 8 % O= O O ^
+/ b T M8 8 e% 8 ŠH = uq
™ ;| e|% D8 8 š› = uY 9; ' M /# $ ' :!7
€Y / Z ?' œ M

J S. GQGQG

D |'[B $|% /v |0 D /90 $% „ & ' O 8


= D `9|
|0 | 8 ;|
|0 T ! | | ŠH = €“8
Z |' % Z% |' |' D 9 05 MOS O•7 /a
D |B Z| D # Q $% /# „E0 1 8 ;

Timing
Tri State
Gate
Metal Oxyde Semiconductor

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

:s 8 ;0 T ! Z ' % Z% ' = O 8 8
€E|0 >=G | | +' Z M 8 D '[B % „
= |/ "o O Z 8 • ž „ = 8 ?/
€E0 O 8 96 Z ./ Ÿ .0 9'
€ | Z| s' 8 9 & ' /S !
(
5LS(55 J5LS(5< |/' TTL ¡ ' = Z% Z0 OH
Es Z 0 OH 8 '8 8 [B +/ e%
| | „D /9|0 N/ ' G "6 € 8
8 e% %= „E0 / 0 ' D '[B O 8
|'[v 8 Q O 8 /' Z 8 Z% 8 8
) x• 8 0 H e% 8 8 € / Z %= 8 ;
€E0 D D – F :s

Buffer
Transistor Transistor Logic.

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

@% & ' a
8 | |97 2 0 Z% ' ( ! O > y
„Z| ./ U E7 2 D {# }6 e% „ '8
> 0 E7 2 e% € / 9 /' Z Y > 0 E7 2 $%
€E|0 = | 8 | |% G | p' | E|7 2 •Q 8
•| $|% D /90 /S / Z D= 97 2 0 O
8 Z|!% |¢ | D /9|0 > y B € // :/ 8
€ %HZc x T Z £ '[B 8 Q G p' E7 2
8 |Q D `9|0 8 > 0 & ' 8 8 E M e%
€ [BZ

U S. TQGQG

/v |0 ¡ |'[B $|% D /90 /S „( & ' 8


TTL O | E|
| B | | Z| c 8 | & | ' e|
|% €“8
s|' 8 | e|% | 7 ( !| €E 0 8 ' 90

High Impedance

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z| ./ 8 / Z D /90 ‡Q € Z
^|m q € |%HZc x T q ! „ / 8 Q • O 8 Z' ;!%
T Z"N+ E 6F „ U Z!% Z!% Z
Z| | ‡ B = 8 ! !/% / Z
E| B | U Z ‡ B 8 O %= %
> |' | |0 | & ' „E 6F e% € // + Z P 0H
€ 8

& ' ( a
|0 O | E B = D `90 !s e% 2 O D 8 $%
N|/ | 6 €E0 D /90 /# 97 2
€ | Z Y9 0 & ' „ = 8 D /90 $%
8 | $|% 8 H Z| | | 2 D 8 e% O 7 ;
| |6 = |/ "o O E0 O F Z ./
€ D 8 % = 8 D /90 $% •
e|%8 3 = | 8 |9! = D `90 v% 2 D 8
(
„ | D /9|0 Z| Ÿ o e% 8 €E0 ) ! 4=
| & +| /' Z N/% }6%€E0 = 8 9!
„ /s|! `|M 8 ~ 97 „ Z 8 9;% '

Tri State Output


Open Collector(Open Drain)

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

E| $|% | „ | | ~ |97 ' 08 O q


„E0 e% = q ‰ €“8 ¤ 92 Z 8 4~ 97 3 G
€E0 J5U = 8 9! NAND
| ^ 6 Zc E0 e% & ' e% P #
P| e|% | €E0 D `M 8 D /90 >
| |' • 8 4 | Z 3 (E 6F E0 8 +Œ 8 ;0 T
„X 8 e||% „ || 8 D ||// ||6 ||0 ||' 9
€ 8 > ' ) Z0 T m

& |' ) a
= 8 9a _ O D= 8 (
|S |' CPU E;| ' >=G *G 2 O8 ; 8 9+7
5
| 8 ?9' E7 2 {‰ „E0 D `M 8 O 0
8 | D E# 0 ' Zc / ? 2 $% œ o =
e|% 8 € | Z E0 8 8 H Y 8 CPU O F
Y|N D | 8 |?9' O |F |? 2 > !/% E7 2
€E; '

(Voltage) Pull Up (Resistor)


Status
Polling
Wait(State)

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

U. S. HQGQG

e% /S H O 8 E0 9N $% „)& '
€ 8 8 Q D '[B /S D /90
Y9;|| 0 @||% 8 D || „ ||‰ e%:7 ||9
$|% = D 8 |+# EN 5 ! €E0 O8 ;0 T !
| | / | € s' 8 CPU O 8 0
> |y |97 2 |0 O | E| B *8 |M | D /90 > y
(
D s' D O ˜{ ƒ £7 *8 M D '[B
€ ' D
€ | e| 8 % D /90 97 2 0 > 7
8 8 | :/| „D /90 $% % N/ = 8
D |'[B b| £|7 > 7 E0 e!¥ u 9 E0
Y 9 % % O S € +' –F /S
8 |Q | O 8 Z | * | O | D E0 e%
O 8 8 90 $% O > v/ u ‰ /# € [BZ
O 8 M ! 0 8

Data Bus
Latch

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

EN 5 a
9N @% O 8 D 8 +#
$% O 2 3 € 8 IN 8 90 ¦H D
4 D Ÿ §` O 6 O 8 8 90
Z ]O 8 •%8 8 H e% O 6 ^ ! 0 8
D 6 O 8 0 > 0 ^ ! 0 8 € 8 8
N/ ^ ! 0 S € Z 8 Q O 8 8 D
% D '[B „ s Z o E# 0 ! 0 ¨/T % 8 NS
8 Q £7 8 6% 0 8 D E0 x9 ' Z6Q

% D '[B $% 8 .S ©E0 ^m ) Z M 7 ;
ªE0 D 08 x9 ' "N Z D /90
8 H Z% sB O N 8 0 e% «0 T
§` D /%H 8 8 N 8 e% „ BZ :/
•Q 8 €E0 D 0 ” 2 D % q © % Y
• B ¬ E0 8 Q e% = e% ! "# / =
O 8 8 H „E0 6 :/ I/O '
8 Q O 8 8 D E0 E ' „ 8 8 Q 8 H
€Y / 6 8 97 2 0 D /90 % Y
8 8 X 8 < ! €E0 = ' Y = 9+7
— . 97 2 0 E B • O € Z s'
6 O - /v 0 €E0 >=G Œ WRITE READ „Enable
€E B 8 ;0 T ! :/ = % 8 D //

Decoding

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 €EN < a
Z 6 D= 8 @% • =
I ! 8 e% 9 & ' = Z§6
e% O J5LS(5< e% = €E0 D D s'
0 ¤ = Es Z0OH e% S ©E0 P0 / 8 ; 8
€ 8 EN r ‹9' Enable O Œ :/ — . 97 2

Direction

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

O D '[B D /90 I a
8 ;0 T a D _ O 9
— . O „ J5LS)J) £7 8 8 ^/•m
€E0 >=G ' D p! T‡7 LUL< 8 D 8 H
& ' e% 8 8 „ J5LS)J) O8 9 > 3 ')J)
$% ¦{ ƒ Es „4 Y – F :s x% c
E0 $% (ALE /v 0 ‡Q € 8 G 6 C:s O 8
€ / Z ® 8 8 H ^% T + x• ADJ ADU — .
LUL< +Q = Z G O J5LS)J5 £7 '
$% „£7 €E0 P0 / LED /' Z% Z
')J) € Z G p' s% N „OE
L O 8 /# H % T L „E0 % T (U O 8
I e% D {# € ' D A% 6 Z /# % T
B _ 8 ' )OE O 8 % T $% u % T
Z 9 •"9Œ 8 Z 8 £7 O 8 6
€ 8Z 8 / E7 2 Z +' 9_ B /
E {# _ E0 Clock O 8 u IC e% v% % T
Y9; 0 E# 0 uCLK € Z D x% c CLK O8 9
Z6 p7 T e% €E0 4E , p' _ Z6 p7 T3
a 8 % T e% € Z 7 9;% $% •0
5
E0 –.0 ;2 uIC e% € ' D D s' J
O 8 IC uE0 9_ CLK _ Z' = * o 8 }6%
uE0 ')J) s ')J5 € /_Z 9/ Z 8
<
E0 +7 ;2 uIC e% _ E0 e% 8 x ` N/

Active High
Address Latch Enable
Output Enable
Level Triggered
Edge Triggered

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

/v 0 8Z @% `M = uCLK _ Z' = }6%


L a 8 % T e% € Z 9/ Z O 8
€ ' D D s'
IC O8 9 E {# O8 kv ' E";Q e% 8
s' ')J) 8 J5LS)J) S {
¯‰ €Y / Z O D8
' Z Y ; Z` 9‘ O D B IC ª / Z
Z% IC D B Y O IC € [BZ 8 Q D B $% 8 IC
q E0 Y + s ' œ 2 /S /9;
8 a O e% / €E0 H œ 28 * `
Z% IC D B 8 {
¯‰ ©“8 kBZ (') E {# „ s œ 2
J5LS u J5L +Q = Z% N ' u ' Z & J5 _
_ Z D % €€€ J5S uJ5AC uJ5C uJ5Hu
€ /9; ‡ M œ 6 > _
e%:7 9 = Z!% J5LS „– F /6
E0 ^% T 6 _ E0 e% o X L „E0 N B
X S Z 6 [\ @% 6 `M }6%
H ! "# E# 0 }6% E0 Shot key _ E0 e% o
e% o J5C E0 High power uJ5H % €E0G
€E0 D D `90 IC e% 8 CMOS = _ E0
J5HC UU Y ;% / a/% O ¢ v% q ‰ /#
€ €€€ ' UU ¬ Y ;% 'Z

Active Low

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

J5LS)J) 0 H J !
J5LS)J5 0 H L !

E0 8 T L ) 8 $%(J5LS )L) ’ )L^/•m


O 8 0 € / Z ^% T 6 u8 e% O Z
High % E) / Low % E( E 8 Enable
v ‹9' v% % T ) € 6 IC
€ ' D ^ 6 Z /# Y % T L /9;
6 D // ' O 8 0 = w •0 N
OH C B uA O % T D // 6 O O 8 € ' Z
8 Z O 8 !% ' Z "# Z0
D // 6 ' Z N e% € Z 6 ?'
e% / € M €€€ ROM „RAM ‰ $%
€Y / 6 [\ % 6 8 L Y ' Z IC e%
Y v ‹9' O % T 8 U U # B {
¯‰

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z L O P ^m Z 6 ( Z
€E0 V ! - . IC e% $ K € v%

!
J5ALS )L 0 H V
• L 6.Q e% €E0 (J5LS(55)’(55 v% 8
„U uE0 97 2 0 H Z € Z G 6
L O 8 % T L 6.Q e% © 4Z 3 G p' E7 2
O % T € 8 Enable % T ( Z % T
O % T $% D B u ' Z O / Y ; D B
O 8 6 B E0 AU,A ,A(,A)
' B ' Z ° 4YU-Y)3 N 8 4AU-A)3
€ ' 8Z Z E7 2 4YU-Y)3 Z
B E0 A5,A<,AI,AJ O % T D B
4Y5-YJ3 N 8 4A5-AJ3 O 8 6
Z E7 2 4Y5-YJ3 Z ' B ' Z °
€ Z D s U ! 8 e% € ' 8Z
e% „E0 J5LS(55 /' $% Y J5LS(5<
€E0 o * `

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

U !
J5ALS(55 0 H

* +, (
* +, e% /S O 8 G "6 8 ;0 T ! m
‡ Es D8 ?/ m :; 8 x LUL< {‰ € /9;
O 8 ^/•m € 8 L H „E „D „C „B O > '
4D8 +' % (8 G H3 A Z!% „E0 n :; 8
)
‡ Es ' e% 4YS T :; 83 F :; 8 O v%
PC SP O N ' ‡ I :; 8 ' € /9;
5
I3 H o E0 ' D '8 K PC :; 8 € 8
' D '8 K €E0 8 B= 0 LUL< 8 H 4E
8 §2 ? 2 = CPU 8 O 6 "67 8 90 8 H
^ LU< 8 8 §Q e% € 8 Z v' „ / Z
<
D ' 9sT BD8 SP :; 8 €E0 8 o ^m Y A%
8 8 ‡ I 8 H $% ' :; 8 e% € Z
? 2 = ZM x• 8 H e% q „ 8 Z v'
Z 9sT x• = € / Z D8 9sT > 0

Register
Accumulator
Flag Register
Program counter
Stack Pointer

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z0OH = ¤8 :; 8 O 1 ' +% 6 /#
±`2 „ 9sT A% 6 Z M `; 9+7 € D `90
M 4^ 03 ' %= $% Z v/ EsB 8 H
€ Z „ Z D =
:; 8 e% LUL< 8 „ !/% F :; 8 8 8 – F
8 ©E0 D s' A% 6 E 0 E 6F YS T ¨/T
/9; ‡ O ˜{ ƒ YS T e% •Q
Z§6 Z E7 2 8 € / `M % $% /' Z
[, …H = Z§6 % > y LUL< O "67 8 90
[, > £ ' "67 8 90 = Z§6 8
¬= / 8 +# YS T ¨/T e% € '8 '
7 Z ' YQ8 „•j 8 B ¬ ( 4Z ' YQ83 CY
4borrow3 ZF Q YQ8 > 9; -% ` 8 90 O %
€ Z reset *8 M e% [\ 8 set YS T e%
¤ = "# $% M 2 O N9 6 B ¬ )4 = 3 P
€ Z reset *8 M e% [\ 8 set YS T e%
š# Z "67 8 90 B ¬ 54Z!" Z ' YQ83 AC
[\ 8 set E e% „ 5 ) E = Z ' YQ8 ²
€ reset *8 M e%
`M 8 "67 8 90 $% i 9' B ¬ <4 `M3 Z
€ Z reset *8 M e% [\ 8 set YS T e%
"# $% M 2 E e% X=8 B ¬ I4E {#3 S
€ Z reset *8 M [\ 8 set YS T e% „

Subroutine
Carry
Parity
Auxiliary Carry
Zero
Sign

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 E0 s ' A% LU< 8 8 E 6F
€ D – F O

4 3-./ +0 1 2 )
/% B-./ +0 1 2 H _ ALU 2
pT © Temp :; 8 O v% 8 G H Z!% [BZ O 8
q:/_ O % T -% o = _3 D 90 "# > Š =
% ˆ 8 Z 4 Z D 8 90 2 e%
Z ./ "# Y Z +0 1 "# Y 2 e% € Z
= Za% „ (U # •j O {
¯‰ € Z > Š 8
v% # Z D[ • 8 G _H 8 # e%
8 +0 1 = pT u %Z 9' Temp Za"_ :; 8
€ [BZ 8 Q ) # ALU Z

(
4 3 "67 8 90 :; 8 5

O /% # $% *8 Z fetch _ O8 90
E";Q e% 8 € ' ˆ % # e% „E0
:/ 2 2 p 0 Z !% 9 8 90
)
2 :/_ O % T Z D 90 / =
6 [\ % 6 Z CPU 8 _ O8 90 /
€ '

Arithmetic Logic Unit


Instruction Register
Timing And Control

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

/ = :/ 2 <
€ 8 D N# 8 Y9; 0 :/_ „ 2 e%
0 €E0 IR Z E# 0 p7 T „x• e% O O 8
= w0 / O /v 0 > Š % O8 90 S !/%
6 % €€€ „Memory Write „ Memory Read +Q
€ '

$|% Z |M 8 „ i/% D 9`B O E";Q > y


e|% E|0 e|!¥ A 9‘ O 8 ;0 T ! 8 € /9; CPU
| | 8 „ /| 9 * ` Z ' Y Ž
„ LUL< | n | 8 |o | „:s| * | ™ | D /%H
€“ Z / H LU< A%

>

? 2

e|% | D= ' „8 9 x• e% 8
€“= |T ? 2 7 j 08 „ 8
€“ / H : 6 8 T 0 H /S '

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

G
(
[\ H ‹s e% YN Z' ' • E0 O ? 2
B ‡2 H O 91 _ }6 e% €E0 H 8
P \ ROM € Zc z T œk2 H = %kl •+/
8 > ' ' D[ • O _ %8 8
vs% c „ T 8 „ % a% • ‰ 3 B :/_
8 a v% O 8 _ O ' 4D[\ 9 ²
€ ' 8Z
•+/ EQ _ E0 e% ROM = D `90 E%
P E0 :0 8 8 M { "# %kl
M { Y9; 0 _ e 8 = pT 8 T Z
€ /_Z 8 _ ' = D `90 &
l _ O ? 2 O § 8 _ E0 e% ROM P #
_ E0 e% H v% P # €E ' O S Zc /_Z
f' 8 _ 8 % Zc Z;% ' ' ZB 0 ROM
€ s Z;% ' ' D '= 0
T
( (
0 e% E0 ROM :' B q œ .6' & '
D8 | „ |_ z |T u | _ O | %8 | ' | Z|
| 8
8 a Q 8 8 8 _ e% c O %8 '
x`/| Ž 8 | 6| f 0 ? 2 e% _z T €E0
€ > Š
H
( ) (
E_ 0 = _ _ E0 e% 6.Q e% e;2
@% _ z T D {# € _ z T 8 H ' Z
€E0 %kT a E% fm % E%

Read Only Memory


Erasable programmable ROM
Electrical Erasable PROM

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

G
5 (
? 2 ³ "# 8 }9 ' ] Z' ' O ? 2
' ROM 9+7 € / 'Z RAM % ” Z 90
H O w0 / > ' pT € /9; D ´ Z 90 Q
r ‹9' RWM uRAM O :† pT D s' r ‹9'
E M e%:"N € }9 ' Z' ' f? 2 }6% Z
O 8 _ O ' €E0 H 9' E Q RAM
p 0 9 % 9' RAM 8 ' % @;% = E# 0
€ Z D '= T %8 f 0
€E0 H 8 µ RAM YN E% 1 N/
€ ' Z z T * #{o m %kl •+/ _ X
P \ 8 % ' , ? 2 Z# ' b >= 7 7 ^m
% ? 2 „E0 D ;2 _ %8 O Y9; 0
€ ' D ' Hard D=

)$ /% (@ 90 < (
¦{ ƒ = _ E0 RAM Z# ' @ 90 RAM
€ /_Z D `90 O= 0D[ • Z M /# /#

Random Access Memory


SRAM
DRAM

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

> 0

A%

ZF $% Y 9; H M 8 e% 8
H 8 M D ” 6 8 A% > '
O 8 ;0 T ! Z% / H O O % T /# 8
€Y % c –% s Z6Q
$% 0 A% Z O8 H %
{+Q 8 .' m €E0 D O %8Ÿ o ‡ L
E0 ‡ L = 8 ?/ 9`B
€ ‡ L H 9% 8 G H

A% > B % C )
D D s' ) a 8 A% _ Z _
| œ |o $|% = CPU | Z| D s 8 .' m €E0
|| O 8 || ” ||o = E||0 — ||+ 8 8 ||? 2
D + E% % — + 8 e% € v% O Z
8 H „ :/ 0 -% o = CPU •0 „* 8 90 O
€ Z > Š D
8 E";Q e% Z M 2 e% €E0 CPU Z M /#
fm Z ./ Z +0 1 "# fm E0 _ @%
Z "9 0 € ' Z > Š 2 e% 8 * 8 90
e% 8 €E0 D D s' ( ) a 8 A% CPU
€“= TZ CPU A 9‘ O Ns• ” 6 8 9

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

D )

/9; Z #{o D E 2 8 D }6% Data


9' CPU 4€€€ Key board uH.D.D3 O 8
H.D.D „Monitor uPrinter3 Z CPU % / Z
= 8 D „ e% € / Z 9/ 4€€€
€ /_Z 9/ p!# O 8 ¡ Z

) !
A% > B % C

4 3 -./ +0 1 2 ( )

L uCPU e% 8 D fm uY 9`B {+Q 8 .' m


-./ +0 1 2 H _ ALU 2 € /9; ‡
= pT 4 ( ) a 3 [BZ ‡ L O 8 /% BZ
q:/_ O % T -% o = _3 D 90 "# > Š
% ˆ 8 ‡ L Z 4 Z D 8 90 2 e%
Z ./ "# Y Z +0 1 "# Y 2 e% € Z
€ Z > Š 8

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

E 6F :; 8 ) )
E e% 8 E0 E /S E";Q e%
D > Š Z ./ % Z +0 1 "# i 9' = , 9
E e% % O 8 = „ $% % `M ' Z
8 > ' b ' 8 ' Z D Ÿ 8
€“[BZ Y " Zo O N T O

4 3 8 G H 5 )

ALU O O 8 = Za% €E0 ‡ L :; 8 @% Acc


Y • B {
¯‰ € Z ^ ¶ :; 8 e% -% o =
8 8 # e% = Za% Y /_ •j 8 (U #
3 B :; 8 v% # Y / Z D[ • 8 G _H
8 +0 1 = pT € %Z 9' 4 ALU v% O 8
€ [BZ 8 Q ) # „ALU Z

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

) !
A% 8 CPU Z > B % C (

:/ / = 2 < )
:/_ „ 2 e% Y 9`B 9 kB 8 8 .' m
E# 0 p7 T „x• e% O O 8 € 8 D N# 8 Y9; 0
> Š % O8 90 S !/% 0 €E0 IR Z
Memory „Memory Read +Q = w0 / O /v 0
e% / € ' 6 % €€€D[\ I/O Read „Write
€ !s 8 4CB3 :/ „ 2 e% Z

4 3 "67 8 90 :; 8 I )

# $% > > Š % CPU _ O8 90


' ˆ % # e% €E0 O /%
8 90
e% 8 9 „8 ?/ e% € B > Š P0 /9
2 p 0 !% 8 90 % E";Q
:/_ O % T D 90 :/ /+' =
Z CPU ' _ O8 90 / 2
€ ' 6 [\ % 6

' D '8 K J )

CPU ‡Q €E0 ? 2 8 H¡ '8 K „ 2 e%


• ' / Z Z' ? 2= 8 O '
E0 ? 2 8 H BD8 2 e% „ •
H Za% „CPU •0 ' = • ' = pT
e% € / Z D8 ' O 6 • Z F

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

A% 8 Y / EQ 7 E0 9 I :; 8
€“8 8 H • •

8 H L )

8 H PC BD8 €E0 8 H u e%
D 8 Q 8 H O 8 8 H H u /_ D8 _
€ Z M Z 8 H e% € Z
4“8 8 H • ¬ 8 H %3

M "# ( )

s m CPU Z D s ) ) ! 8 8 o m
¬E0 %= "# e% = Z!% > Š 2 8
4 = M %3 8 H b 8 }6 ¬ Fetch •
= 8 O D CPU _ E0 Z' = {
¯‰ €E0
v "# _ E0 Z' = % u 8 HZ ? 2
Fetch "# ' Z D 9' CPU ' "#
€E0 > Š 2 8
a/% }6% „E0 }6 ¬ Execute •
€E0 O8 90 O 2 8 CPU
e% = Za% > Š 2 8 s m CPU E 2 8
@% IR 2 _ E0 Z' = Fetch © E0 8 _
u :/_ 2 8 HZ ? 2 = 8 "67 8 90
O E";Q :/ -% o = 8 :/_ O % T
* #{o Z & = p 0 € 90 Z A 9‘
€ ' … ALU „ ACC „ :/_ 2 8 IR

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

) ) !
CPU Z M "# 7 = ™ K

b;' / = ' „ 2 e% - Q YN
€Y 9; A% – dM ! "#

> B % C 5 ) !
Execute Fetch "#

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

O / P7 Q A% ! "# ) )
N "67 8 90
9|0 „E|% |6 ?' = A% 8
|| Memory Reference * 8 9||0 ¬“8 "67 8 9||0
$| | Non-Memory Reference * 8 9|0 /9;| 9% |
| D {|
|# |9 L :;|
| 8 $|
|% ^/|
|•m € /9;|
| 9% |
Y “8 A% 8 B > ' 4A38 G H
/! ` ° > Š A 8 / 8 !" :; 8 $% /6
© •Q , Memory Reference * 8 90 x 8 Y
> ' "# „ +0 1 * "# ‰ 8 *8 M e%
?' 8 8 E; /6% € [B 8 Q B :; 8 8
p |0 Y | 8 |Q B 8 |? 2 = LDB 8 90 8
e|% | €Y > Š B A ^ 8 ?' 8 * "#
8 Q Non-Memory Reference "67 8 90 $% = P
|?2{ € | | D `9|0 B % A 8 6 E%
8 H ? 2 = 8 D „8 90 e% S B
E|% E|0 | %= „E; ' 8 H b = ' 7
8 H •|Q 8 €“[|v ?' 8 D /# 8 6
€E0 4PC) · „ 6 E%
op-code E 0 < ) ! - . P e%
E";Q Y D ' " Q E 0 “8 Address Modifier E
„E L e% E 2 8 €E0 4 A10 A9 „ A8 3 8 H G
H [;` 8 _ E0 "67 8 90 @% ¡ 8
Memory * 8 90 8 3 ' 6 E% €E T Y
x ' `% 4 A0 A7 3 8 H ^% T E";Q /6 4Ref
8 ? 2 (Kbyte Y ' P e% € /
€Y / 8 H

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

9 I / P7 Q < ) !
"67 8 90

8 8 H G E";Q E% ( U E
€ Z s' 8 ? 2 = d`M $% / R‹s
L ? 2 $% ‰ 2 A% 8 e% /
€4I ) ! 3 “8 0:0 9% (<I d`M
D s' I X I ) a 8 _ 5 ) E
`M E0 8 H = D `90 :s O E Q O D
Ÿ 8 8 8 ZM > N` E @%
¬E0 %= 8 Q …H
= E $% /# `M B E e% ¬ X
CPU u E e% B q € Z Z "67 8 90
ACC ‰ Za"_ :; 8 @%3 B 8 E0 8 Eh E Es
•j 4“ % Y H 8 8 D Y ' Z _ E0
€€€€€€€€

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

? 2 x% c I ) !
A% 8 d`M Es

Z 8 Q 8 H 8 D H E0 # /_Z
ACC 8 8 x O 91 8Z ? 2 8 H e%
€ %8Z
E e% = Y 9; [\ Z 8 H O ¬ I
E L u E e% B € Z D `90
8 Q 8 H O 8 8 H /# u 8 H E";Q
• 8 H 8 ¡ E% [BZ
* #{o e% u Z D ' ? 2 = k7
[BZ 8 Q 8 H O 8 % 8 H /#
D O 8 % 8 H 8 OD
D e% O 8 D 90 "# 6 [BZ 8 Q
€ Z "#

R 5 )
4¦{ ƒ ( 3R ( O 8 A% _
€ ' Z D[ • …H 8 ALU * "# w' ¨% 9' _ E0
¬ ' %= 8 R e%
E (Zero3 `M E u 4Carry3$% E $%
€ (Negative3 Z`/ E {#
' "# O 8 Z "# _ ‡Q ¬ Carry •
Carry E 9 $% B
B {
¯‰ € ' Z `M *8 M e% [\ 8 Z
Y /_ •j U H 8 H FFH 91 8 G H
@% Carry E E7 2 e% 8 € Z M 2 UUH
€ Z

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

> Š ALU 8 _ Z "# fi 9' B ¬ Zero •


e% [\ 8 @% E e% u `M 9 B
€ Z `M X8 u*8 M
' "# O 8 Z "# M 2 B ¬ Negative •
`M s E+‰ B Z uE e% Z`/
8 Z "# M 2 B v% *8 +# € Z
*8 M e% [\ 8 @% ' s' e% u Z`/ ALU
€ Z `M X8

>8 NS

LUL< 8 ;0 T !

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

| 8 o 8 LUL< 8 ;0 T ! e% 8
|9 | E0 *8 M e% 8 8 €E / Y
p |0 „Y |/ | 08 8 R ^/•m LUL< % T
H = |6 Y % |c | | 6 8 | 8 H & '
E| H Y | +h = 8 LUL< ;% ' '
| ' | +Q = „ 8 8 | ‰ e% /S N9' 8
08 ' „ e!0 ' „ T 8 :/
|+Q | E0 –F T €Y / 8 D[\ vT S 9%
8 ' + 9s|T IC % 69 ‰ b T
€Y 0 /s

LUL< % T 5
8 8 @% _ E0 D as % T 5U = LUL<
€Y Z Ÿ 8 9 %=

J U 5
X=8 Y_ E L Y u '8 D `90 % T L e%
f 0 _ / Z D E L Y /9; 8 H
_• H Ÿ _ ALE € ' Z pa T ‡7 ' )L @%
ALE B € M ' )L D // 6 % T
L *8 M e% [\ 8 /9; 9% E L e% u `M
€E0 8 H ^% T E

L < ( 5
8 H X=8 E L / Z Z % T e%
€ / Z as 8

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

WR ) 5

• e% O 8 Low /v 0 E0 Z f% T @%
I/O % ? 2 8 D O 8 * #{o _ Z š#
€ 9 '

5 5
% ' a 0 { 8 E0 O 8 f% T @%
w' 8 % ? 2 a/% }6% High B b '
/a M CPU u Low B E0 D 9' ¡ H
_b ' % ' a'H = +Q High D8

< 5
Z š# 6 B E0 O 8 f% T @%
8 Q w' 8 @% 8 9 8 D 8 H — . _
¤8 = pT _ 8 8 CPU pT € [B
8 9 8 8 D8 HOLD E7 2 =
€E B

( I 5

Hold E7 2 8 = pT E0 O 8 f% T @%
HOLD /v 0 %¶ O /6 6
€ Z

Write
HOLD Acknowledge

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

J 5
6 B Z r ;1 `Q O 8 f% T
— f ' D AQ 9 E0 8 f ' O
€ ³ 6 `Q š› € Z `Q

( L 5
€ Z `Q %¶ E0 Z f% T

JW< IW< <W< V 5

f`Q O 8 INTR ‰ /9; O 8 % T e%


€ %Z x% JW< <W< = E% 7 / Z

U 5
6 [\ 8 H c E0 O 8 `Q $%
)
e% €E0 ’ ' s' 6 [\’ v% *8 +# „E0
€ 8 8 E% 7 e% G „ `Q O 8

š# 8 H e% O 8 Low /v 0 Z O 8
€ BZ Y9; 0 reset

Interrupt
Interrupt Acknowledge
Nonmaskable Interrupt

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

( 5

2 8 CPU _ E0 H ¡ / s' E0 Z
€E0 reset

( ) 5

_ /9; M 5MHZ 9;% _ @% ' O 8


€ '8 HZ 8 Y9; 0 C{

5 5
„8 ;0 T a C{ Z e% €E0 Z
Ž v% D `90 O 9;% _ p' _ A ' p' _
€E0 D Y a Y9; 0

< 5

O 8 (RIM 8 90 •0 4‡ @ 3 % 0 D O 8
8 Q 8 G _H (MSB) Y9` E 8 SID ^T
€ [BZ

) I 5
E u5SIM 8 90 •0 4‡ @ 3 % 0 ¡ Z
€ [BZ 8 Q ^T e% O 8 8 G _H Y9`

Serial Input Data Line


Read Interrupt Mask
Serial Output Data Line
Set Interrupt Mask

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

RD J 5

• e% O 8 Low /v 0 E0 Z f% T @%
8 Q D O 8 I/O % ? 2 O 91 _ Z š#
€ [B

R ( 5
E L Y /_Z D s 4 53 a 8 _ 8 o m
A% 6 H E < _ '8 R O E /#
€(X) E0 D s' A% 6 H E ) D

LUL< 8 R 5 !
Z ' YQ8 uZ "67 8 90 = M 2 i 9' B ¬CY
& Q E e% G = ZF Q % 4•j = 3 9
Z YS T e% u4 ;% % -% ` 8 3 '
€ `M *8 M e% [\ 8
Y ; D ' " Q B 8 > ' = E ¬P
YS T e% `M ( Z "# i 9' O E •j
€ `M *8 M e% [\ 8 Z
Z "67 8 90 B 8 > ' Za"_ Z ' E ¬AC
8 8 5 E ) E = Z ' YQ8 7 P
*8 M e% [\ 8 @% E e% u B i 9'
O -% ` •j O E e% Ḡ M u `M
€ 8Z 8 _ DAA 8 90 = +Q BCD #

Read

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

@% "# fi 9' B E0 `M R ¬Z
B Z @% R e% `M 8 "67 8 90
€ ' Z ZQ `M '
i 9' E e%: =8 B E0 E {# R ¬S
`M B E e% @% 8 uZ "#
€ `M u
8 G H E I & "Π8 H %
€ 9`B PSW „ R

LUL< 8 8 H & ' ) 5


* 8 90 & ' D '= T %8 @% * 8 90 # "Œ
™ 8 D O 8 D '= T %8 8 _ O 8
8 _ 8 LUL< 8 Z 8 H X 8 ¨/T € Z
€ / D Ÿ %=

Y 9; Z 8 H X 8 ) 5
= Zs• /# 8 H E I fm X 8 e% 8
LDA UUUH ¬ ‰ BZ A% 6 8 90
8 H e% D 9 8 UUU H 8 H 8 90 e%
€ %8Z 8 G H 8 8 ? 2 =

Z +̧, Z 8 H X 8 ( ) 5
LUL< 8 8 G _H D {# * +, I _ Y 9`B
E0 ‡0 8 0 X 8 uY 9; Z 8 H X 8 € '8
E 0 = ' H P # q ? 2 Z 90 O
2 O € Z "67 8 90 Ž = 8 ? 2 =
* +, O 6 Ḡ "6 D '= T %8 2 o u as e%

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 8 ' Z Z 8 H E% @% _ D8 ?/ m
MOV A B "67 8 90 {
¯‰ € ' D _ ¹ º D '= T
€ /_Z Z _ A 8 8 B 8 D D[ • ¡

O8 Z 8 H X 8 ) ) 5
m O * +, _8 O / = % »
³" ;
@% b ' O O8 Z 8 H X 8 € B Y D8 ?/
A,UUH {
¯‰ € 8Z 8 _ * +, = Za% 8 E%
€ /_Z D[ • 8 G _H 8 8 UUH # MVI

Y 9; [\ Z 8 H X 8 5 ) 5

@% 8 H {
¯+Q HL * +, E` X 8 e% 8
[\ * 8 90 = @% p 0 Z 8 ? 2f'
# HL B {
¯‰ €E0 D `90 Q Z +, Y 9;
MOV A , M 8 90 O = pT D 8 UUUH
€ Z D[ • ACC 8 UUUH 8 H 8 ¡

:9; Z 8 H X 8 < ) 5
Z 8 H Z 92 LUL< * 8 90 = Z§6
D s' D n 9 8 H ‡ £ k7 '8 '
* 8 90 e% 8 € /% BZ :9; Z 8 H N/%
€ €€€ CMA „PUSH „POP „HLT {‰ „ 8 ' 8 H

LUL< 8 ;% ' ' 5 5


Z +h = LUL< O N "67 8 90 ' b
€E|0 |6.Q B '= 0 O 8 Q = _ Z > Š

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

| = | 8 ?' 8 ' a/% = pT


U 8 Z +h f ' 4Y : 3 +h uY 9 ' Z +h
U • ^ %= „ /_Z j ^ = }6%
|M Z;|% ' | ' 8 | "N f9a' € 8 > N`
„*8 |S Y|08 f 0 S E0 *8 S Y08
€ Z D 0 9 B Y?' Z;% ' '
LUL< O "67 8 90 f# "Œ €€€€ ?' = ¼G M
¬ ' Z Y ; %= D B <
€ D 9' •
€ Z +0 1 D B •
€ Z ./ D B •
€X T D B •
€^ :/_ I/O Stack O 8 * "# D B •
= ‰ e% /S 8 H Ÿ 8
€“= T Z # "Œ

D 9' 5 5
8 ? 2 * +, ^ D 9' * 8 90 e%
/ Z > Š
¬ MVI
MVI r,data
8 E% @% _ data ³" 9; 8 90 e%
$% r = 8 ?/ € /_Z D[ • * +, 8 8 E; ? 2
e% ' € / Z L H „E „D „C „B „A O :; 8 =
¬ *8 M 8 90

MVI M,data
8 ¡ E0 e% > N` 8 8 !
€ D[ • 8 8 Q HL 8 08 H 8 „ ?'

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

¬MOV
MOV r , r(
' € /_Z Z _ r 8 8 r( O 91 8 90 e%
LXI rp,data 8 90
€ /_Z D[ • (rp) :; 8 E` 8 8 ‡ I D
HL DE „BCO ½ +, E` = $% rp = 8 ?/
€ / Z
¬ STA
STA address
_ ? 2 = O ' 8 8 ACC O 91 8 90 e%
€ Z 8 Q E0 D H 6¾ 8 90 8 x08 H
8 ? 2 (UAUH a 8 Y Z ¬ GQW J V
€Y ;% / 8 FLH
LXI H,(UAUH ¬ 2

MVI M,FL H

a 8 ? 2 O 91 Y Z ¬ ( 5 ‰
¬ Y /_ Z _ (UCUH a 8 (UBUH
¬ D 8 ¬ 2
LDA (UBUH
STA (UCUH
$ > D 8

LXI H,(UBUH
MOV B, M
MOV M, B

O 91 _ Y ;% / O ' Y Z ¬ ) 5 ‰
# 8 (UCF (UCUH a = ? 2 O … a
€ /_ T G `M = ¤ =

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

¬Y ;% ' %= - . 8 ' ¬ 2

START MVI B,U(H ; even Counter


:

LXI H, ; Begin of memory


(UCUH

LOOp : MOV M,B ; Copy B to memory

INR B ; increase B

INR B ; increase B

INX H ; increase Address of memory

MVI A, DUH ; Copy DU to ACC

CMP L ; Subtract L from ACC

JNZ LUUP ; If Z =U Jump to Loop

HLT

) 5 ‰ — ' 5 !
LDAX B ¬ D 9' * 8 90 f

8 x08 H _ ? 2 = O ' O 91 8 90 e%
€ %8Z ACC 8 8 8 8 Q BC
¬ 8 90 '
LDAX D
DE 8 Z +Q ‰ O8 _ = o ' 8 90 e%
€ > Š
¬ 8 90 ^/•m
STAX B STAX D

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 x08 H _ ? 2 = O ' 8 8 ACC O 91


€ /_Z D[ • 8 8 Q DE % BC

Z;% '= 8 4(3 ‰ f ' ¬ WQW J V


.Y /_Z
LXI B,(UBUH ¬ 2

LXI D,(UCUH
LDAX B
STAX D
Z +0 1 O 8 90 D B ( 5 5
u•j ‰ Z +0 1 "# u* 8 90 = D B e%
e% € Z 8 D[\ x% x _ u-% `
= Y ' Z '8 kBZ [,¶ R O 8 * 8 90
€Y /_ D `90 Zo O X T 8 E M e%
¬ ADI
ADI data
•j ACC O 91 8 ‡ L ¡ 8 90 e%
€ %8Z ACC 8 8 «0 T /_Z
¬ ADD
ADD r
•j 8 G H 8 r :; 8 91 8 90 e%
€ 8 Q 8 G H 8 8 M 2 D
ADD M ¬ ADD ------

8 x08 H _ 8 ? 2 = Z' a O 91 8 90 e%
8 «0 T /_Z •j ACC O 91 8 8 8 Q HL
€ %8Z ACC 8

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

¬ SUB
SUB r
SUI data

SUB M

q E0 ADD *8 90 + ' 8 90 0 e%
€ Z > Š -% ` "# u•j "# O
¬ Carry •j
ADC r
ACI data

ADC M

e% Z > Š 8 •j "# ' 8 90 0 e%


€ /_Z •j D ' 8 Carry E * `
E Z > Š •j "# + ' -% ` "#
€ Z , ' 8 ¿ Q
INR r ¬ s% s * 8 90

€ /_Z %= Za% 8 r * +, O 91 8 90 e%
€ Z DCR r 8 90 e% D / x 6

INR M
8 x08 H _ ? 2 = Z' a O 91 8 90 e%
6 Z x% Za% 8 8 8 Q HL
€ Z DCR M 8 90 e% ¡ / x _

Barrow

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

INX rp
%= Za% 8 rp * +, E` O 91 8 90 e%
€ Z DCR rp 8 90 e% ¡ //_x 6 € /_Z
8 ZÀ T £ [ 8 90 _e% YN f9a'
€ //_Zc ,¶9

8 8 # U _ ;% / O ' ¬ WQW J V
E+;' # a%8 o /_ D[ • (UBUH 8 H = RAM
#3 € :B8 2 < ¡= ' Z +Q #
4E0 UUH
LXI H, (UBUH ; began of memory ¬ 2

MVI B, UAH ; Loop counter


Loop: MOV M, A
ADI U<H ; increase <
INX H ; increase address of memory
DCRB
JNZ Loop
HLT

¬ DAA 8 90
8 9|0 | = | ' BCD |# -% ` % •j 8
U O |/+ |# u•|Q 8 BCD |# € DAA
€E|0 D | |_ O /% | *8 | uY|Q8 | |_ /9;
|?' 8 O /% | 8 …H u # •j 8 8 ;0 T a
|% Y 9 E08 i 9' a'H O k7 € [B Z
<L |‰ BCD O /+ 8 # •j 8 {
¯‰ € B – d
8 r | a 8 q E0 LJ „ BCD – dM r (V
| •|j H UIH % E Y L H *8 M

Decimal Adjust Accumulator

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z "67 8 90 DAA 8 90 € %H E0 E08 r


e|% E|0 D F 8 _ e% > Š 8 ?/ _ E0
pT € Z 8 BCD – dM r Z > Š 8 8 _
DAA 8 9|0 = •|j = pT “ _ •j 8 BCD # EQ
€ %H E0 – dM r Y /_Z D `90

D[ • ? 2 8 8 " 0 # ¨/T ¬ < 5 ‰


BC * +, E` 8 " 0 *8 8 …H & "Œ /_
45( < „JJ „)( „I)3€ /_ D[ •

MAIN: CALL STORE ¬ 2

CALL ADD
MOV C,A
HLT
STORE: MVI A,5(H
STA (UBUH
MVI A,< H
STA (UB(H
MVI A,)(H
STA (UB)H
MVI A,I)H
STA (UB5H
RET
ADD: LXI H,(UBUH
MVI B,UUH
MVI D,U<H
MVI A,UUH
Loop: ADD M
DAA
CC HNDR ;Call if carry set
DCR D
RZ ; Return if Z=
INX H
JMP Loop
HNDR: INR B
Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

RET

Z ./ * 8 90 D B ) 5 5

OR AND +Q = 8 90 D B e%
:; 8 ^ _ Z Rotate CMP NOT XOR
€ '8 kBZ [,Á
¶ R O 8 ' Z > Š ? 2
ANA r
E *8 M ACC O 91 8 r :; 8 O 91
€ /_Z AND uE
ANA M
E *8 M 8 HL 8 H f? 2 a O 91
€ /_Z AND 8 G H E
ANI data
AND 8 G _H E E 8 ‡ L ¡
€ /_Z
ORA r
ORA M
ORI data
XRA r
XRA M
XRI data
/_Z "# +Q 8 90 0 ‰ ' * 8 90 e%
€ Z > Š XOR % OR "# uAND "# O q
¬ s S * 8 90
RLC
„8 G H E e% X=8 8 90 e% O
ƒS E` @% € LSB8 Y Carry 8 Y
x9N q E0 RLC ‰ RRC €“8 N9 8
Z MSB C 8 LSB Z E0 8 Eh
€ Z E` E0 8 8 N9
¬8 90 ^
RAL
2 @% N9 fm 9/ LSB C E
€ C8 ' MSB € //_Z T ƒS E`

Compare

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

RAR
€E0 8 Eh q /_Z "# RAL +

X T * 8 90 D B 5 5 5
| ' :/_ 9' P * 8 90 D B e%
| 8 9|0 & ' D B e% 8 € ' Z % 8 H
|v% D # 8 %= Z' 8 90 D # € 8
|%= 8 |_ E|0 e|% 8 e% * ` X T 8 90
CALL |/6% 8 |%= Z' | 8 90 •0 8
:/|_ | [|B | 8 Q RET 8 90 D '
Z ||M || ' 8 CALL = ||6 8 9||0 || || '
e% /S 8 %= @% Z D= @ /a e% € B
8 |Q D `9|0 8 | ' 8 Z` 9‘ O 1 = 8
e% | /S € | H | | 8 :s|
| * | ™ € [|
|B
€Y /_Z /# i/% 8 8 X T "67 8 90
JMP address
‡ I 8 H E0 ‡% 0 8 90 e%
€ /_Z X T „E0 D H JMP O H > '
> _ _ '8 Zo O JMP '
¬ /' //_Z X T R @% $S
JNZ address
/_Z X T 8 H `M uZero R B
8Z JNZ = 6 • @% uZero R B
¬= / 8 +# v% 8 € c JMP
JZ
JNC
JC
JPO
JPE
JP
JM

Carry

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

$S „ JNZ 8 90 /' ' * 8 90 e%


€ //_Z X T R @% % `M

^ :/_ ] * 8 90 D B < 5 5

= €E0 RAM O N9' 8 ? 2 O § Stack


91 %= EQ ¡[ • O POP PUSH * 8 90
' & 8 € Z D `90 § e% 8 :; 8
Z Z 8 E0 Stack v' s' _ SP Z M
Z 8 „@% D {6 RAM OG 8 H e% H Ḡ "6
DE BC :; 8 E` O 91 * 8 90 e% •0 € Z
Z %= p 0 _ D[ • Stack 8 Z 8 HL
D[ • Z ' 8 PSW u ½ +, e% D {#€ c
9 s' %= e% c ! € c Z %=
€ ' D X T Stack 2 ' DE p 0 BC :; 8 E`

8 Q 1 ) 5 !
? 2 8 Stack b B

PUSH B
PUSH D

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

POP D

POP D

PUSH _ Z +, e% H % _ E0 e% YN f9a'
€ Z ¢ ½ +, O 91 ' B _ POP 8 D
8 „Y /_ PUSH 8 ½ +, ' %= O 9 8
½ +, = ' %= / "o *8 M e%
POP 8 …H „ ' %= % T 8 Y /_D `90
€ / %= 8 Z +Q 8 Y /_

BCD % + O O ' %= @% ¬ I 5 ‰
€ ;% / O /%
8 H _ “8 ‡% 8 NS # $% Y /_ ¿ ¬ 2
0 8 8 Q DE :; 8 E` 8 E% e%: =8
Y '8 8 Q O 6 O 8 H 8 v% E%
€“ % HL :; 8 E` 8 8 O /% fi 9'
r F D 8 8 MSB „O /% BCD % + 8
•j 4ƒS = 3X=8 E% ^ 8 M 2 D _
8 8 _ ^m Y /_Z r F U 8 8 M 2 6 D
# O /% 6 D H E0 # uY Z
€ Z
BCDCONV: LXI H,UH ; clear HL
MVI C,5H ; C is Counter
Loop: LDAX D ; Load MSB in Acc
ADD L ; HL is result
MOV L,A
MVI A,U
ADC H
MOV H,A
DCR C

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

RZ
CALL TEN ;mult HL* U
INX D
JMP Loop
TEN: PUSH B
DAD H ;HL∗(
PUSH H ;Saved (∗HL
DAD H ;5∗HL
POP B ; (∗ HL Save in BC
DAD B ; ((∗ HL)+(L∗HL)= U∗HL
POP B
RET
uB _ Y /_Z D s TENf ' %= 8
%= e% 8 u Z POP ' H 8 Z PUSH
/_Z •j X 8 HL O 91 DAD H 8 90 '
8 8 e% p 0 € /_Z 8 HLO 91 }6%
•j X 8 HL O 91 D8 6 //_Z PUSH
B 2 L Y 6 Z 5 }6% /_Z
U M 2 Y /_ •j X L 8 # @% (
€ • #

€ /_ T 8 ‡% n # @% ( Y"9 ¬ J 5 ‰
TWOSC : MVI C, N ¬ 2

LXI H, SUBT
STC ; Set Carry
Loop : MOV A, M
CMA
ACI UUH
MOV M,A
DCR C
RZ
INX H
JMP Loop

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

€[ ¶ f ' ¬ L 5 ‰
[ ¶ ' @% 8 E0 >=G N9Q Z§6 ¬ 2
² [ ¶ % LED _ e 8 8 {
¯‰ Y /_ ²
Y = 8 X e 8 ' 9 YsS
¬ %[v ?' 8 8 %= f ' € R ‹s
DELAY:
PUSHD ; (TCYCLe
MVI D,N ;J TCYCLe
LOOP: DCR D ;5∗N TCYCLe
JNZ Loop ; U∗(N- ) ·J TCYCLe
PoP D ; U TCYCLe
RET ; U TCYCLe

T= ( (·J·5N· U(N- )·J· U· U)T=( 5N·)I)T


(MHZ p' _ ¿ t= ms Y • B 2
¬ “8
T = (1 2 M ) =UW<∗ U-IS
N= 5UW)
f ' “[v ( 5U Des= LCH3 8 N B pT
:s [ ¶ @% B 2 € ms G [ ¶
' e% % Y [ l 8 N % Y 9 ¤ 92
€Y Z 8 Q v% 2 @% 8 8

`Q < 5
D ' ! 0 $% 8 „ ' O > v/
O ^T ³+ „ "67 8 90 ! 0 e% H
`Q •+/ ¨/T LUL< 8 € ' Z O8 ' c `Q
” 6 LUL< O % T ” 6 x• 8 o ^T “8
' O 6 ^T O 8 /v 0 B € '
€ > Š `Q f ' %= Z AQ 9 Z M
f ' „RET 8 90 = pT ' %= N9' 8
%= € Z 9 B 0 = H O “ BZ = Z M

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

%= 8 _ 8 M 8 H `Q — '
¬ ' D H
TRAP UU(5H E% 7 e% G

RSTJW< UU)CH
RSTIW< UU)5H
RST<W< UU(CH
INTR NA E% 7 e% ^% T

S € 8 ' 08 H INTR ' %=


> Š `Q e% Â8 = 8 % "#
€ Z A% 6 Z 8 8 •0
_ BZ š# ' %= s Y `Q
8 90 8 H /_ X T O v% 1 ' 7:/_
RET 8 90 O > v/ D[ • Stack 8 O 6
`Q @% _ 6 O €“ B ' D8
8 D _ , Z 8 `Q Z n
8 90 O P0 / 8 @% 8 G _H
€ > Š 8 8 _ e% SIM
D D s' 4) 53 a 8 `Q O 8 Z
IW< <W< O `Q _ 6 O E 0 € E0
u `M E e% = > _ 8 o E0 JW<
€E0 6 [\ @% B 6 o `Q

8 G H 91 5 5 !
SIM 8 90 = +Q

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

`M E e% B $ (Mask Set Enable) MSE •


€ Z , Z _ mask "#
6 — u % T e% $ RJW< •
uE0 O 6 f`Q O RSTJW< `Q Flip Flop
€ E e% B
— E e% $ (Serial Output Enable) SOE •
% 0 Enable Z €E0 % 0 — + 8
€ Z
— ' E e% $ (Serial Input Data) SID •
Enable O 8 € Z % 0 — + 8
€ Z % 0

€ RST IW< `Q _ 6 8 90 ¬ V 5 ‰
UUUU U =UDH ¬ 2

MVI A, UDH
SIM
EI

RSTJW< B _ ;% / O ' ¬ U 5 ‰
€ e 8 8 U H *8 T 9 O LED u 6
4€ / 9 8 3
UU)CH JMP ISR ¬ 2

UU<UH MAIN: MVI A,UUH


OUT U H ; LED’S OFF
MVI A, BH
SIM
EI
HERE : JMP HERE ;
Wait Loop

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

ISR : MVI A,FFH

OUT U H ; lED’S ON
RET

/ = I 5

CPU 8 _ 8 7 ; e%:"N & F e%


' O a 0 „ §Q e 8 O €E0
8 …H ' = > B % b B ?' 8 8 b '
€Y / Z –% s i/%

' a 0 I 5
€Y /_Z D s 45 53 a 8 8 ' a 0
8 H X=8 Y_ E";Q Z 6 ALE /v 0 _ ‡Q
D H `M = pT [BZ 8 Q 8 H O 8
E0 ; ‡Q • ' € [BZ 8 Q D 8
4 5 5 a 3 € D D H D _

Timing

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

< 5 !
' ! 0 ' = > B %

b ' ! 0 ( I 5
• E0 ' ! 0 /' ' a 0 e%
O 8 u [B > Š D = ' a/% O
4< 53 a 8 8 > B % e% € Y ;% 'Z D
€ /_Z D s

' c "67 8 90 $% / = ) I 5
"67 8 90 O a 0 _ Y ' Z
CLOK a 0 /S a 0 E% ^ a 0 e% /S
WR % RD O a 0 Ḡ M ^ O a 0u (TCycle)
€ /9;
H 8 _ E0 Read a 0 @% (M ) ^ a 0
D 8 H IR Z D ' "67 8 90 op-code
O a 0 6 Z a% p 0 (Fetch) Z
> _ _ ? 2 8 b ' % ? 2 = '
€ '8 = ' E# 0 p7 T )
?' 8 8 STA )LUUH Z' = > B % ‰ O
¬ “[BZ
¬ ¿
8 H Op-Code & Data
? 2

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

(UUU )(

(UU UU

(UU( )L

D 8 H 4I 53 a 8 8 90 e% Z' = > B %
€E0 D

LUL< +' O < 5


E0 8 ;0 T ! $% • LUL< % ŠH =
8 8 = ' % N/ „ 7:/ ! œ{
IC = D `90 k7 „ / c œ o D~ T $% > Š
x• e% 8 €E0 %kT ' r /9 +'
67 . “= T 8 T IC 6
€ 8 kB D /' 8 v%

L)<< LJ<< I 5

I/O * "# D {# / Z Zo + 8 IC
ROM % EPROM *8 M ? 2 (k O 8
E0 e% 8 e% * ` N/ 3€ / Z
8 L)<< E0 EPROM ? 2 8 LJ<<
LJ<< Z_ 8 c 4J 53 a 8 4ROM ? 2
_ 8 PORT LJ<< € Z D s

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

I 5 !
STA )LUUH ' = > B %
8 € ' A% 6 Z % O 8 /# /' Z
8 Q DDR > ' :; 8 @% *8 T = @% 8 /_
8 % 8 ?/ DDR ¡ _ 8
A *8 T € Z 7 H 8 o *8 T A% 6
„ Z /# U(H 8 H DDR A UUH 8 H
U)H 8 H DDR B U H 8 H B *8 T '
_ A% 6 Z % O 8 f % o € Z /#
*8 T @% Y • B ¬ E0 P e% *8 T
Y 90 ` o DDR 8 UUH % Z
H DDR 8 FFH % O 8 Y • B
€Y 90 `

/# A *8 T LJ<< 8 Y Z 5 ‰
€ A% 6 Z /# B *8 T Z

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

MVI A,UUH ¬ 2

OUT U(H

MVI A,FFH
OUT U)H
A *8 T = IN UUH 8 90 Y ' Z 2
8 D OUT U H 8 90 Y ' • 8 O 8
€Y 90 ` B *8 T

L <I L << ( I 5

C*8 T @% B A D {# q E0 LJ<< + L <I


8 NS O 8 /# 8 H E 5 Z _ 8
^/•m € _ A% 6 Z /# 8 H v% E
8kB ^% T ‡ 5 D '8 K $% RAM ? 2 (k O 2
8 IC e% > B % z € Z O %8 ' Q
P e% :; 8 8 H € Z D % 4 J 53 a
¬ Z
Command register (UH
PORT A ( H
PORT B (UH
PORT C ()H
Timer low byte (5H
Timer High byte (<H

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

4 3 L(<< ) I 5

8 • (5 _ E0 D8 ?/ m I/O •0 @% L(<<
A O | > ' ‡ Es I/O *8 T 0 = Z' = 0 *8 M
L(<< 8 u LJ<< œ{ | € 8 k|
|BZ|
| 8 | 9 8 C B
Z| |% O 8 |/# | 8 E @ @ Zc
| B % A *8 T O E > y ¿ # 8 € _ O %8 '
8 NS e% € ' Z O %8 ' E% @% /#
*8 |M | C *8 |T 8 |+ 8 G | |+ 8 ^% |T E
(
@|% L(<< € ' O %8 ' Q ' B O E% Y '
| 8 H | Z| |_ E0 œ .6' Q 8 ; f 0
*8 |T „4 `M 3 Y = D 0 I/O *8 T 0 *8 M
|% 9N I/O •%8 $% % 4 3 ) ª— . 8 I/O
8 | | € |_ O %8 ' 4( 3 E0 • ¨/T
8 Y E Set/Reset $% € Y — ‘
D `9|0 8 C*8 T E H $"
€ Reset % Set „ :/ 8

Parallel Peripheral Interface


Nibble
Handshaking

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

L)<< LJ<< IC > B % C J 5 !


# _ Y ;% / O ' Y Z ( 5 ‰
ƒS = P 3 Jseg # 08 8 ( )
€ x% c 4E0 8

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 pT /9; O= Jseg 0 S ¬ 2
-% o e% Y /_ e 8 8 Jseg = Za% Y ' Z
„Y 8 Q Jseg m D *8 T 8 8 D _
€ 6 H COM f% T _ Z e 8 O Jseg q
S “ % Jseg O 8 8 # e% Y™ B pT
8 Q YsS u Z > Š 8 _ e% •% 0 Z
E; • E; ' Jseg X e 8 R ‹s
Y / €Y / 4e 83 6 8 Jseg P
8 ' e% 8 E‹0 € /9; ^% T 6 segment
€E0 D H 4L 53 !

0 x% c L 5 !
LJ<< •0 LUL< Jseg #

MAIN : MVI A,FFH


OUT U(H ;Port A = OUT PUT
OUT U)H ;Port B = OUT PUT
LOOP: MVI B,FVH ; # segments in B

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

MVI C , FBH ; )th digit in C


CALL DISP ; DISPLAY Ã
MVI B, A5H
MVI C, EFH
CALL DISP
MVI B, BUH
MVI C, FJH
CALL DISP
DISP : MVI A, FFH
OUT U H
MOV A, B
OUT UUH
MOV A, C
OUT U H
RET

d`M e!0 J 5
e% | 0 0 = !% d`M Y ' 8 .' m
| 8 ;|0 T ! D 8 8
| T i/% 8 €E0 Y9; 0
5 8 5 | d`|M $% e!0 „ d`M $% 8 0
4V 53 !| 8 | ' e|% 8 | E‹0 € 08
€E0 D H
„ d`M e!0 9Q 8 ?/
;% $% = G "6 „ ' B • I = D `90
D s| | | |v/ € | | D `90 5 8 5
Y| | |!%:!7 |?' = o 90 .0 u
9

Keyboard

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

d`M V 5 !
LUL<
D D s S !/% T € '
v/ E0 D `M .0 > R‹s % E0
D 8 Q P 90 8 `M ./ 8
5 8 5 d`M $% e!0 ' „ 8 €
€E0 D H LUL< •0 LJ<< -% o =
INT: MVI A,FFH ;Program Port A

OUT U(H ;DDR A = Output


CMA ;Program Port B
OUT U)H ;DDR B=Input
ROWU: MVI B,UUH B = Row weighting = U

MVI A,FEH ;A = U
OUT UUH ; Drive Row U LOW
IN U H ;Read columns
CPI FFH ;Set Z flag if all columns HIGH

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

JNZ COL ;Jump to COL if any column LOW


ROW : MVI B,U5H

MVI A,FDH
OUT UUH
IN U H
CPI FFH
JNZ COL
ROW(; MVI B,ULH

MVI A,FBH
OUT UUH
IN U H
CPI FFH
JNZ COL
ROW): MVI B,UCH

MVI A,FJH
OUT UUH
IN U H
CPI FFH
JNZ COL
JMP ROWU
COL: MVI C,UUH

RRC
JNC DONE
INR C

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

RRC
JNC DONE
INR C
RRC
JNC DONE
INR C
DONE: XRA A

ADD B
ADD C
HLT

T 8 :/ L 5
e% E0 q "6 O 8 s T 8
Z > Š 90 T ' *8 M 8 8 1 x S _ * `
8 θ ¡= ' 8 @% ˆ 8 }6% [B
[ l A 9‘ O 8 O < UWJ = θ _ SZ
/' Y 8 e% €E0 9 ² „8 $% ˆ € /_Z
Z 8 8 8 90 O 8 v% 7 "6 8
P.Q O 6 O 8 > „8 8 8 90
8 90 u 8 < x S O ‰ 8 o € /9;
e% €E0 P.Q 0 8 8 8 P.Q 8 NS O 8
^ M 8 5< „8 90 P.Q ^ M P
7 9 $% ˆ i 9' 8 €E0 8 IU 8 8 P.Q
€ € S 8 < 8 8 8 „8 90 P.Q
€E0 D H U 5 ! 8 T 8 e% $ K

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

$% $ K U 5 !
' c T 8

Y™ x S 8 T 8 $% ) 5 ‰
P0 / [ LJ<< LUL< •0 8 < % =
€ / :/
D H 4 53 ! 8 ' e% 8 E‹0 ¬ 2
€E0
INIT: LXI SP,(UCUH

MVI A,FFH
OUT U(H
MVI A, H
STEP: OUT UUH

PUSH PSW
CALL DELAY
POP PSW

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

RLC
JMP STEP
DELAY: ……..

"/ 8 g S f ' V 5
s' 4 53 a 8 _ 8 .' m "/ 8 g S
ƒS Eh E ) € Z :/_ E% @% •0 E0 D D
0 r \ • EN 8 +0 8= Q —
K EN 8 +0 8= Q — •0 E
Q r / K B _ E0 ZN% Z r /
Eh E e"F 8 € +0 r \ • % u
€E0 D 9 B ?' 8 D T O ' E0 8

')J) 8 E E 6F 5 !
"/ 8 g S ‰ 8
r \ • Y Z /_ ¿ ‰ /#
% •+.7 u +0 r / K Q
L pT / X e 8 N/% P0 /9 8D T
¬ E0 %= P e% E
UUUU U= LIH
b = 9";Q €Y / £7 ')J) 8 8 LIH % pT
¬ E0 ^/S > Š 8 Z' ^/S '

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

PORT : EQU UH ; Output Port


LDI A,LIH
OUT PORT ; send to out put
CALL DELAY ; for delay

¿ # 8 % Y ' Z ' N97 2 f O


D s' 4 ( 53 a 8 8 e% 8 E‹0 €Y /_
Y Z 9' ')J) @% a = 8 D €E0 D
8 ')J) 8 Enable f% T €Y / Z M g S 8 ')J)
€Y /_Z ^ 6 4 UH3 8 H • L •0 '

A5 • uZ% Es AND e% O B Y / EQ
8 _ E08 Y = 8 E‹0 Y /_ M ')J) 8
€ Z Y_ ' O %kTœ .6' q u /_Z

5 !
"/ 8 g S ‰ 8 E‹0 (

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

+h = 8 % 8H E , V 5
[l9 A% 6 ! G "6 G –.0 = 8
8 0H "# e% 7 8 E ,
8 Q Y +h = 8 ! e% €E0 p% ' '
¬ /9; %= 8 Q = E0 D D

¬ = E; 8 +# 8 90 e% Z _ a ¬ Equate V 5
NAME EQU Expression
| & 8 NAME [l9 ' o 8
| ' |o 8 € B H e% v% Expression 8
8 9|0 D8 | % H [ l E0 E , NAME
€“ 8 ! 8 EQU

| 8=8 8 90 e% ¬ Define Storage ( V 5


| | 8 | 8 ! ? 2 7 ' / 6 6
8 90 e% > € ' Ä Q D D[ •
¬E0 %= !
My_Array DS (UH ¬ {‰

' )( = E; 8 +# My_Array % 8H ‰ e% 8
8 9; 3 M 8 H = ? 2 7 4 (UH3
•0 % 8H ' ^7 & 8 H 7
Y • B ‰ /# € & 4 ORG 8 90
= +Q E; „ & LUUH 8 H = D ' % 8H
€ 9 ' ORG LUUH „G 8 90

Define + Y 8 90 e% ¬ Define Byte ) V 5


?' 8 % 8H ' * ` e% E0 Storage

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Å M p% ' ' 8 …H 91 /9; ' 7 v%


8 90 {‰ „ / ^ 6
My_Array DB U<H, H,(UH,()H

? 2 § 8 ' 8 NS % 8H
€ / ½ E0 ()H (UH „ H „U<H P
€ ^ 6 ORG 8 90 /•m % 8H & 8 H

5 V 5
… = 8 • x ' 8 +h = 8
8 € Z O % * ' a _ €E0G –.0
G –.0 … = 8 /' m Y ' Z _ @% A% 6
Y 90 _ Z M f ' O Y 9 [l9
E7 2 €Y / M x% : 8 T 8 ?' 8 _
¬ E0 %= 8 Q = A% 6

NAME Macro (par , par(,…)

€€€€€€€€€€€

€€€€€€€€€€€

ENDM
{‰ € /9; 8 [l9 €€€ par( „par
H % [B 8 8 : 8 T %=
„ / X T A% 6 1 ' Y / M 8
8 L 8 ( r F M 2 > Š 8 >=G * "#

Fonction

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

¬ ' B
MUL ((uL)

J V x• D8 8 :s * d F
6 /! * !0 € H 9 ' LU< 7:/ ! r 9

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Yi/T

LU< 7:/ !

Y9;| 0 $|% = Y |• B D~ T $% > Š


8 ;|0 T ! | D {# Y / D `90 8 ;0 T !
*8 M e% 8 “8 = ' Y +' IC 4CPU)
8 | E‹|0 P |' s Y 0 > 2 = %H ?' 6
f|6.Q @|% 8 7:/_ a € D +9 = 8 # „>=G
Y9; 0 @% O >=G * 8 = O8 ; CPU @% u 2
uCPU | D {|# €E|0 8 8 `_ O _ a
„ % |0 •| 8 @|% „ROM RAM „ 7:/_ a
|`Q O |/ | = * 8 | t | „O= | • 8 /S
•|"9Œ 8 | @|% 8 4 <3 a /' Zvm _ / +
€ '8 8 Q

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

< !
LU< 7:/ ! 8 "6 > B % C
€ / Z08 8 8 e% = @%

LU< % T 7 j 08 <
5U e% = )( _ E0 % T 5U Z0 OH @% LU<
f% T )( € //a "# I/O D B8 — . /# % T
/ !s 8 ‡ L D B8kB 8 NS uD > '
$ K fs ' €Y /_Z Z08 8 @% | 8 _
€E0 D H 4( <3 ! 8 LU< 7:/ !

`M ¡8 K D B8 <
•"9Œ 8 )V )( % T D B8 e%
' 8Z 8 _ 8 ?/ % T L e% €E0 4Z0 OH3
ALE f 0 _ ' ADJ ADU m E 2 8

Port

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

% 8 H /# ' Z pa T ‡7 = 0 D[ • @%
2 o 8 •Q 8 € ' 8Z 8 _ D /#
D B8 e% D `90 8 ? 2 = :B8
€E0 D p! T 97 D 8 H D B8kB $%

$% D B8 ( <

% T 8 I/O O 9 % n 9 % T L e%
Z 8 % 0 — + 8 O E0 Z0 OH L
?' 8 D B8 e% v% ` ° € ' 8Z 8 _
€E0 D s' 9 B

D B8 ) <
% © 8Z 8 _ 8 ?/ O D B8 e%
2 o 8 8 H D B8kB OG E% % Z "# I/O O
( % T D B8 e% € Z 8 ? 2
€E0 (L

0 D B8 5 <
D {# E0 D8 ?/ D B8 $% D B8 @%
A% ° % T e% = @% „Z "# O I/O — + 8
_ '8 LU< n * ' ! . 8 8 ' O v%
e% € @% 8 _ 6 O N9";Q 8
€E0 Z0 OH J U % T D B8

External Code Memory (External ROM)

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

< <
? 2 _ E0 (V % T O 8 Z /v 0 @%
@% OE Ḡ "6 % T e% € /_Z 6 8 Z 8
' O N9% ' BZ M 8 EPROM
> v/ €E0 ^% T 6 % T e% € ea¥ EPROM =
6 [\ E7 2 8 PSEN „ ROM = '
€ ' Q 4 G E 6F 3

I <
97 O {+Q 8 .' m /v 0 e%
/v 0 e% € 8Z 8 _ D 8 H _ pa T
/_Z 8 _ = 0 0 ' p' _ Ys @% p' _
D8 ?/ m E# 0 p7 T @% /# ' Z
8 ALE /v 0 € 8 8 _ (MHZ p' _
€E0 D A% 6 )U D8 K % T

EA J <
) % T 8 E0 O 8 /v 0 $% /v 0 e%
ROM ^% T E 6F 8 _ Z v/ € 8 8 Q
Z 8 EPROM = ' Z 6 [\ Z
' LU< G E 6F 8 B ' Z
? 2 ^% T E% LK % 5K /6% ROM = 8
EA • = LU< 8 EPROM & ' ^/•m € /
EPROM %8 ' 8 E7 ( %kl
€ / D `90

V pp

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

L <

E0 Y9; 0 Reset — „V f% T 8 RST 8


8 ^ ! 0 * Q 2 e% = 6
LU< Z M B= \H /# „ [B 8 Q G E 6F
€ 8Z 8 _

< !
LU< % T = % K

= 0 0 ' O O 8 V <
= 0 0 ' O 8 /# O 8 f% T e%
9/ LU< 9;% _ = 8 E# 0 p7 T _ /9;
D s' *8 M ' D // 8 % T …= € //_Z

Machine Cycle

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

9;% ' p' € ' = ' 8 „D


€E0 v ( „MCS-< TM
D ' IC P \

%kl *G U <
Vcc € / 8 97 ·< %kl $% LU<
€ M (U % T 4^ =3 Vss 5U % T

? 2 = 0 ( <
O C:s ? 2 O § @% D '= T %8 P \
§ $% LU< 8 € '[BZ ?' 8 D '
?' 8 D 4 3 ' ' B ? 2
E0 e!¥ D ? 2 €E0 D 9 B
= D `90 e% € /
E% I5 K ? 2 E% I5 K 2 8 Ž
e% 8 :s * d F € /9; 60 Q D ? 2
€E0 D H 8 D8

D8 ?/ m ( <

)UH 8 H = 8 E|% 9s| 4( <3 ! S B


E|% )( „ | | s' D8 ?/ m RAM JFH
*8 |M | |/' | | ' (FH UUH 8 H = ^% T
D8 ?/ m RAM 8 ' ! € ' D `90 † s
Y 9;| [|\ |% Y 9; 8 H X 8 = D `90
¬ %= 8 90 {‰ €E0 0:0 Q

MOV A, <FH
<FH 8 H 8 RAM * % 91 '
¬ 8 90 ' € 8 8 ! D8 +'
Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

MOV RU,Ã<FH
MOV A,@RU

+Q 8 90 / > Š 8 8 m
€ > Š % N/

%kT 8 H E ( ( <
-% o = `/ E 90 s% '
7:/ ! P \ /y8 Q * ' ! = !% „= > '
(L 8 %kT 8 H E ! ( U „LU< €E0
9 8 Q (FH (UH E% 8 H 8 H !
E € /9; n 8 * +, Z 8 Z% N9
„ "67 8 90 $% •0 E% /' m /' '
u ‰ /# € ' OR % AND „reset „set
¬ 8 8 ! "67 8 90 e% IJH E
SETB IJH

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

LU< 8 D ? 2 / Y ; ( < !

* +, $' ) ( <
| |? 2 ^% |T |! )( 8 * +, $'
= 8 * +, Es LU< ¾ 8 90 # "Œ € '8 8 Q
= p|T ¿ | x T *8 M / ' + 9sT RJ RU
|? 2 UJH UUH 8 H 8 * +, e% „Y9; 0 reset
8 U<H 8 H |91 %= "67 8 90 {‰ € '[B 8 Q
¬ / 9/ D8 +'
MOV A , R<

$' r ‹9' E [ l 6 * +, $'


(
¿ €E0 [ l Q ' E 6F " 8 * +,
%= "67 8 90 6 ) D8 K * +, $' H
¬ ;% ' LH ! 8 8 D8 +' 91

MOV RU , A

) n 8 * +, 5 ( <

„ RJ RU D {# € 8 %= * +, LU<
LUH 8 H = RAM G d ' 8 n 8 * +, (
%= 6 „D 1 e% 8 9+7 € 8 FFH
€ 8 D s' A% 6 '

Register Bank
Program Status Word
Special Function Register (SFR).

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

E 8 > v/ % ;% ' '


¬ "67 8 90 ‰ € / PQ E%
SETB UEUH

v% 7 / 8 D8 +' 8 `M D8 K E
E0 9!' e% R ‹s 8 v € c [ l 8 E
Y E0 D8 +' E% > y 8 H Y EUH Y '
ŠH = €E0 D8 +' 8 E e% X=8 Y 8 H
„ E% ' / "# E 8 SETB "67 8 90
EUH 8 H 9% Y 9; ' H v' i 9' 8
8 * +, A 9‘ x• € / [ l D8 +' /6%
€ / D Ÿ 8 n

' E 6F " 5 ( <


E 8 8 Q DUH 8 H 8 E% e%
¬ ' 08Z 8 Z N`
Z ;2 * "# > Š E0 Z ' E ¬ CY
€E0 D `90 Q Zo O N T O %kTZ [,¶
8 Z +0 1 "# O Za"_ Z ' YS T ¬ AC
E ) E = 9' $% B € 8 8 BCD
UAH ^ ^% T E 8 NS 8 i 9' % „ 9` -` 5
€ set YS T e% UFH
Z 8 M 8 YS T e% E0 `M YS T ¬ FU
€ `M ACC O 91 _ Z
^ 6 8 Z +, O @' YS T e% $RS RSU
E f 0 pT “8 * +, @' 5 S € /_Z
UUH E e% B Y /_ ^ 6 8 …H Y ' Z
@' / U H B E0 `M * +, @' /

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 ) @' / H B ( @' / UH B
€ Z ?'
% •j "# @% = pT E0 %8 0 YS T ¬ OV
uE e% 9` • ` Z ;2 %8 0 @% B -% `
€ Z
8 ¤ = = b 0 O E0 = E ¬ P
B }6% s z T % 8 _ 8 . 8 G _H
E e% u O # uAcc 8 Ç@%Æ O N9 6
€ `M ' B

B * +, ( 5 ( <
D8 +' D m FUH 8 H 8 B * +,
"67 8 90 € D `90 Y ; r F * |||| "#
r F 8 B A 8 E {# 9 Es % MUL AB
B 4^% T E% 3 A 8 8 9 I i 9' D
A „DIV AB "67 8 90 ' € 8 Q 4G E% 3
A 8 8 E";Q ¤8 / Y ; B 8
/6 ^/•m :; 8 e% € 8 kB B 8 8 D ' " Q
* +, e% € / "# D8 ?/ m p% / S * +, $%
€E; ' FJH FUH 8 H = ^/•m

9sT BD8 ) 5 ( <


8 8 Q L H 8 H 8 E0 ‡ L * +, @%
9sT OG 8 > v/ m 8 _ E0 O D 8 H O 2
= x T 8 SP u 9sT _ PUSH € 8 8 Q
"# Z x% 2 @% u 9sT D 9'
@% 8 SP p 0 ' Z 9sT = 8 D u _ POP

Stack Pointer

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 . 9sT BD8 „ reset > v/ € /_Z Y_ 2


RAM 8 8 9sT 9 E0 UJH O 2 ¿ x T
SP 7 8 {‰ € _ A% 6 Z
"67 8 90 = \H IUH 8 H = 9sT 8
¬ [B 8 Q D `90 8 %=
MOV
SP , Ã<FH

D BD8 5 5 ( <
? 2 90 4DPTR3 D BD8
‡ I * +, @% „ D `90 8 D %
€ 8 8 Q L)H L(H O N08 H 8 _ E0

D B8 * +, < 5 ( <
`M D B8 = / 8 +# LU< 8 I/O D B8
8 D B8 „ VUH 8 H 8 @% D B8 „ LUH 8 H 8
N B8 e% m €BUH 8 H 8 0 D B8 AUH 8 H
/7 6 %= 8 90 ‰ /6 € ' %kT 8 H E
¬
CLR P . J
CLR VJH
t * +, I 5 ( <
8 E0 X8 K O ‡ I t O 8 LU<
8 Q 4G E% 3 LDH 4^% T E% 3 LAH O 8 H
t — ' TCON TMOD O * +, € '8
€ / š› 8 _ /9;

Program Counter

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

% 0 D B8 * +, J 5 ( <
— + 8 O % 0 D B8 @% LU<
€ Z ' % T > /' % 0 O 8
8 Z v' 8 Z % O 8 O D SBUF * +,
8 N/% fm €E0 a "# O E7 2 Z08 O SCON
€ –% s §` O 6 O x•

`Q * +, L 5 ( <
_ “8 LU< 8 > –.0 `Q •+/ ¨/T
pT ' 6 [\ ! 8 _ & •Q `Q e%
8 b ' 8 …H Z Y9; 0 8 _ & =
(
Z 8 ALH 8 H 8 4IE3 `Q = 0 6 * +,
`Q > * +, -% o = > –.0 ' € 6
O 6 O x• 8 `Q € ^ 6 BLH 8 H 8 4IP3
€ ' Z 08 Ÿ s 8 .

8 D ? 2 90 ) <
E0 ' ' • ? 2 $% 8 ? 2
$% = v/ € 6 PSEN /v 0 •0
( U D B8 „Y / D `90 8 EPROM
€ /9; ' :0 8 D8 ?/ m I/O N B8 /#
E0 /9 ' ' ' ? 2 $% 8 D ? 2 '
! "# /v 0 e% € 6 WR RD

90 D 8 N/ € /9; P)WJ P)WI % T v%


{‰ 3 MOVX "67 8 90 8 D ? 2
I D BD8 = E0 4 MOVX A,@DPTR >

Priority Level
Interrupt Enable Register

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 H * +, /# R % RU „4DPTR3 9
€ / D `90

8 H X 8 5 <
+ / 8 D= e% 8 H X 8
E 6F v9; ` 9‘ X 8 D
Es 8 H X 8 € R‹s „ 8 ;% ' '
¬ = / 8 +# ' ' B

* +, 8 H 5 <

Z` 9‘ O "67 8 90 8 RJ RU * +, L
e% = Za% „= ' 8 / ' D 9 B8 _
= _ 8 o m Z 8 H e% € Z D `90 ½ +,
E0 Z "# _ b ' O E < %HZ 4) <3 a
8 _ ?' 8 O * +, _ R‹s O E 0
8 8 * +, ’$' ’ 8 NS3 € ' 8Z
* +, @' €E0 6 …H = !% • = 8 7
r ‹9' RS RSU •0 D8 {
¯+Q •' /S '
„D8 +' J * +, * % 91 •j {‰ 4 Z
¬ D `90 %= "67 8 90 =
ADD
A,RJ
E ¨/T €E0 UU U B 8 90 e% "#
/ % T E 0 "67 8 90 „UU U /6% %G
€ // R‹s 8 * +, „ /6%

Register Addressing

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

LU< 8 H X 8 ) < !

Y 9; 8 H ( 5 <
Z 8 LU< * +, X 8 e% 8
O E L Z "# _ O E L _ Z'
L _ E0 ZN% € 8Z 8 _ RAM Z 8 H
E L E";Q 8 €E0 Z0:0 Q RAM a (<I E
RAM ^% T a (L `M E ^"9` B 8 H
‰ /# € 8 D8 SFR @% B

Direct Addressing

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

MOV P ,A ¬ "67 8 90
9/ D B8 8 D8 +' 91
^ 6 +h •0 4VUH3 D B8 Y 9; 8 H € /
€ F "67 8 90 > E% /# E0 D

Y 9; [\ 8 H ) 5 <
@% E0 >=G N9Q Z§6 “ % LUL< 8 _ 8 .' m
Z 8 H e% / ^ 6 ' O Zo 8 8 H
/# R RU X 8 e% 8 €E0 >=G Y 9; [\
/# …H O 91 //_Z "# BD8 O * +,
Y 9; [\ 8 H € 8Z 8 _ RAM 8 8 H
e% € D x% c R % RU 8 ’È’ ' s' $%
_ X=8 E J E0 ‡% @% Z 8 H X 8
O X=8 e%:"_ E /_Z ^ 6 8 Z "#
RU u `M E e% B E0 R RU _ R‹s
8 H /# R u @% B 8 H /#
8 H 5UH R B ‰ /# € 8Z 8 _
¬ "67 8 90 „ <<H ' ? 2 = 5UH
MOV A,@R
9/ D8 +' 8 <<H
€ /

( 8 8 H 5 5 <
u 8 H @% O 91 O É + ' "# _ Z v/
8 Z D `90 X 8 e% = E , # @%

Indirect Addressing
Immediate Addressing

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

O /6 8 Ç#Æ E {# ' "# = pT X 8 e%


Z 8 H = _ Z% "67 8 90 fm €Y Z 8 Q O8
9 Es O8 ¡ @% u //_Z D `90 O8
D BD8 = 97 2 Ž /‰90 / Z
‡ I E , @% E7 2 e% 8 Y / Z D `90
¬ {
¯‰ E0 = '
MOV DPTR, # LUUUH

8 Q E L • # = 6 8 8 ' B
O Za% uE0 ‡% Z 8 H X 8 e% € [BZ
€O8 ¡ O Za% ' "#

+;' 8 H < 5 <


X T "67 8 90 /S f 0 • Z 8 H e%
L # @% „w;' 8 H € [BZ 8 Q D `90 8 R‹s
•j ' D '8 K E0 8 E {# ‡
€ = ; 8 % 6 "67 8 90 8 H
O E% @% _ E0 ‡% ' Z 8 H X 8 e%
?' 8 w;' 8 H O E% @% "67 8 90 _
Y ' Z ³9% … _ E0 ZN% €E0 D 9 B
8 Y /_ X T G • (L % ^% T • (L
€ 8 ' O 8 _ X 8 e% / 8 ; O '
$% D / s' THERE P;S B ‰ /#
¬ "67 8 90 U5UH ! 8 "67 8 90
SJMP THERE
9 8 Q ? 2 UU H UUUH … ! 8
/# )EH D= ' +;' M $% +h „

Relative Addressing

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

UU(H + )EH = 3 € / 8 ?/ "67 8 90 > E%


4 U5UH

- . 8 H I 5 <

AJMP ACALL 8 90 8 • Z 8 H e%
uE0 ‡% _ Z 8 H X 8 e% 8 € Z D `90
³# "Œ3 E% X=8 E 0 D m > E%
Z Z ‡% (K fd`M 8 8 H /# 4E
/# E% 8 :/"_ X=8 E ¨/T
e% pT 8Z 8 _ ‡;% (K fd`M D //_^ 6
€Y /_ Z 8 H 8 ‡% (k fd`M )( Y ' Z X 8
$% D / s' THERE P;S B ‰
¬ "67 8 90 UF5IH 8 H 8 "67 8 90
UVUUH ? 2 … ! 8 AJMP THERE
e% 8 "67 8 90 +h „ 9s 8 Q UVU H
¬ 8 H 8 8 !

Byte(A U-AL·opcode)

10000110 − 2nd Byte (AJ-AU) 11100001 − 1st

= ^% T E D D s • …H %= % N9
€ /9; 8 H
D '8 K %G E ¨/T 0 F 46 H = 0000111101000110 B
[ l „ "67 8 90 e% v/ '
AJMP "67 8 90 Y 9 € Ê
8 H ^ /9; 9% (K d`M $% 8 Y

Absolute Addressing

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 G E < e% / € 8 8 Q UFFFH ULUUH


€E0 C:s …H

4ª . 3 'G o 8 H J 5 <
_ O E% @% €E0 ‡% 0 Z 8 H e%
8 _ Z 8 H O v% E% Z "#
8 ? 2 = E% I5K Z •+.7 € ' 8Z
ROM % _ f? 2 „ 8 H 8 ?/ 9+7 3 € _ Z 8 H
LCALL O "67 8 90 8 X 8 e% 4 Z Z 8
€ 8Z 8 _ LJMP

(
8 p% ' 8 H L 5 <
% ' D '8 K3 % T * +, @% = X 8 e%
E0 O 4D8 +' 3 w;' f M @% 4D BD8
MOVC % JMP O "67 8 90 8 ,Ë 8 H 8 H
‡ I 8 H @% ' Z 8 H X 8 e% € /_Z D `90
D BD8 Z 8 H X 8 e% 8 € /_Z 7
I 8 H @% /# M 2 Z •j 8 G _H
¬ %[v ?' 8 8 8 90 {
¯‰ € Z Z ‡
MOVC A, @A+DPTR
E0 >=G 8 H Z •j D8 +' DPTR
€ [BZ 8 Q D8 +' 8 H e% O 91 € %H
€ E0 Y 9; [\ Z 8 H ¡ / s' @ E {#

Long Addressing
Indexed Addressing .

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

"67 8 90 & ' < <


E0 >=G Z 8 H O D Ì Z08 = pT
e% 8 €Y /_ 8 LU< O "67 8 90
Y /_Z O / Y ; D B ¨/T 8 N "67 8 90
¬ Y Z – F = @% 6
4ª Z +0 13 Z ;2 O N "67 8 90 |
Z ./ O N "67 8 90 |(
D 9' O N "67 8 90 )
q [l9 O N "67 8 90 5
r 6s' O N "67 8 90 <
;2 "67 8 90 < <
_ E0 e% N "67 8 90 e% 8 8 YN f9a'
> Š ^ a 0 @% 8 Y ; r F "# m
^ a 0 8 NS 8 Y ; r F € ' Z
> Š ^ a 0 8 INC DPTR 8 90 ' € ' Z
•j +Q = Z ;2 "# „ N "67 8 90 e% € Z
Y_ Za% _ F Za% Y ; r F -%
¬ 8 90 O {
¯‰ / Z > Š 8 _

UFH # ADD A, ÃUFH


€ %8Z ACC 8 8 M 2 /_Z •j ACC 8
¬ 8 90 {
¯ _ G 8 90 3
ADD A,
4€E0 6 Ã <B
x• Y ; r F "# • 8 :s * d F
€ 6 ( 5 ( <

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

./ "67 8 90 ( < <


„ /9; Z ./ * "# N "67 8 90 e%
Z 8 NOT XOR „OR „ AND +Q = 8 90
{
¯‰ € > Š E% E% % E E *8 M
¬ 8 90
ANL A, @R

8 x% 91 8Z /_Z D8 R _ Z08 H
8 M 2 /_Z AND D8 +' E E *8 M
u“8 kv' 8 @ E {# B q Z 8 Q D8 +' 8
Z ./ AND D8 +' O 91 8 R O 91
NÀ T Z ;2 * 8 90 ‰ ' *8 90 e% 8 € c
RL A,RR 3x S "67 8 90 u ^/•m € ' %kTZ [,¶
E0 8 % ƒS E $% 8 D8 +' 4A
E 8 NS SWAP A "67 8 90 u -% o ^m € //
€ / D8 +' 8 8 ^% T G

D 9' O "67 8 90 ) < <


¬ //_Z 8 _ • 1 8 N "67 8 90 e%

) < <

¢ Z RAM 8 8 „D * 8 90 e%
€ ' Z ^ a 0 % @% 8 //_Z
% RAM = a Z * 8 90 e%

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

e% > € _ ¢ ACC E7 8 SFR


¬ = E; 8 +# "67 8 90
MOV <destination> ,
<source>
Y 9; Z 8 H SFR _ 9
P e% "67 8 90 O € /9; Z0:0 Q
¬

XCH A, <source>
E% 91 D8 +' 8 D š#
"67 8 90 $% ' € ' Í% 6 D D 8 H
¬ ! ’YQ8’ Í% 6
XCHD A,@R

E N/ „E0 +Q "67 8 90 /' m


€ ' ( 7 + ) Í% 6 4^% T E 53 / % T

8 ( ) < <

8 Z 8 RAM O D "67 8 90 e%
8 Y 9; [\ Z 8 H //_Z ¢ Z f? 2
% R % RU 8 8 H }6% ' Z 8 _
^ a 0 8 * 8 90 e% fm € //_Z 8 _ DPTR
+ ' "# /# D8 +' = vm ' s
b ' ' /v 0 € // D `90 %
o 8 N/ „4 WR, RD 3 ' "# 8 RAM
€ ' 6 MOVX "67 8 90 $%

Exchange

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 i9; ) < <


' D 9' "67 8 90
8 c € 8 ' ? 2 8 •Q i9;
= E0 MOVC „’E , 9' ’ D `90
% T * +, /# D BD8 % ' D '8 K
€ / D `90 +;' M /# D8 +' =
¬ "67 8 90

MOVC A, @A+DPTR
D '8 K = 8 8 (<I $% '
¬ "67 8 90 ' € / ' + 9sT (<< `M

MOVC A, @A+PC
e% 8 * ` e% „ / 8 8 m
D `90 % T 8 H /# ' D '8 K = 8
€E0 0:0 Q 8 %= $% -% o = D

q O N "67 8 90 5 < <


8 ‡ | @| * | "# O _ q ¡ '= T @%
E| |a (L | Z RAM € 8 LU<
8 H | Q E a (L ' SFR O § %kT 8 H
_ `M ‰ Z 8 90 € /_ Z Z' + 9sT 8 v% Z
AND OR u |_ Y"9 u _ x% =H u _ @% u
¬ "67 8 90 {
¯‰ € ' /' Z E @% _

SETB P WJ

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

YS |T $% / EQ € /a @% 8 D B8 J E
9/ D B8 % T $% ' ' 0H
¬
MOV C, FLAG
MOV
P WU, C
| Q E| | > |' ' FLAG ‰ e% 8
§| |% | RAM ^% T ! (L 8 8 H
| 8 % "67 8 90 0 $% ' € SFR
= % | "67 8 9|0 „ |/ 6 E E; 8 90
D |_ E; 8 ?' 8 E 9 JC JB +Q
= % | "67 8 9|0 |// | X T *8 M 8
€ // X T +' *8 M 8 JNC JNB +Q

4ª p% ' %=3 ' r 6s' "67 8 90 < < <


% - 8 %= EsB= Z' O N "67 8 90
€ '[BZ 8 Q 90 e% Ž Zo [\ Zo O † 6s'
LJMP ¬ 8 4 JMP 3X T "67 8 90 & ' 0
w;' Z'G o Z 8 H 8 P _ AJMP SJMP
X T "67 8 90 & ' B € ' Z D `90 - .
„ 9 ' 9 m p% ' ' %H 8 8
"# c = D `90 D= 4ASM< 3 9/% +h
¬ 8 90 {
¯‰ € p% ' ' 8 7 "6 X T
JNB P W( , LOOP
¡8 K D B8 > E B /_Z @S 8 P W( E
`M B € /a X T LOOP +' @%
8 90 8 H % € 8Z 6 •
Ž ' `Q 8 %= 6

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 /%H r ;2 ' r 6s' "67 8 90


€ / D Ÿ

t I <
| D |// Y ; ’ ¦{ ƒ 0 $% = t $%
|/# 8 8 /v 0 $% E0 D !s ’
I t | $|% |‰ | € // E %8 E# 0 •+/
> |v/ % |0 YS T 8 K FFFFH UUUUH = 9
| t € | | $|% „UUUUH | FFFFH = % 0
8 € |' 8 | 8 |! |B:/ 8 m 8 +%
|! "# & |' 8 |NS | $% 9 I t LU<
¬ = / 8 +# t 8 € 8
* Q ` X8 K ( ' = M / =
€ % 0 D B8 E 08 Â ' 7 )
n 8 * +, x = D `90 LU< t
€ ' D – F 8 /9; 90 Q
— P TMOD TCON * +, 9+7
— v% * +, 8 NS E0 t E7 2 :/
4TH THU „TL „TLU3 t ^% T G E%
€ /9;

t E7 2 * +, I <

E7 2 E0 9 8 NS D B TMOD * +,
Ÿ € //! ^ 6 8 t U t 8
€E0 D H 4 <3 8 * +, e% N9 A% °
¬ /_Z Z' + 9sT 8 E7 2 5 ³# "Œ M 1 M 0 E

TMOD

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

UU ¬ `M E7 2
@|% *8 M % U O t E0 ‡ ) t
OG E% _ *8 M e% //_Z 8 _ ‡ ) ¡ '8 K
(TL) t | ^% T E% = } % T E ¨/T (TH) t
€ '8 H 8 ‡ ) t @% ' 90 T Y
45 ) a 3

U ¬ @% E7 2
^% |T O E% f 0 ‡ I t @% E7 2 e%
t | _ ‡Q € /_Z ² % U O t 8 G
|9 Z| • ` %= 0 @% 8Z UUUUH FFFFH =
a| 3 € |/_ Z| @|% 8 TCON 8 t %8 0 YS T
4)|5

TMOD * +, M{ <
E > ' ¡8 K a "# Ÿ
t
J GATE u @% > v/
D 8 ‡Q t
@% INT1 _ 9 Z

I ] T t r ‹9' E
C D '8 K %
< M E7 2 E
5 Mo ( E7 2 E
) GATE U G "# m
t 8 8 8
€ / > Š `M
( T U G "# m
C/ 8 8 8
M U > Š `M t
U MO U /

U ¬ E7 2
Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

E% _ E0 8 _ 8 E7 2 @% E7 2
/_Z "# ‡ L t @% /# u t ^% T
8 ΠO[B8 O 8 @% u t OG E%
H UU FFH = D '8 K _ Z v/ € 8 Z D v'
4)|5 a 3 € %Z X8 K /_Z %8 0 8Z
¬ 0 E7 2
‡ L O Œ t U t uE7 2 e% 8
€ Z Y ;
"# Πt /# THU TLU O t
9Î8 TF TFU 8 P …H %8 0 //_Z
€ ' Z
£ ™ 0 €E0 AQ 9 E7 2 e% 8 t
& ' Z v% O N97 2 = Za% H _
E0 e% E7 2 e% 8 t E% 1 N/ € /_ 8 _
?' }6% € [,¶ ' Zc 8 %8 0 YS T _
4)|5 a 3 €E0 D > 0 t @% O 8 LU< 08Z

$ " # TLX THX


TFX

$ " # TLX TFX


THX

$ " # TLX TFX

!
THX

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

$ " # TL TH

$ " # TL TF

Fosc TH TF

& %
E7 2 4r3 U E7 2 4A7 3 t N97 2 ) < !
) E7 2 4*3 (E7 2 4¦3

t :/_ * +, ( I <
U t E 6F :/_ O E * +, e%
D `90 Q O 8 O N9 = @% Z
€Y /a %= 8 8 E 8 _ € Z
TIU > ' U Z 8 `Q +7 YS T ¬TCON.
€ Z D '
IT > ' Z 8 `Q & ' YS T ¬TCON.(
€ Z D '
³ 6 E e% u Z 8 `Q +7 YS T ¬TCON.)
D ' IE > ' `Q E";Q 8
€ Z
:/_ E Z D ' TRU > ' ¬TCON.5
€E0 U t 8 X8 K ' 8
Z D ' TFU > ' E e% ¬TCON.<
Z U t %8 0 YS T

TCON

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z D ' TR > ' E e% ¬TCON.I


O8 > ' *8 M E0 t X8 K ' 8 :/_ E
€ 8Z 8 _ t _ X % e 8 O
Z D ' TF > ' _ E e% ¬TCON.J
%8 0 u @% t 8 B E0 @% t %8 0 YS T
€ Z @% E e% u 9` • `
`M O t Y ' Z N9 e% = @% ^ 6
E Y ' Z _ O 8 _ / 8 @% %
€“[v

t :/_ AQ u8 _ & J <


a Z D s 45 <3 a 8 _ 8 .' m
e% E2 8 € 8 t E# 0 • / O A 9‘
D `90 t _ AQ 9 8 _ & O D 8
pT _ Z TCON 8 (TRX) X8 K ' 8 :/_ E =
t _ Y /_Z D s pT € Z z T reset =
8 …H a/% v /9; AQ 9 ¿ x T *8 M
€Y /_ O= ' D 8
GATE E = D `90 45 <3 a - . v% X 8
@% u GATE B Z INTX O 8 TMOD 8
€ :/_ INTX _ Z D= t

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

t 8 E7 2 ! "# 5 < !

= D `90 Y /_Z ‰ 8
€ :† t

@% Y ;% / ' @% Y Z < ‰
€ / 7 P WU f% T 8 U KHZ f90 T Z6 ¤
pT U KHZ p' _ Y Z S ¬ 2
P WU f% T 8 @% 8 <U usec `M 8 <Uusec
E0 r . ¤ a 8 _ e% 8 a / 7
t 8 "| <Udes" pT E0 8 K G • S € %H
`M “8 KZ "| <Ud" = D8 `M ‡Q Y Z
¬ Y /_Z D `90 `M t E7 2 = pT
U UUH ORG
MOV TMOD, # U(H ; mode (
MOV THO, Ã-<U (decimal) ; THU = <U
SETB TRO ; timerU is on
LOOP: JNB TFO, LOOP ; waif while C=U
CLR TFU ; Clear C of timerU
CPL Pl.U ; Send to P WU
SJMP LOOP ; Go to Loop
END
E0 ' OG EQ YN f9a' ' e% 8
% TFU _ @S 2 8 ' _ ‡Q _
E0 8 _ t S uE0 Z p7 T 90
€ /_Z X8 K

U KHZ 90 T Z6 ¤ @% Y Z ( < ‰
¬ Y /_ 7 P WU 8

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

= % pT D %= p' _ S i/% 8 ¬ 2
(<I = :s X8 K ¡ 1 S “8 "s `M <UUd
¬ Y /_Z D `90 ‡ I t = pT E0
ORG U UUH
MOV TMOD, # U H
LOOP: MOV THU, ÃUFEH ; FE → THU
MOV TLU,# UCH ; UC → TLU
SETB TRU ; Start counter
WAIT: JNB TFU, WAIT
CLR TFU
CPL P WU ; out to P WU
SJMP loop
END
9 8 8 _ `M t @% S ' e% 8
_ 8 Y /_ Z 8 8 t > % pT
e% €Y /_ pa# 8 Z 9 • ` %8 0
8 S 8 +Q f ' E+;' O:"_ EQ '
E0 t ¡8 O= ' D 8 ls ' _ Z' =
8 . e% = _ Y ?/ % 8 KZc t
€ ^ =

% 0 D B8 * "# L <
$% 8 $% % 0 D B8 @% LU<
= Z6 0 ¡ 1 8 A 9‘ O E7 2 8 _ E0
> Š u % 0 D B8 Z M ` ° € /_Z 8 _ p' _
% + Z ¡ O % 0 O= % + "#
E";Q e% 8 €E0 O 8 ¡ O O= % 0
€“= TZ % 0 D B8 A M

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

-% o = % 0 D B8 O8 E‹0 Z 90
O TXD € ' {
¯+Q _ E0 RXD TXD O % T
% 0 ¡ E %8 O RXD O 0 ¡ 08
a SCON SBUF n 8 _ * +, € ' 8Z 8 _
Y % 0 D B8 8 O8 > ' Z 90
8 Q VVH 8 H8 E0 ‡ L @% SBUF € '= 0Z
u 08 % _ 8 O D SBUF 8 b ' € 8
:0 8 8 ‡ %8 ¡ SBUF ' /_Z 8
€ Z 8 Q

E7 2 L <

E7 2 e% E0 SM =U SMU= E7 2 e% 8
[\3 a/0H *8 M D € /% BZ ‡ Es UART
' 08 Â ' [BZ 8 Q Z O 8 4 m
€E0 [l9
@% 9 _ E0 P e% a/0H 08
@% 4 LSB 3 D E Es „4 U s m3 = \H E
% Y ' $% „$% = *µ 4 s m3 % T E
D 90 % 0 E U ³# "Œ k7 € Z D 90 E
8 H % € [BZ *8 M -% o ^m ' E %8 Z
RBL % T E „E %8 * "#
s m E7 2 e% 8 = \H E € 9/ SCON 8
E# 0 O p7 T "# €E0 @% s m % T E `M
%HZ E0 )( % I t p' _ Y ;
€E0 [l9 t p' _
D H 4< <3 a 8 A 9‘ O E7 2 E# 0 • /
€E0

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

% 0 D B8 E# 0 • / < < !
) E7 2 4¦3 (E7 24r3 U E7 2 4A7 3

( E7 2 ( L <

UART > ' E0 SMU=U SM = E7 2 e% 8


08 Â ' € Z D ' E , 08 Â ' ‡ V

E @% u 08 & ' e% 8 € Z %

% T E /# H E = \H E /#
_ E0 O %8 ' Q Y E 9+7 € ' Z Z
. _ E; O 9 kB H 8 =
% 0 E D = % ³# "Œ € 8 8 _ D E L 8
€ Z E %8 % D 90

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

) E7 2 ) L <

E7 2 e% SMU= SM = E7 2 e% 8
/' /% BZ [l9 08 Â ' ‡ V UART
Q u 08 Â ' _ * ` e% E0 +Q E7 2
E7 2 e% € Z Y t •0 E0 O %8 '
t = D `90 €E0 D H 4< <3 a 8 '
€Y /_ ² [ l9 p' _ ) O E7 2 8 Y ' Z
E , O 8 p' _ u ( U O N97 2 8 _ Z 8 M 8
€E0
% 0 D B8 7 8 ) < ‰
€$% 8 (5UU E%8
¬ 2
ORG L UUH

INIT: MOV SCON,Ã<(H

MOV TMOD,Ã(UH

MOV TH ,Ã- )

SETB

END

8 8 %= e%:7 9 = „ 6 ‰
/6% „ RS()( ' % T ! N"9; 0
€ / : 8 8 : 8 ¤

08 : 8 ¤ 8 %= 5 < ‰
D B8 -% o = D8 +' 8 •Q 9 E` ASCII
> v/ €E ^"9s /# = LU< % 0
= +Q 8 2 % D8 +' „ 8 %= = EsB=
€ 8 %= '

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

ORG L UUH ¬ 2

OUTCHR: MOV C,P

CPL C
MOV ACC.J,C
AGAIN: JNB TI,AGAIN

CLR TI
MOV SBUF,A
CLR ACC.J
RET
END

E` ASCII : 8 8 8 %= < < ‰


LU< % 0 D B8 -% o = D8 +' 8 9
> v/ € ' B 4E ^"9s /# 3 =
= +Q 8 2 % D8 +' „ 8 %= = EsB=
€ 8 %= '
¬ 2
ORG L UUH
INCHR: JNB RI,$

CLR RI
MOV A,SBUF
MOV C,P
CLR ACC.J
RET
END
`Q L <
' $% AQ 9 š# E0 97 2 `Q
€ 6 v% ' $% •0 „
Z 8 `Q @% E0 O8 _ > Š 2 8 CPU ‡Q
`Q > Š CPU Z AQ 9 8 8 90
Z +Q ' O `Q % T = pT = TZ
€ BZ

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

@% Z `Q — _ O '
„ `Q = 7 ‰ € Z D ' (ISR) `Q p% 0 8
YN 9!' €E0 d`M •0 * #{o 8
[\ 8 . R‹ •0 8 E0 H ‰ e% 8
> ' •0 H & Q = /6% „ 8 m
•Q 8 E; ' :/ / x T Q +Q = 8
€^m /6% `Q

`Q = 0 L <
`Q u 8 `Q •+/ ¨/T LU< 8
`Q € % 0 D B8 `Q @% Z 8 `Q „ t
O %8 ' Q …H > q '8 E , O q
€ Z

`Q 6 [\ 6 ( L <
E -% o = „ Œ 8 . `Q • / = $%
4 `Q D // 6 3 IE * +, •0 „ M ‘ %kT 8 H
8 IE * +, € ' 6 [\ % 6 UALH 8 H
`Q D //_ 6 [\ % 6 8 8 Q UALH 8 H
¬E0 %= 8 Q * +, e% N9 Ÿ € Z
_ 6 € Z D ' EXU > ' ¬ IE.U
€ s > Š E e% Z 8 `M `Q
6 O Z D ' ETU > ' ¬ IE.
€ 8Z 8 _ U t `Q _
Z 8 `Q D //_ 6 EX > ' ¬ IE.(
€E0

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

t `Q D //_ 6 ET > ' ¬ IE.)


€E0
% 0 D B8 `Q ¡ //_ 6 ES > ' ¬ IE.5
€E0
€ ' ^6 ' E e% LU< 8 ¬IE.I IE.<
[\ % 6 Z D ' EA > ' ¬IE.J
8 ! "# e% = % K €E0 `Q Z _ ¡ //_ 6
€E0 D D s' 4I <3 !

`Q > ) L <
-% o = `Q –.0 = Za% 8 `Q •+/
UBLH 8 H 8 IP * +, 8 ZM ‘ %kT 8 H E
@% _ O `Q > ./ –.0 € Z O %8 '
`Q B Z / T G >
E , O P @% u '[v 8 Q > @% m
> O `Q € 8 %= P - .
¬ / P e% IP 8

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

!
LU< 8 `Q 8 9 0 = % c 4I <3

Y9; 0 _ Z v/ Z 8 U `Q > ¬ I.P.U


(PXU) € 8 8 > e%:s `Q e% D reset
€ (PTU) `M t `Q > ¬ IP.
€ (PX )Z 8 `Q > ¬ IP.(
€ (PT ) t `Q > ¬ IP.)
€ (PS) % 0 D B8 `Q > ¬ IP.5
€ ' D s' A% 6 IP 8 N9 f

`Q O 5 L <
¬ Z %= * Ï "# „ `Q @% & Q > v/
€ Z ' Z 6 "67 8 90 •
€ Z D 8 Q 9sT G 8 PC •
€ Z O8 `Q •

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

AQ 9 `Q e% –.;m O `Q •
€ ' Z
€ Z 8 u ISR & 8 H PC •
€ Z ISR •
= EsB 3 RETI "# 8 90 > Š 0 •
€ %kT % T `Q 4 `Q

`Q YS T O N9 < L <

TCON 8 ' Z +Q O x• 8 _ N9 e%
e% 8 f 0 '8 8 Q SCON
B {
¯‰ „ _ Y ?/ 8 `Q ! "# Z N9
E 3 TF % uY /_ 6 8 `M t `Q Y •
€Y /_ Set 8 4TCON 8 Y9s

`Q O 8 I L <
# u [BZ 8 Q X %kT 8 `Q @% _ Z v/
•Q 8 _ Z D ' `Q 8 PC 8 D 8
8 H @% `Q €E0 `Q •+/ O ISR & 8 H
8 H CPU 6 _ Z6Q 8 ZM 9
e% € /_Z 8 `Q 8Z `Q H —
¬ /9; P e% 8 H
Y9; 0 Reset
UUUUH
`Q e% E% 7 /# reset E 2 8
€ Z
UUU)H ¬ Z 8 `M `Q
UUU)H ¬ `M t `Q

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

UU )H ¬ Z 8 @% `Q
UU )H ¬ @% t `Q
¬ % 0 D B8 `Q
UU()H

E0 D 9 B ?' 8 E% L `Q O
e% 8 :s E% L = ISR f ' •' /S
Y /_Z JMP ? 2 8 v% 8 H @% N08 H
. ' !/% Y ISR O ” _ ¡= ' Y
reset = pT {
¯‰ € / [ l 6 `Q H 8
E0 ea¥ Z M f ' % Y9; 0 _
8 H 8 k7 „ E% ( = :s Z M f '
€Y /_Z X T v% 8 H UUUUH

`Q = D `90 Y Z I < ‰
€Y /_ 7 <UUHZ JKHZ Z6 ¤ m 8 o
¤ P WJ f% T 8 8 JKHZ Z6 ¤ $ KX
JKHZ p7 T O €Y /_Z 7 P WI 8 8 <UUKHZ
P ^m @% J ms `M J ms % Z
@% ms `M ms % Z <UUKHZ p7 T O
( E7 2 8 `M t `Q JKHZ ¤ 7 €
E7 2 8 t `Q 8 <UUKHZ ¤ 7
¬ Z %= *8 M ' e% €Y /_Z 7 @%
ORG UUUUH
LJMP MAIN

ORG UUU)H ; TimerU Vector address


LJMP TUISR

ORG UU BH ; Timer Vector address


LJMP T ISR

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

ORG UU)UH
MAIN : MOV IMOD, Ã (H ; timer = mode
MOV THU , Ã-J d ; timer U =mode(
SETB TRU ; -J desimal → THU
SETB TF
MOV IE , ÃLAH ; Wait to interrupt
SJMP $

TUISR: P WJ
CPL
RET
T ISR : CLR TR
MOV TH , # UFCH ; - UUUd → TH , TLL
MOV TL , # Lh
SETB TR
CPL P WI

RETI

' `Q = D `90 J < ‰


3 8 ASCII # "Π90 T 8 . ;% /
08 % 0 D B8 ' % T 4 7:/
4 % 0 D B8 `Q 3€ /

¬ 2
ORG U
LJMP MAIN
ORG UU()H
LJMP SPISR
ORG UU)UH
MAIN: MOV TMOD,Ã(UH
MOV TH ,Ã-(I
SETB TR
MOV SCON,Ã5(H
MOV A,Ã(UH
MOV IE,ÃVUH
SJMP $
SPISR: CJNE A,ÃJFH,SKIP

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

MOV A,Ã(UH
SKIP: MOV SBUF,A
INC A
CLR TI
RETI
END

:/ $% u `Q = D `90 ¬ L < ‰
(UÐ 8 8 / 2 o LU< D8 D //
4 8 `Q 3 € 8 v' B 9' 0 8
e 8 D8 3E0 [B8 £ T Y 0 ! 7 2 8 ¬ 2
p WJ = 4E0
4E0 X D8 3 E0 =H £ T Y 0 ! 7 2 8
p WJ = U
P : D 9 INT 1 INT 0 D // p2
² *8 M 8 COLD HOT - /v 0
T>( °C B ¬ //
HOT = 0 u

COLD = 0 u T< V°C B


¬E0 %= *8 ' b
ORG U
LJMP MAIN
EXUISR: CLR P WJ
RETI
ORG UU )H
EX ISR: SETB P WJ
RETI
ORG )UH
MAIN: MOV IE,ÃL<H
SETB ITU
SETB IT
SETB P WJ
JB P)W(,SKIP
CLR P WJ
Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

SKIP: SJMP $

Ys

7:/ !

I
VL 0 8 LU< 7:/_ a E 0 >{#
D ' §# ^7 }6% u 9/% E_ •0
E s T * 6.Q e% u MCS-5L TM O 7:/_ a
LU< D ' [?' Z% -:/_ a € ' _ O[v"sS
O 8 u ' 9 ' 8 8 D `90 e%:s _

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

> # Z j H = _ ' Z% +"_


p% ' %=3 TWI O ?' Z% • 8 b ' „Watchdog Timer
= D ' e% * ' a %= & / > # 4
€ c D8 O 7:/_ a
e% Z y a/% D {# AVR O 7:/_ a
*{as u /9; 8 8 Z +Q O 7:/_ a * ' a
D c Y ' 8 w' * ' a D _ • 8 8 …H
ATMEL E_ 1 _ ‡ L O 7:/_ a e% € '
(High = O Q % _ E # / Z
O %= D `90 + 90 8 Level Languages) HLL
€ ' 9 B 8 Q
90 0 8 AVR O 7:/_ a ATMEL
¬ _ Y ;
Classis AVR €
Tiny AVR €(
Mega AVR €)
O 8 7:/_ a e% = 90 0
• N/ € /9; Z' ;a% ? 2 a "67 8 90
O 8 Tiny AVR 90 €E0 …H 8 * ' a 8 …H
8 € ' % T 6 e%:"_ O 8 * ' a e%:"_
Classis AVR 90 E0 …H pa# Q Mega AVR _ q 2
Mega AVR Tiny AVR }6% 90 e% ^ E7 2 '
€E0
"67 8 90 _ E0 e% AVR e0 1 = v% Za%
€E0 C % _ 8 B= 0 Z *8 M H O

Pin

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

/v 0 % T ( I

/v 0 = Z uAVR D ' O 7:/_ a 8


= ' Z / Z ZM 9 % T O 8 O
D `90 z:s 8 o u v% O /v 0 R9‘ % T
¬= / 8 +# //_Z
O x• %kl Z`/ E+‰ O % T ¬GND VCC
€ 9 ²
x• %kl Z`/ E+‰ O % T ¬AGND AVCC
ۄ 7 'H
p7 T @% uZ 8 E;%8 /v 0 ¬4O 8 3 RESET
*8 M 8 ‡2 uO 8 e% 8 ' , ' ' <U Q 2 o
7:/_ a E;%8 š# Y9; 0 z{_ +' 8 Q

e% ¬4Z 3 XTAL ( 4O 8 3 XTAL
0 '3 Z = 0 0 ' Z O 8 _ /v 0
8 _ o * 6.Q EN u / Z 4Z M = 0
€ ' 8 Z
z{_ %kl EN /v 0 e% ¬4Z 3 CLKO
€ Z D `90 Z 8 O 8
/v 0 e% ¬4Z 3 TOSC ( 4O 8 3 TOSCI
Za% — 3 Z = 0 0 ' @% Z O 8 _
9;% _ EN u / Z 4 t ] D '8 K =
€ ' 8 Z 8 _ ^% T p' _
¬4Z 3 A <….AL 4Z ] O 8 3 ADJ…ADU
Z 8 ? 2 4A <…AU3 Z 8 H EN /v 0 e%
? 2 7:/_ a ^ 4DJ…DU3 D 9'
D ' * 6.Q ‰_ 9+7 € ' 8 Z 8 _ Z 8
€ / + Z 8 ? 2 Z 8 H a Q AVR

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

v' :; 8 :/_ EN % T e% ¬4Z 3 ALE


€ 8 Z 8 _ 8 H ^% T O E D '8
:/_ EN /v 0 e% ¬4Z 3 WR RD
Z 8 _ b ' ' > v/ 8 Z 8 ? 2
€ ' 8
+ x• Z 8 • ~ 97 ¬4O 8 Ḡ "6 3 AREF
€ 9 ² Ñ 7 'H
O 8 O ' _ u /v 0 e% ¬4O 8 3 ADCn
€ / Z 9 ² Ñ 7 'H + 8
e% ¬4Z`/ O 8 3 AIN 4E+‰ O 8 3 ADNU
Z Ñ 7 'H D //_ ;% 8 O 8 u /v 0
€ /
O 8 % T3 €€ PCU…PCJ, PBU…PBJ, PAU…PAJ
= E @% — % T e% = @% ¬4Z
> œ 2 u*8 T ' s' 4P3 œ 2 € Z *8 T @%
D / s' > 0 4 #3 œ 2 *8 T > ' D / s'
€ Z *8 T 8 E D8 K
8 Z 8 z{_ O /v 0 ¬4O 8 3 INTn
€n D8 K t ] D '8 K
D '8 K 8 Z 8 z{_ O /v 0 ¬4O 8 3 Tn
€n D8 K t ]
EN /v 0 e% ¬4Z 3 OCnC OCnB, OCnA
8 _ n t ]D '8 K 8 D 7 ¤ a % 8
€ ' 8 Z
= O8 ' c EN /v 0 e% ¬4O 8 3 ICPn
8 _ n D8 K t D '8 K 8 D '8 K O 91
€ 8 Z

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

E %8 /v 0 ¬4Z 3 TXD 4O 8 3 RXD


€USART UART O 8 8 08
8 Z' = Y z{_ /v 0 ¬4Z ]O 8 3 XCK
9' E7 2 8 N/ /v 0 e% € USART 8
€ Z 8 _ O 8 a/0
/v 0 e% ¬4Z ]O 8 3 MISO MOSi, SCK
Z 8 _ SPI 8 Z' = Y E %8 u 08 EN
€ ' 8
Slave E7 2 8 N/ _ /v 0 e% ¬4O 8 3 SS
8 _ ?' 8 Slave r ‹9' EN u Z A% 6 SPI
€ 8 Z
TDO 4O 8 3 TDI u4O 8 3 TMS u4O 8 3 TCK
uE7 2 r ‹9' uZ' m EN /v 0 e% ¬4Z 3
€ ' 8 Z 8 _ JTAG 8 D ¤ 8
`Q ² O /v 0 e% ¬4O 8 3 PCINTn
Z 8 _ 7:/_ a 8 4 /v 0 E7 2 [ l , 3
€ ' 8
z{_ O /v 0 ¬4Z ]O 8 3 SDA, SCL
€TWI % I(C 8 D
> ' Zo + 8 T /v 0 e% ¬4Z ] O 8 3 dw
e% € Z debug WIRE Y9; 0 Ñ +% O 8
/v 0 @% -% o = 3 o % 0 a — + 8
€ Z 4z:s

8 * ' a ) I
* ' a uZ = T Y9; 0 @% Z _ A% 6 0
Y ; %= D B 8 NS Z 8 AVR 8
¬ _

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

CPU •
? 2 •
:/_ O= ' D 8 * 8 •
4Z ] O 8 3 I/O O 2 •

) I

uAVR 8 CPU Z2 o > v/ 8 Z M œ


±`2 8 /_ 8 G –.0 O = = P0 / Z' + 9sT
‰_ 2 8 H E0 O €E0 D *8 Q ZB 0
RISC & ' ZM 9 CPU @% = AVR 8 uZ = T
€E0 D D `90 Harvard8 9 0

8 H O § ) I
O s• E# 0 O Harvard 8 9 0 8
8 X= T 8 O D ' _ u '
Z0:0 O CPU ' B Z D[ • Œ Za% ? 2
Z `9 D B8kB = ? 2 e% = @%
•{o Ç § Æ Ns• e% = @% _ /_ Z D `90
€ Z

' O § ( ) I
= uE0 D D[ • ' ? 2 8 _ ' _
CPU 8 9 8 Ç ' O § Æ > ' Z% § -% o
= ' ? 2 8 * 8 90 € [B Z 8 Q
8 u ' B Z +o @% Pipeline Y9; 0 @% -% o
O 6 8 90 u Z 2 8 8 90 @% _ Z

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

:; 83 EQ Z' a 8 D D ' ' ? 2 =


8 H Q ' O § ‰_ 2 € Z D[ 48 90
€ Z 4E% v L3 " _ v 8 NS AVR 8 Z

D O § ) ) I
D[ • X= T 8 O D E %8 O CPU
D `90 ÇD O § Æ > ' Z% § = u M 2 ¨% 9'
-% o = _ ' w' O 2 CPU — + 8 € /_ Z
= u [B Z *8 M 2 e% D _ 8
€ %kT Z > Š D O § ^m 8 O D•% x• -% o
I u AVR 8 Z 8 H Q D O § ‰_ 2
D O § uZ% 8 _ x% O € Z E% v
%= 8 8 9 _ E0 D % B Y ; O:aS _ x•
¬ ' 9 B 8 Q Z08 8
:; 8 O § A7
O § -% o = Z "# O :; 8 _ Z0:0
)( AVR 8 :; 8 O § € [B Z > Š :; 8
O § 8 Z "# O :; 8 € Z 4:; 8 )(3 E%
0 D O § 8 :; 8 > ' 0 :; 8
€ Z Z0:0 Q 6 8 H
I/O O § r
Z 4:; 8 I53 E% I5 AVR 8 I/O O §
I/O 8 H 0 I/O O § 8 I/O O :; 8 €
Z Z0:0 Q 6 8 H 0 D O § 8
€ /
RAM O § ¦
O 9 8 Extended I/O I/O u:; 8 O § = pT
Zs• € 8 8 Q D ? 2 AVR 8 D Ñ8 O §

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z n 9 Z SRAM 8 D ? 2 e% =
Z 8 ? 2 *8 M D ? 2 Z €
€ :0 8 XRAM > '
Z "# O :; 8 *
8 Z% … 1 7 4 # 3 D
> v/ 8 % D e% € Z Z = T Y9; 0
€ '[B 8 Q (ALU)CPU :0 8 P0 / Z' a 8 X= T
O > ' ‡ L Z "# :; 8 )( 6 AVR 8
€E0 D +6 R) RU
p_ /% O :; 8 Ò
Z ? 2 8 E ,[\ O a Z0:0 O
D `90 Y 9; [\ Z 8 H A 9‘ O X 8 =
D Y 9; _ R‹s O N 8 e% 8 € _
:; 8 @% O 91 = uR‹s 8 H @% = D `90 %
8 € Z D `90 ?' 8 D 8 H ^ 6 O
D 9 B ?' 8 X 8 e% O ZM O :; 8 AVR
€ Z D ' Çp_ /% Æ :; 8 _ E0
-% o = p_ /% O :; 8 O 91 Z0:0
€ [B Z > Š 9 8 8 _ Z "# O :; 8
Z D `90 Z Y,X O > ' = _ p_ /% O :; 8
q 9 :; 8 P _ = @% D ‡ I u //_
€ B Z as Z "# :; 8 8
d`M O :; 8 ¤
' c 8 Z 8 H O § D= ' x%
Z 8 H p_ /% O :; 83 ‡ I 8 H u:B8
€ Ê § e% Z y Z 8 H 8 Q 4Y 9;
Ç d`M :; 8Æ > 0 O v% :; 8 E7 2 e% 8
x% E (5 8 H ¿ # D P _ 8 H

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

?' 8 8 H O § > y Z 8 H O _ Z
€ Z D `90 Q AVR 8 D 9 B
E 6F :; 8 Ó
as D E @% = 'H = @% _ Z #{o
4 ALU 3 CPU O8 E 6F Z D ' Ç‚ Æ D
8 v% a% 8 /_ 8 ‚ e% € '= 0 Z pa6/ 8
€ ' B Z D[ • 4E 6F :; 83 SREG > ' O:; 8
R9‘ 8 _ > ' O 8 SREG :; 8 8 ‚
¬ B Z /# @ a` %= 8 _ D
E+, O ‚ e% ¬4 `M D8 K E 3 C ‚ •
?' 8 Z +0 1 * "# e% H 8 %8 0
€E0 D 9 B
`M ' s' ‚ e% ¬4@% E 3 Z ‚ •
Z Z +0 1 * "# e% H 8 M 2 #

Z`/ ' s' ‚ e% ¬4 E 3 N ‚ •
4 "a X 8 +0 1 ¿ 3 M 2 #
@% Z Z +0 1 * "# e% H 8
' s' # @% 8 E 4e% X=8 T3 e% H
€ Z H Z`/
%8 0 E+, O ‚ e% 4 0 E 3 V ‚ •
e% H 8 4 "a X 8 +0 1 ¿ 3
€E0 D 9 B ?' 8 Z +0 1 * "#
# M 2 # 8 E {# E * `9
@% 8 %8 0 ' s' +0 1 = x T # %
€ Z 8 E {# #

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

6 _ ‚ e% ¬48 NS E 3 S ‚ •
* 8 90 8 D `90 O u Z V ⊕V
€E0 D 9 B ?' 8 Zo
%8 0 E+, O ‚ e% ¬4¨/T E 3 H ‚ •
* "# e% H 8 5 E ) E =
€E0 D 9 B ?' 8 Z +0 1
D `90 8 ?/ ‚ e% ¬4x E 3 T ‚ •
8 ‡ 9' O BST BLD * 8 90 8
€E0 D 9 B ?'
E 6F E+, O ‚ e% 4E` E 3 I ‚ •
D 9 B ?' 8 CPU 8 `Q X %kT Z "#
€E0

' D '8 K Ÿ
" _ 8 H E+, ` ° 4 ' D '8 K3 PC :; 8
8 PC :; 8 € 8 D N# 8 2 8 8 90
Z Z `9 O E 6 O 8 A 9‘ O ' c
9 B ?' 8 ‡ (( E% 1 q u
O E 6 ‰_ 2 u "67 8 90 # "Œ 8 D
D[ • > v/ 8 € E (( „PC :; 8
O 8 O ' c 8 PC :; 8 u 9sT 8 Z %=
8 ‡ I u ' ? 2 E% _ (L ‰_ 2
u ' ? 2 E% _ (L = x O 8 O ' c
€ Z 9 B ?' 8 ‡ (5
9sT B D8 Â
YN u ' %= @% Z' = ' > v/ 8
Z [0 EsB= a ² Ô; e%
:; 8 O 91 D[ • O Z ' a 8 ?/ e% €

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

H Z %= uZ' > v/ 8 4EsB= 8 H3 PC


e% €E0 D 9 B ?' 8 ' %= % T pT
> ' 4Stack3 9sT u Z FIFO ? 2 @% _ > ' a
€ 8
Z 4SRAM 8 3 D O § 8 G "6 9sT
9sT B D8 3 :; 8 @% 9sB as ' 8 *8 M
9sT 8 =H E% ^7 s m _ 4Stack Pointer %
€ [B Z D N# 8 TOP E+, ` ° u /_ Z D8

? 2 ( ) I

= @% € 8 ? 2 = ' B 0 AVR 8
_ Z R9‘ 8 _ O 8 ? 2 e%
€ B Z @ a` 8

' ? 2 ( ) I

' _ D[ • O Flash ? 2 @% = AVR 8


x• AVR 8 ? 2 e% €E0 D D `90
x•3 Boot Leader 4 ' ? 2 Z% 9 x•3 Application
€ Z Y ;` 4 ' ? 2 Z% N9'
Application x• A7
' ? 2 Z% 9 x• 8 _ Application x•
Z 8 _ ?' 8 ' _ D[ • O u 8 8 Q
8 90 ux• e% = * 8 90 O > v/ € 8
£ x• e% i 9' 8 € 6 [\ SPM
€ Boot Leader _ O 2 ' Zc
Boot Leader x• r

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

' ? 2 Z% N9' x• 8 _ Boot Leader x•


€ 8 Z 8 _ Boot Leader _ D[ • O u 8 8 Q
8 90 ux• e% = * 8 90 O > v/ 8 N/
' Z x• e% • i 9' 8 € 6 SPM
_ ' Z SPM 8 90 € Boot Leader _ O 2
x T 8 Boot leader x• j = ' ? 2 O §

XMEM SRAM ? 2 ( ( ) I
I/O u % :; 8 = pT3 D O § D ' ZQ
8 > ' O ^2 8 D D[ • O Extended I/O
? 2 @% § e% = ZaS _ x• € 8 Z 8 _
Z n 9 u Z 9 / SRAM > ' _ Z
Z „:B8 D ? 2 = ' *8 M 8 € %
> ' ? 2 e% € _ D `90 Z 8 ? 2 =
€ Z 9 / XMEM

E(PROM ? 2 ) ( ) I
Z% D : 8 T q:/_ * 8 8 Z B
±`2 % ' %kl % •.Q *8 M 8 ‡2 _ '8
O : 8 T uY9; 0 * " ?/ [?' Z% D € ' B
8 D O8 H •j O D Z B O8 E 6F uO 8
8 e% O 8 _ D 8 [9† = Za% €8 _ ^2
8 AVR € Z E(PROM O ? 2 = D `90
uZ M ƒ S O 8 8 E(PROM ? 2 = q 6 8
? 2 €E0 D _ ™ 8 Ô; e% O w0 / «0 T
a 0 UU]UUU X %kT E Q AVR 8 E(PROM

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

U = x * * #{o O8 Nv' d`M 8 b '


€ Z 8 8 0

:/_ O= ' D 8 * 8 ) ) I
Z `9 O x• O= ' D 8 :/_ * 8
% z{_ 7 /' Z% 8 € ' B Z Y ;
Z Z 7 7:/_ a a "# O Power on = 08 a H
:/_ Y9; 0 % E;%8 v% O 8 q €
€ ' 8 Z 8 _ H _8 _ +† O N/

z{_ 7 ) ) I
8 z{_ ² > Q /' Z Z` 9‘ • /
?' 8 z{_ •+/ r ‹9' O € //_ Y9; 0 = '
CKOPT, CKSEL O E = = z{_ 7 _8 _ X 8
0 ' 8 Z p' _ € Z D `90 CKDIVL
Y ?/ OSCCAL # @"_ Z 8 Z RC = 0
8 _ p' _ x _ O Prescale D //_ Y ; @% € _
8 Y 9; E+;' €E0 D 9 B ?' 8 7:/_ a
r ‹9' CLKPS ‡ 8 NS # -% o = D //_ Y ; e%
p' _ = Z § ² O PLL 8 @% € B Z
€E0 D 9 B ?' 8 Z M z{_
0 '3 Z = 0 0 ' = D `90 > v/ 8
4O 8 3 XTAL O % T = E;% Z u 4Z M = 0
8 ' =8 % 9;% _ EN 4Z 3 XTAL (
€ _ D `90 o * 6.Q Za 0

Reset ( ) ) I

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

E;%8 p7 T ² > Q /' Z Z` 9‘ • /


Z x% O D•% x• •0 p7 T e% o € //_
CKSEL, FSTRT O E = O %8 ' € %
• / € _ ^ 6 8 x% e% Z SUT
€ / Z %= Ÿ E;%8 /v 0 ² O ea¥
External Reset Õ A7
u <UnS Q 2 * Z 8 E;%8 % T _ `M
O } "§ € B Z E;%8 /v 0 6 š#
e% = D _ O 8 O p7 T % E;%8 p7 T ²
€ 8 ' 2
Power-On = 0 8 a H r
e% O _ ^% T 2 %= %kl ~ 97 E
D 6 E;%8 /v 0 uD 9 B ?' 8 8 ?/
ZQ E7 2 ^m 8 G 2 %kl ~ 97 x% =
€ ' Z
Brown-Out = 08 a H ¦
Y™ E+Q 6 *8 M 8 8 e%
2 %= %kl ~ 97 E *8 M 8 u %kl ~ 97
e% € /_ Z E;%8 /v 0 ² > Q D ^ 6
D ^ 6 2 %kl ~ 97 EsB= = /v 0
€ % Z
JTAG Reset *
8 7:/_ a JTAG 8 Reset E @% * 8
JTAG Z% / H O € ' Z ZQ E;%8 E7 2
6 ^m 8 O %8 ' Ñ +% O > ' a

+Nv' t Ò

Watchdog Timer

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Z = T Y9; 0 @% [B +% B _ Z ™ ; = Za%
> ' E0 = :/_ ¤ % ‚/ Ô; u Z
e% = š# ' Z Z` 9‘ %G € Z 8
€ B as
Z Latch-Up œ 6 ‡7 2 = u 7 e%
8 € B Z O " ' 8 9 0 — _
ƒ S u E0 O8 E‹0 {
¯ _ Z as _ E7 2 e%
€ B Z ¨ Z _
8 E‹0 as = v% •% 7
•+/ O : D //_ E +‰ x• — E0
€ Z %kl
8 > ' 8 as ' 7 e% D 0
> # u ' RQ ' 8 9 0 uA 6F Z2 o € Z
uP0 / = = D `90 > # 8 ' 90 E% #8
€ /_ Z :s 8 O8 > ' *{as = a
Z2 o E; •% 8 8 > ' 8 as
Z% … 8 > ' 8 as q € "6 E;%
Z % . Z08 _ € Z Ÿ o A6F —
Z B m e% € • 8 Q ' E08
E0 ea¥ % 8 ' 8 > y } x T a
€ ' Ä Z`‘ Ÿ o YsS = O %8 * a' Ÿ o ZB • T 7
E‹0 E08 Z2 o ' 8 E‹0 x• 8 as
€ • 8 8
u Z +Nv' t = ' e% AVR «0 T
> ' a e% 8 € , D 0 D 67 • Z ' a
E {0 Z ‹s Z' = a 0 8 _ E0 A° 8 > '
pT 8 > ' B € /_ >{# +Nv' t 8
E {0 >{# - 7 u = e% E kB =
Z' › Z as = ¿ 3 +Nv' t u v'

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

/v 0 ² `Q E0 8 08 u4Y9; 0 8
€ ' B Z = 8 > ' 8 :/_ E;%8

:/_ ) ) ) I
:0 8 ƒ S ” x _ O Z` 9‘ O N 8
> y % u= Zs• z{_ •.Q % T N 8 e% € Z
•.Q € / Z 8 90 7:/_ a 8 * 8
ƒ S ” w' * 8 = @% O 8 z{_
€ %Z x _
PRUSART, PRTWI, O E = @% _ @%
•.Q 8 o x• z{_ Z PRADC PRSPI, PRTM
€ x _ ea¥ Q 2 H ” % D _
/ = ' z{_ ΠO8 Q = pT Zo + 8 * 8
€ / Œ O / D a T
e% = @% 8 I/O z{_ 9; [\ * 8
€ / 8 _ E7 2

4 3 w' O 2 5 ) I

O %= 9+;' & / = AVR 8 w' * 8


D "# D B 8 NS & "Œ 8 2 e% € ' 8 8
¬ / Z Y ; Q
4*8 T3 N B8 •
t ] D '8 K •
4 % 03 Zo + 8 O 2 •
Ñ 7 'H O 2 •
N B e% = @% –% s – F 8
€ Z 9 T

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

*8 T 5 ) I
Z0:0 & ' e% Z% 9 e% D 0 *8 T
Z 8 *8 T € / Z ¤ O ' 8 > '
= 90 T Y† Z B Œ Z% E a
*8 T > ' AVR 8 € 8 Q D `90 8 E
P …H O8 kv ' O ' B Z R‹s œ 2
D `90 €€ C *8 T u B *8 T u A *8 T O > ' =
€ B Z

t ] D '8 K ( 5 ) I
_ E0 O D '8 K u a e% D 0 8 8 e%
"# % T = pT D K 8 z{_ •+/ = O 8 p7 T
D ' 8 € = 0 Z • . 8 o 8 > ' X8 K
@% = E+, u•% Q X8 K ‰ O v% * ' a uAVR
¤ 7 O %8 ' Q p' _ 7 u % 8
t ] D '8 K O ' O %8 ' Q PWM
AVR 8 t ] D '8 K €E0 D 9 B ?' 8
‡ L & ' € ' B Z Y ; ‡ I L D B
& ' E# 0 T D 0 O 8 _ 8 D `90 O
E# 0 Y_ O 8 _ 8 D `90 O ‡ I
€ / Z P0 / Z 8 K • 0 D= / = '

4 % 03 Zo + 8 O 2 ) 5 ) I
— + 8 O Zo + 8 X 8 e% 8 _ T = Za%
= E @% u = 8 % 0 X 8 8 € Z % 0
O /v 0 Y_ 6 7 € B Z 08 D
X 8 e% = D `90 % 0 — + 8 @% 8 = ' 8
8 € [B Z 8 Q 8 O= X 8 = :s
œ o ^ O Q M _ Z6Q

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

Q X 8 N/ % 0 — + 8 Ḡ "6 u — + 8
7:/_ a e% % 0 — + 8 € r ‹9'
€ Z LU< O 7:/_ a + 8 ;

7:/ ! % / H “ % e% 8 •'H
:s % / H /' / Q{# € AVR
€ // 6 • † 9 `

Y9`

O 9‘ Z 8 o Y Z E";Q e% 8
Z O8 H % €“ / H DMA a "# D Ì E m
8 G "6 H _ Z08 DMA 7
Q i/% 8 u s 8 kB 8 ;0 T a
e% _8 _ `; % is' 9‘ Z% / H
€E0

> N` J
= O %= Yi2 9' P \ u _ 8
8 €E0 = ' w' % 0 ? 2 ^ D O E%
9' O D '= T %8 = D `90 O 8 ^/S
CPU % D %= Z /_ 8 ; D
' 8 D {6 € ' B 08 p 0 D D

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

F H ' "67 8 90 a% E
8 L()J DMA 9/% u 7 e% € Z
— + 8 ² CPU b kB 8 /_ X8 _ _ _ Z2 o
8 _ Z as €E0 ? 2 w' % 0 ^ Y 9;
8 Q Z B8kB £ _ E0 e% 08 Z ?/ 9
D B8kB }6% uE; ' m 8 . Y_ 2 Z% v‹0 T
L()L DMA % CPU 0 /' 9 2 H 8
D B _ E0 e% «0 T € '[B 8 Q D `90 8
D 9' O D B8kB = D `90 = ' DMA
08 CPU 8 HOLD > ' q /v 0 9
HLDA /v 0 08 Y CPU u 8 8
_ ' "N` H P e% Z «0 T H
€ /_ D `90 D B8kB = ' Z
* #{o 9' • DMA _ /_ Z R‹s • š›
O E 8 Q CPU ‰ > Š
€E; ' "67 8 90
8 _ _ D v' CPU @% YsS DMA Z
O € 8 ' B ] 8 a% Z ./ 8 H
/v 0 u D 9' 8 Q DMA a/%
D NÖ MEMW MEMR uIOW uIOR :/_ D B8kB O
€E0

L()J O %8 ' ( J

€E0 % T 5U @% L()J DMA D //_ :/_


Z D 9' O ' _ 8 NS O 8 e%
{‰ € 8 8 a 0 @% O % > _
€D[\ E‹0 @;% O Za% u@;% ZT{ O Za%
= D `90 8 Q 0 @% • = 8 9+7

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

/v 0 ' _ 8 €E0 D 9' O DMA


4DMA O F 3 DREQ O 8 /v 0 u 8
• L()J DMA = €4DMA -% 3 DACK Z /v 0
HLDA HOLD _ '8 HLDA @% HOLD @%
= ' _ 8 NS _ }6 e% € / M 8 ;0 T a
= D `90 O F /' Z A 9‘ 0 8 NS
_ E0 DMA e% q u /% "/ 8 Y9; 0 D B8kB
€ [v E0 8 :/_ Z;_ S _ [B Z Y "
' B 8 . % u ' _ = D `90 = +Q
H e"F D 7 Z 8 L()J DMA ' _
€ R‹s H 6 4z D= ' 3 D z 8 H
8 %= 8 b ' = E0 *8 +# 7 Z 8
¬ ' _
9/ % _ O D z E% ^7 8 H
4 /+ 8 H3
4 " _ 6 3 9' 8 O E% 6 (
O = O 69 & ' Z O8 H %
% 4 r ‹9' e% 3 _ '8 a "#
O € ' O %8 ' L()J Z O ½ +, 8
8 H % T 8 NS L()J u * +, e% Z 90
S 8 kB Z 8 9 8 CS % T D m 8 AU-A)
' B " _ 6 % T 8 H = ' ' _
D 9 kB 8 /_ *8 T Es …H O 6j u 8 O
€E0

L()J Z :/_ O * +, ) J
* % b T M8 # "Œ e% 8 _ ŠH =
• 3 ” 6 k7 uY 9; ' H - Q Z08 DMA

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

8 DMA šd+ e% 8 O * +, 4” 6
¬“ Z % T

* +, ) J
Z D `90 L()J 8 _ :/_ O ‡ L * +, e%
/v 0€ Z O %8 ' CPU 0 * +, e% €
DMA — Z M _ z T 8 90 % CPU = RESET
€ /_ Z z T 8 H

E 6F * +, ( ) J

m -% o = CPU 0 • ‡ L * +, e%
8 H € Z D ' /' m u* +, *8 T 8 H
e% € Z CS _ 6 O X _ E0 XLH *8 T
8 NS Z "# *G 2 D8 8 O 69 * #{o O 2 * +,
€ Z ' _

* +, ) ) J

-% o = CPU 0 b ' Q • * +, e%
_ E0 Z08 H P _ X H 8 _ uE0 XBH *8 T 8 H
* +, e% •0 Z ‹9' O € % c Z 6 8 CS
¬= / 8 +#
E0 8
z (
@ )
q 9 5

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

x T @ * +, 5 ) J

8 H -% o = CPU 0 N/ * +, e% O 91
-% o = €E0 CS O X _ u Z 9 ' XAH *8 T
Q n • ' _ @% = DREQ O 8 _ E0 * +, e%
€E0 4 6 3 x T Q [\ % 4 6 [\3 x T

x T > y * +, < ) J
e% E0 x T @ * +, + * +, e% "# 8
x T Q b ' "# @% ' _ 8 NS _ * `
•0 • Y * +, e% € / Z x T Q [\ %
8 X _ E0 b ' Q XFH *8 T 8 H -% o = CPU
€E0 CS O= 0 6 O H

Z M _ z T]EQ * +, I ) J

9 ' XDH *8 T 8 H 8 CPU •0 • * +, e%


H q 08 E% €E0 CS O X H 8 _ u Z
* +, u•Q 8 %= 8 ' ‡ m O * +,
/_ Z z T 8 x T E0 8 u uE 6F O
€ Z O8 a a 0 8 DMA

x T * +, _ z T J ) J

XEH *8 T 8 H -% o = CPU •0 • * +, e%
Z CS O X H 8 _ E0 b ' Q
H 8 _ € 8 ' ‡ m H 8 D 9 ' ‡ O v7 €
uE0 ' _ 8 NS x T O E _ z T

Aghazeh@gmail.com
www.aghazeh.com
www.Aghazeh.com

DREQ -% o = DMA X %kT O 8 …H 0 /%


€ = 0 Z 6

• uDMA _ Z% / H O u % T 8
’LUXLI O 8 ;0 T a ’ r 9_ j = u _ Z08
€ s N/s T 67 . EN 4O % :_ ¬ 9 '3

• /
D / : 08 D
Digital and Microprocessor Fundamentals- William Kleit (
j „ /! * !0 H„ LU< 7:/ ! r 9 )
" T /N ' Z% F8 F8 ® /N
*8 Q : j „$ e „8 ;0 T ! r 9 5
> 0 x% % „> ' 0

Aghazeh@gmail.com
www.aghazeh.com

Potrebbero piacerti anche