You are on page 1of 22

U20ECCJ21

MICROPROCESSOR AND MICROCONTROLLER


UNIT IV
MICROCONTROLLER
Architecture of 8051 Microcontroller- Instruction Set – Assembly Language
Programming – Branching, I/O and ALU Instructions. Programming 8051 - Timers,
Serial Port, Interrupts. C programming for 8051.Programming using Arithmetic,
Logical and Bit Manipulation instructions of 8051 microcontroller-Interfacing – DAC and
ADC and 8051 based temperature measurement-Interfacing – LED and LCD.
PROGRAM FOR ADDITION USING 8051 SIMULATOR
SL.NO PROGRAM COMMENT
1 ORG 0000H INITIALIZATION
2 CLR C MAKE CY=0
3 MOV A,#22H LOWER BYTE OF OPERAND 1 IN A
4 ADD A,#044H ADD LOWER BYTE OF OPERAND 2 WITH A
5 MOV R1,A STORES LSB OF RESULT IN R1
6 MOV A,#11H HIGHER BYTE OF OPERAND 2 IN A
7 ADDC A,#33H ADD WITH HIGHER BYTE OF OPERAND 1
8 MOV R0,A STORES MSB OF RESULT IN R0
9 END

PROGRAM FOR SUBTRACTION USING 8051 SIMULATOR


SL.NO PROGRAM COMMENT
1 ORG 0000H INITIALIZATION
2 CLR C MAKE CY=0
3 MOV A,#77H LOWER BYTE OF OPERAND 1 IN A
4 SUBB A,#22H SUB LOWER BYTE OF OPERAND 2 FROM A
5 MOV R1,A STORES LSB OF RESULT IN R1
6 MOV A,#99H HIGHER BYTE OF OPERAND 2 IN A
7 SUBB A,#33H SUB WITH HIGHER BYTE OF OPERAND 1
8 MOV R0,A STORES MSB OF RESULT IN R0
9 END

PROGRAM FOR MULTIPLICATION USING 8051 SIMULATOR


SL.NO PROGRAM COMMENT
1 ORG 0000H INITIALIZATION
2 MOV R0,#05 OPERAND 1
3 MOV R1,#04H OPERAND 2
4 CLR A ACCUMALATOR INITIALIZATION
5 LOOP:ADD A,R1 LOOP FOR CONTINUOUS ADDITION
6 DJNZ R0,LOOP LOOP CHECKNG
7 END

PROGRAM FOR DIVISION USING 8051 SIMULATOR


SL.NO PROGRAM COMMENT
1 ORG 0000H INITIALIZATION
2 MOV A,#10 LOAD DATA 1
3 MOV R1,#2 LOAD DATA 1
4 MOV R2,#00 QUIOTIENT WILL BE STORED HERE
5 loop: SUBB A,R1 SUBTRACTION FOR SPECIFIED TIMES
6 INC R2 COUNTING QUOTIENT
7 CJNE A,#00,loop FOR NEXT CYCLE SUBTRACTION
8 END
ADC 0848 AND 8051 BASED TEMPERATURE MEARUREMENT

You might also like