Displaying counter 0 to 9 on Seven Segment Display...Full description
1. Untuk dapat mengetahui serta memahami tentang peraga tujuh ruas (seven segment). 2. Untuk dapat menerapkan seven segment display pada rangkaian percobaan. 3. Untuk dapat merancang sebua…Full description
description about 7 segment displayFull description
Traffic Light Dengan Seven Segment
mikrokontroler dengan seven segmentFull description
Full description
Autodesk RevitTutorial. Personal use only -
conveyor
Descripción: 7 segment
John Cage
Descripción completa
7 jumpDeskripsi lengkap
Deskripsi lengkap
microsDescripción completa
guitar songbookFull description
mikrokontrollerDeskripsi lengkap
Descripción completa
Israiliyyat
PptFull description
SEVEN SEGMENT LED DISPLAY INTERFACE INTERFACE AIM:
To write an assembly language program to display the given message using seven segment LED display interface and 8085 microprocessor kit . ALGORITHM: 1. Start. 2. Configure 8255 8255 PPI in mode 0(simple 0(simple output port) 3. Load HL register pair with starting address of the data.
4. Load Load D- register register with with numbe numberr of groups. groups. 5. Load Load B-register B-register with with number number of charac characters ters per group group (04H). (04H). 6. Load Load C- regis register ter with with number number of of segment segments s (08H). (08H). 7. Move the content of memory to accumulator and increment the pointer address. 8. Rotate Accumulator Accumulator content left with carry and move it to E- register and output it to
port B in order to get one data bit from 8- bit and output it to activate one segment. 9. Clock Clock pluses pluses are given given to activat activate e the shift shift register register.. 10. Move the E- register content to accumulator accumulator and decrement C- register content content (no of segments). 11. Check Check for zero flag flag If zero flag is set go to step 12 Else go to step 8. 12. Decrement B-register content (no of characters).
13. Check Check for zero flag flag If zero flag is set go to step 14 Else go to step 6. 14. Call delay subroutine subroutine for flashing a group. group. 15. When all the groups are activated activated the process is repeated continuously until the reset
button is pressed.
DELAY:
1. Load E- register with count. 2. Initialize BC- register pair with delay count. 3. Decrement BC- register pair content (delay count). 4. Check for zero flag If zero flag is set go to step 5 Else go to step 3. 5. Decrement E- register content (count). 6. Check for zero flag If zero flag is set go to step 7 Else go to step 2. 7. Return. FLOW CHART: START Configure 8255 in mode 0 (simple output mode)
Set memory pointer
Load D- register with no of groups: (A) ← (M); (D)← (A);
Load B- register with no of characters per group: (B) ← 04H;
Load C- register with no of segments: (C) ← 08H;
Get display code & increment the address: (A)←(M) ; (H)(L)←(H)(L)
RLC and give clock to shift register
Decrement segments (C)← (C) -1 ; NO
If (C)= YES 0
Decrement characters (B)← (B)
If (B)= If 0 (D)= (D)← (D) -1 Decrement groups
NO YES
NO YES
DELAY SUBROUTINE: DELAY Initialize E – register (E) ← 02H; Initialize BC – register pair (BC) ← FFFF
Decrement BC- register pair content (B)(C)←(B)(C)-1; If (BC)=0 0 YES
NO
Decrement E - register content (E) ← (E) - 1; NO If (E)=0
YES RETURN
PROGRAM: ADDRESS
OPCODE
LABEL
8000
3E 80
MVI A, 80
8002
D3 43
OUT 43
8004
21 01 90
8007
3A 00 90
LDA 9000
800A
57
MOV D,A
800B
06 04
L3
MVI B,04
800D
0E 08
L2
MVI C,O8
800F
7E
MOV A,M
8010
23
INX H
8011
07
8012
5F
8013
D3 41
OUT 41
8015
3E 01
MVI A,01
8017
D3 42
OUT 42
8019
3D
DCR A
801A
D3 42
OUT 42
801C
7B
MOV A,E
801D
0D
DCR C
801E
C2 11 80
JNZ L1
8021
05
DCR B
8022
C2 0D 80
JNZ L2
8025
CD 2F 80
CALL DELAY
8028
15
DCR D
Decrement D- register content ( groups).
8029
C2 0B 80
JNZ L3
Jump on non zero to L3.
L4
L1
MNEMONICS
LXI H, 9001
RLC MOV E,A
COMMENTS Send control word to control register to configure 8255 with 8085 in mode0. Initialize memory pointer. Load D- register with number of groups . Load B- register with no of character/ group. Load C- register with no of segments. Move memory content to accumulator and increment the memory pointer. Rotate left with carry to get one data bit and output it to port B. Clock pluses to activate the shift registers.
Move E- register content to accumulator. Decrement C- register content ( segments). Jump on non zero to L1. Decrement B- register content ( characters). Jump on non zero to L2. Call delay subroutine.
802C
C3 04 80
JMP L4
Jump to L4.
802F
1E 02
DELAY
8031
01 FF FF
L5
LXI B, FFFF
8034
0B
L6
DCX B
8035
78
MOV A,B
8036
B1
ORA C
8037
C2 34 80
JNZ L6
803A
1D
DCR E
803B
C2 31 80
JNZ L5
803E
C9
MVI E , 02
Initialize E- register count. Initialize BC- reg pair with delay count. Decrement the BC – register pair content and check whether its value is reached zero. Jump on non zero to L6. Decrement D- register content ( count) and Jump on non zero to L5. Return
RET
SAMPLE INPUT AND OUTPUT: Number of groups (9000) = 3
Alphabet d 1 C 0 E 0 P 1 1 E 0 E 0 E 0 1 B 0 A 1 L 0
c 1 1 1 1 1 1 1 1 1 0 0 1
b 1 1 1 0 1 1 1 1 1 0 0 1
a 1 0 0 0 1 0 0 0 1 0 0 1
dp 1 1 1 1 1 1 1 1 1 1 1 1
g 1 1 0 0 1 0 0 0 1 0 0 1
f 1 0 0 0 1 0 0 0 1 0 0 0
e 1 0 0 0 1 0 0 0 1 0 0 0
Code FF 6C 68 C8 FF 68 68 68 FF 08 88 7C
RESULT:
The assembly language program to display the given message using 7segment LED display interface and 8085 microprocessor was written and the result was verified.