Download as pdf or txt
Download as pdf or txt
You are on page 1of 16

1

MICRO CONTROLLER
UNIT- 2
1. EXPLAIN THE ADDRESSING MODELS OF 8051.
Addressing mode என்ப� address கள் instruction - ல் எவ்வா� �றிப்ப�டப�கின்ற� என்பைதக்
�றிக்�ம்.
A. Immediate addressing
 Instruction ன�ன் operand field, immediate data – ைவ ெகாண்��க்�ம்.
 Immediate data -க்� �ன்பாக # (Hash) symbol – ல் இ�க்�ம்.

Example : MOV A, # 64 H 64 என்கின்றன hexadecimal value A க்� move ஆகின்ற�.


B. Register addressing mode
 Instruction ன�ன் operand field, R0 – R7 Register – ல் ஏதாவெதா� Register – ைய ெகாண்��க்�ம்.

Example: MOV A, R3 R3 Register –ன் மதிப்� A – க்� move ெசய்யப்ப�கின்ற�.


C. Direct addressing
 Instruction ன�ன் operand field – ல் 8 bit address �லம் ேநர�யாக �றிப்ப�டப்ப�கின்ற�.

Example : MOV direct, A A – ன் மதிப்�, direct location க்� move ெசய்யப்ப�கின்ற�.


D. Indirect addressing
 Instruction –ன�ன் operand field R0 or R1 Register �லம் �றிப்ப�டப்ப�ம்.
 இதில் Internal ( 0 – 7H) and External 256 location RAM access ெசய்யலாம்.
 External Ram 16 bit ஆக இ�ந்தால் DPTR �லம் access ெசய்யப்ப�கின்ற�.

Example : MOV @ R1, A A –ன் value internal RAM – ன் R1 –க்� move ஆகின்ற�.

Example : MOV @ A,DPTR RAM –ன் 16 BIT VALUE – ைய A -க்� move ஆகின்ற�.
E. Index addressing
 Program memory –ன் look up table –ஐ read ெசய்யப்பயன்ப�கின்ற�.

Example : MOV A, @ A + DPTR DPTR AND A –ைய ADD ெசய்� கிைடக்�ம்


Address, Accumulator க்� move ஆகின்ற�.

2. EXPLAIN ASSEMBLER DIRECTIVES.

ASSEMBLY ASSEMBLER MACHINE


LANGUAGE ASM51 LANGUAGE
PROGRAM PROGRAM

 Assembler என்ப� Assembly Language –ைய Machine Language –ஆக மாற்�கின்ற software.
 Assembler –க்� direction –ைன assembler directives அள�க்கின்ற�.
 Assembler directives ஒ� pseudo instruction மற்�ம் micro controller –லால் execute ெசய்ய��யா�.
a) ORG : ORGIN
 PROGRAM -ன் ெதாடக்கத்ைத �ட்�க்காட்�கின்ற�.
EXAMPLE : ORG 4100 H
b) EQU : EQUATE
 வல� �றத்தில் உள்ள Value –ைய இட� �ற label –க்� அழிகின்ற�.
EXAMPLE : TEN EQU 10
c) DB : DEFINE BYTE
 8 bit data கான memory –ைய �ன்பதி� ெசய்கின்ற�.
Example : DB 45 H
d) DW : DEFINE WORD
 16 bit data கான memory –ைய �ன்பதி� ெசய்கின்ற�.
e) END
 PROGRAM –ன் ��ைவ �றிப்ப��கின்ற�.

1
2

3. BIGGEST NUMBER (LARGEST NUMBER IN AN ARRAY)


MOV DPTR , # 8200 H
MOVX A, @ DPTR
MOV RO , A
MOV B , # 00 H
FIRST INC DPTR
MOV X A , @ DPTR
CJNE A , B NEXT
NEXT JC LOOP
MOV B , A
LOOP DJNZ RO, FIRST
MOV DPTR, # 8300 H
MOV A , B
MOV X @ DPTR , A
HALT SJMP HALT

2
3

UNIT-3
4. EXPLAIN ABOUT PROGRAMMING STEPS OF 8051 TIMER / COUNTER.
MC 8051 – ஆன� T0, T1 என்கிற 16 bit ெகாண்ட இரண்� Timer / Counter Register கைள ெகாண்ட�.
Step 1: TMOD Register �லம் Timer (or) Counter என்பைத�ம், எந்த mode –ல் ெசயலாற்ற ேவண்�ம்
என்பைத�ம், hardware அல்ல� software –ல் ெசயலாற்ற ேவண்�ம் என்பைத�ம் select ெசய்ய
ேவண்�ம்.
Step 2: Starting value –ைய TLX and THX –ல் Load ெசய்ய�ம்.
Step 3: Overflow flag bit –ஐ clear ெசய்ய�ம். (CLR TFX)
Step 4: Timer ெசயைல ஆரம்ப�க்க�ம்  SET TRX
Step 5: Register –ன் மதிப்� Timer ஆக இ�ந்தால் ஒவ்ெவா� Machine cycle –ன் ேபா�ம், counter –ஆக
இ�ந்தால் இரண்�ரண்� Machine cycle –ன் ேபா�ம் ஒவ்ெவான்றாக கைடசி மதிப்ைப ேநாக்கி
அதிக�க்�ம்.
Step 6: கைடசி மதிப்ைப அைடந்த�டன், Register –ல் 0000H என overflow ஆகி, TFX set ஆ�ம்.
Step 7: Timer –ைய stop ெசய்ய�ம். (CLR TRX)
Step 8: தி�ம்ப�ம் ெசய்ய ேவண்�ம் என்றால் Step 2 –லி�ந்� ெசய்ய�ம்.
𝑖𝑓, 𝐼𝐼𝑖𝑚𝑒𝑟 1, 𝑥→1
𝐼𝐼𝑖𝑚𝑒𝑟 0, 𝑥→0

5. EXPLAIN TMOD AND TCON REGISTER.


TMOD
D7 D6 D5 D4 D3 D2 D1 D0
MSB LSB
Gate 𝐴𝐴/ 𝐼𝐼� M1 M0 Gate 𝐴𝐴/ 𝐼𝐼� M1 M0

Timer 1 Timer 0

GATE : IF Gate =1  Timer / Counter hardware –ல் ெசயலாற்�ம்.


IF Gate =0  Timer / Counter software –ல் ெசயலாற்�ம்.
� ∶
C/ T �
IF C/ T =1  Counter ஆக ெசயலாற்�ம்.

IF C/ T =0  Timer ஆக ெசயலாற்�ம்.

M1
Mode –ஐ select ெசய்கின்ற�.
M0

Mode M1 M0
0 0 0 13 bit Timer / Counter
1 0 1 16 bit Timer / Counter
2 1 0 8 bit (auto reload) Timer / Counter
3 1 1 8 bit (split) Timer / Counter

TCON
D7 D6 D5 D4 D3 D2 D1 D0
MSB LSB
TF1 TR1 TFO TRO IE1 IT1 IE0 IT0

TFX : Timer X overflow flag  Timer / Counter overflow ஆ�ம்ேபா� hardware �ைறய�ல்
set ஆ�ம்.
TRX : Timer X Run Control bit  Software �ைறய�ல் set / clear அதாவ� ON / OFF என்ப�
ெகாள்ளலாம்.
IEX : External interrupt X  Hardware �ைறய�ல் set ஆ�ம், process ஆரம்பமான�டன்
தானாகாேவ clear ஆ�ம்.
ITX : Interrupt X control bit  Software �ைறய�ல் set clear ெசய்� ெகாள்ளலாம்.

3
4

6. WRITE ABOUT OPERATING TIMES/ COUNTER.


Timer / Counter நான்� mode –கள�ல் ெசயலாற்�ம்
Mode
0 13 bit Timer / Counter
1 16 bit Timer / Counter
2 8 bit (auto reload) Timer / Counter
3 Two 8 bit (split) Timer / Counter

Mode 0 :
 Mode 0 ஆன� 13 bit timer ஆ�ம். இ� THX –ல் 8 bit –ம் மற்�ம் TLX –ல் Lower 5 bit –ம் ெகாண்ட�.
 Timer ஆன� ெசயலாற்றி அதற்��ய மதிப்� ஒவ்ெவான்றாக அதிக�த்� அைனத்�ம் ‘1’ ஆக மாறி
ப�ன்� ‘0’ என overflow ஆ�ம் ேபா� TCON –ல் TFX set உள்ள ஆ�ம்.
Mode 1 :
 Mode 1 ஆன� 16 bit timer ஆ�ம். இ� THX –ல் 8 bit –ம் மற்�ம் TLX –ல் Lower 8 bit –ம் ெகாண்ட�.
 Timer ஆன� ெசயலாற்றி அதற்��ய மதிப்� ஒவ்ெவான்றாக அதிக�த்� அைனத்�ம் ‘1’ ஆக மாறி
ப�ன்� ‘0’ என overflow ஆ�ம் ேபா� TCON –ல் TFX set உள்ள ஆ�ம்.
Mode 2 :
 Mode 2 ஆன� 8 bit auto reload ஆ�ம்.
 இதில் TL –ஆன� overflow ஆன ப�ன்� TF0 SET ஆவதில்ைல, TH0 –ல் உள்ள மதிப்� TL0 –ல்
தானாக தி�ம்ப Load ஆ�ம்.
 TH1 -ன் மதிப்ைப software �ைறய�ல் preset ெசய்� ெகாள்ளலாம்
Mode 3 :
 Mode 3 ஒ� split timer mode ஆ�ம்.
 Timer 0 - ல் உள்ள TLO & THO இரண்� தன�தன�யான 8 Bit Timer / Counter ஆக ெசயலாற்�ம்
 Timer 0 - க்� உ�ய control signal TLO –க்�ம்
 Timer 1 - க்� உ�ய control signal THO – க்�ம் ெசயல்ப�ம்.
 Timer 1 - ஆன� mode 3 – ல் ெசயலாற்ற ��யா�.

4
5

UNIT-4

7. PROGRAMMING STEPS FOR SERIAL COMMUNICATIONS (TRANSMITTER & RECIEVER)


WRITE THE STEPS INVOLVED IN PROGRAMMING 8051 TO TRANSFER AND REACTIVE DATA
SERIALLY.
TRANSMITTER
1. TMOD Register �லமாக Timer 1 select ெசய்ய�ம்.
2. SMOD bit –ைய double band rate –க்� த�ந்தவா� Set / Clear ெசய்ய�ம்.
3. SCON register �லம் transmission mode –ஐ select ெசய்ய�ம்.
4. TIMER 1 -ன் ெதாடக்க மதிப்ப�ைன TH1 AND TL1 –ல் LOAD ெசய்ய�ம்.
5. TI flag –ைய Clear ெசய்ய�ம். (CLR TI)
6. TIMER ெசயைல ஆரம்ப�க்க�ம். (SETB TR1)
7. Transmit ெசய்ய ேவண்�ய character –ைய SBUF –ல் load ெசய்ய�ம்.
8. “WAIT JNB TI WAIT” instruction �லம் TI flag –ைய கண்காண�க்க ேவண்�ம்.
Transmit ஆன�ம் TI flag set ஆ�ம்.
9. Timer 1 –ைய நி�த்த ேவண்�ம். (CLR TR1)

IMPORTANCE OF TI FLAG
a) Transmit ெசய்ய ேவண்�ய character –ைய SBUF –ல் write ெசய்ய�ம்.
b) First Start bit ெசல்�ம்.
c) ப�ன்� 8 bit –கள் ஒவ்ெவான்றாக ெசல்�ம்.
d) Stop bit ெசன்ற�டன் TI Flag set ஆ�ம்.
e) Transmit ெசய்ய ேவண்�ய அ�த்த character –ைய SBUF –ல் load ெசய்ய ேவண்�ம்.
f) TI –ைய clear ெசய்ய�ம். (CLR TR1)

RECIEVER
1. TMOD Register �லமாக Timer 1 select ெசய்ய�ம்.
2. SMOD bit –ைய double band rate –க்� த�ந்தவா� Set / Clear ெசய்ய�ம்.
3. SCON register �லம் reception mode –ஐ select ெசய்ய�ம்.
4. TIMER 1 -ன் ெதாடக்க மதிப்ப�ைன TH1 AND TL1 –ல் LOAD ெசய்ய�ம்.
5. RI flag –ைய Clear ெசய்ய�ம். (CLR RI)
6. TIMER ெசயைல ஆரம்ப�க்க�ம். (SETB TR1)
7. REN Bit –ைய set ெசய்� reception ெசயைல ஆரம்ப�க்க�ம். (SETB REN)
8. “WAIT JNB TI WAIT” instruction �லம் RI flag –ைய கண்காண�க்க ேவண்�ம்.
Recieve ஆன�ம் RI flag set ஆ�ம்.
9. SBUF –ல் Recieve ஆன character –ைய ேவ� memory –க்� ெகாண்� ெசல்ல�ம்.
10. தி�ம்ப�ம் Receive ெசய்ய step 4 –லி�ந்� ெசய்ய�ம்.

IMPORTANCE OF RI FLAG
a) First Start bit receive ெசய்யப�கின்ற�.
b) ப�ன்� 8 bit –ம் ஒவ்ெவான்றாக receive ெசய்யப்பட்� SBUF –ல் கிைடக்�ம்.
c) Stop bit Recieve ஆன�ம் RI Set ஆ�ம்.
d) SBUF –ல் உள்ள data memory அல்ல� register –க்� ெகாண்� ெசல்ல�ம் இல்ைலெயன்றால்
அ�த்த character receives ஆன�ம் அ� அழிந்�வ��ம்.
e) RI –ைய clear ெசய்ய�ம். (CLR TR1)

5
6

8. WRIITE ABOUT SCON AND PCON REGISTER.


SCON – SERIAL PORT CONTROL REGISTER
D7 D6 D5 D4 D3 D2 D1 D0 LSB
MSB
SMO SM1 SM2 REN TB8 RB8 TI RI

SM0:
Serial port mode select ெசய்கிற bit
SM1:

SM2 : IF SM2 = 1  Mode 2 & Mode 3 –ல் RB8 bit ‘0’ என இ�ந்தால் RI set ஆகா�.
 Mode 1 -ல் stop bit ‘0’ என இ�ந்தால் RI set ஆகா�.
If SM2 = 0  Mode 0 –ல் கண்�ப்பாக இ�க்க ேவண்�ம்.

REN : Serial reception –ஐ enable ெசய்கின்ற bit


TB8 : Mode 2 & Mode 3 -ல் transmit ெசய்ய ேவண்�ய 9th bit இதில் இ�க்�ம்.
RB8 : Mode 2 & Mode 3 -ல் receive 9th bit ெசய்ய ேவண்�ய 9th bit இதில் வந்� ேச�ம்..
T1 : Transmit interrupt flag. Transmission ெசய்ய ��ந்த ப�ன்� set ஆ�ம்.
R1 : Recieve interrupt flag. Recieve ெசய்ய ��ந்த ப�ன்� set ஆ�ம்.

PCON – POWER CONTROL REGISTER

D7 D6 D5 D4 D3 D2 D1 D0 LSB
MSB
SMOD _ _ _ GF1 GF0 PD IDL

SMOD : Double band rate bit


If SMOD = 1  Mode 1, Mode 2, Mode 3 –ல் band rate இரண்� பங்காக
இ�க்�ம்.

_
Reserve ெசய்யப்பட்�ள்ள�
_
_

GF1 General purpose flag bit


GFO

PD : Power down bit. PD = 1  Power down mode -ல் ெசயலாற்�ம்.


IDL : Idle mode bit ; IDL = 1  Idle mode -ல் ெசயலாற்�ம்.
ஒேர ேநரத்தில் PD & IDL set ஆனால், POWER DOWN MODE –ல் ெசயலாற்�ம்.

9. INTERRUPT ENABLE (IE) REGISTER

D7 D6 D5 D4 D3 D2 D1 D0 LSB
MSB
EA X X ES ET1 EX1 ETO EXO

EA : If EA = 0  all interrupt – ம் disable ஆ�ம்.


EA = 1  ஒவ்ெவா� INTERRUPT –ம் தன�த்தன� BIT ‘1’ என இ�ந்தால்
மட்�ேம ENABLE ஆ�ம்.

6
7

X : Reserve ெசய்யப்பட்�ள்ள�.
X : Reserve ெசய்யப்பட்�ள்ள�.
ES : Serial port interrupt - ைய enable or disable ெசய்கின்ற�.
ET1 : Timer overflow flag - ைய enable or disable ெசய்கின்ற�.
EX1 : External interrupt 1 - ைய enable or disable ெசய்கின்ற�.
ETO : Timer 0 overflow flag - ைய enable or disable ெசய்கின்ற�.
EXO : External interrupt 0 - ைய enable or disable ெசய்கின்ற�.

1  Enable 0  disable

10. INTERRUPT PRIORITY (IP) REGISTER

D7 D6 D5 D4 D3 D2 D1 D0 LSB
MSB
X X X PS PT1 PX1 PTO PXO

X : Reserve ெசய்யப்பட்�ள்ள�.
X : Reserve ெசய்யப்பட்�ள்ள�.
X : Reserve ெசய்யப்பட்�ள்ள�.
PS : If PS = 1  High priority தன்ைம�டன் ெசயலாற்�ம். (Serial port interrupt)
PT1 : If PT1 = 1  High priority தன்ைம�டன் ெசயலாற்�ம். (Timer 1 interrupt)
PX1 : If PX1 = 1  High priority தன்ைம�டன் ெசயலாற்�ம். (External interrupt )
PT0 : If PT0 = 1  High priority தன்ைம�டன் ெசயலாற்�ம். (Timer 0 interrupt)

7
8

UNIT-5
11. DRAW THE BLOCK DIAGRAM OF 8255 AND EXPLAIN.
 IC 8255 ஆன� Input output ports, data bus buffer, Read
/ write control logic ேபான்ற ப�த்கைளக் ெகாண்ட�.
Input / Output ports
 Port A, Port B என்ற 8 bit மற்�ம் Port C ( upper), Port
C (Lower) என்ற இரண்� 4 bit port கைள ெகாண்ட�.
 Port கள் இரண்� ப��வாக ப��க்கப்ப�கின்ற�.
 Group A ஆன� port A (PA7 – PA0) மற்�ம் Port C
upper (PC7 – PC4) ெகாண்ட�.
 Group B ஆன� port B (PB7 – PB0) மற்�ம் Port C
lower (PC3 – PC0) ெகாண்ட�.

Data bus buffer


 8 bit bidirectional buffer
 இதன் வழிேய Data, control word, status microcontroller –க்�ம் 8255 க்�ம் இைடேய communicate
ஆ�ம்.
Control Logic
 ஆ� வ�தமான Control signal –கைள ெகாண்��க்�ம்.
 ����
𝐼𝐼𝑅𝑅(𝐼𝐼𝑒𝑎𝑑): 𝑖𝑓 ����
𝐼𝐼𝑅𝑅 = 0 →Microcontroller 8255 –ன் I/O port –ல் Read ெசய்கின்ற�.
����� (𝑊𝑊𝑟𝑖𝑡𝑒): 𝑖𝑓 𝑊𝑊𝐼𝐼
 𝑊𝑊𝐼𝐼 ����� = 0 →Microcontroller 8255 –ன் I/O port –ல் write ெசய்கின்ற�.
 𝐼𝐼𝐸𝑆𝑆𝐸𝐼𝐼 ∶ 𝑖𝑓 Reset = 1  control register clear ஆ�ம். அைனத்� port –ம் input mode –ல்
ெசயலாற்�ம்.

 �𝐴𝐴𝑆𝑆
���: 𝑖𝑓 𝐴𝐴𝑆𝑆
���� = 0 → 8255 –க்�ம் microcontroller –க்�ம் communicate நைடெப�ம்.
 A1 , A0  8255 ம் port மற்�ம் control register ைய select ெசய்கின்ற�.
Internal address
Selected Device
A1 A0
0 0 Port A
0 1 Port B
1 0 Port C
1 1 Control word register

12. EXPLAIN THE MODES OF OPERATIONS OF 8255.


 இரண்� Mode –ல் ெசயலாற்�ம்.
a) Input / Ouput mode ( if D7 = 1)
b) BSR (BIT SET / RESET) Mode ( if D7 = 0)
 Control register –ன் D7 bit எந்த mode –ல் ெசயலாற்ற ேவண்�ம் என த�ர்மான�க்கிற�.
a) Input / Output Mode
Three types
i) Mode 0  Simple I/O port
ii) Mode 1  Strobed I/O Port (handshake I/O port)
iii) Mode 2  Bi directional I/O port

D7 D6 D5 D4 D3 D2 D1 D0

1 = I/O Mode selection Port A Port C1 Mode selection Port B Port CL


Mode 00 = Mode 0 1 = Input PC7 – PC 4 0 = Mode 0 1 = Input PC3 – PC 0
0 = BSR 01 = Mode 1 0 = Output 1 = Input 1 = Mode 1 0 = Output 1 = Input
Mode 1X = Mode 2 0 = Output 0 = Output

GROUP A GROUP B

8
9

i) Mode 0:
Port A (Output)
 அைனத்� Port கைள�ம் input அல்ல� output program
Port C upper (Input) ெசய்யலாம்.
8255 A
Port C lower (Output)  Control signal இல்லாமல் data ைவ port –ல் read மற்�ம்
Port B (Output) write ெசய்� ெகாள்ளலாம்.

ii) Mode 1: Port A, Port B input அல்ல� output port ஆக ெசயல்ப�ம்.


Port C  hand shaking (control) signal ஆகபயன்ப�ம்.
Input Configuration
 Port A  Input
PA7 – PA0 Port A (Input)
 PC3 – PC5  Port A –ன் control signal
PC4 �������  Port B  Input
𝑆𝑆𝐼𝐼𝑂𝑂𝐴
8  PC0 – PC2  Port B –ன் control signal
PC5 𝐼𝐼𝑂𝑂𝑂𝑂𝐴
2 PC3 𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐴  PC6 , PC7 Model 1 –ல் பயன்ப�வதில்ைல.
5
PC6 & PC7 I /O a) ������
𝑆𝑆𝐼𝐼𝑂𝑂(𝑠𝑡𝑟𝑜𝑏𝑒 𝑖𝑛𝑝𝑢𝑡)
5  Peripheral device, data ைவ transmit ெசய்ய தயாராக
PC0 𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐵
A ������ = 0) ெசய்�ம்.
இ�க்�ம் ேபா� enable (𝑆𝑆𝐼𝐼𝑂𝑂
PC1 𝐼𝐼𝑂𝑂𝑂𝑂𝐵
�������
b) IBF (Input Buffer full)
����
𝐼𝐼𝑅𝑅 PC2 𝑆𝑆𝐼𝐼𝑂𝑂𝐵
 Data ைவ receive ெசய்த�டன் 8255 peripheral க்�
Port B (Input)
PB7 – PB0
acknowledge signal –ைய enable (IBF = 1) ெசய்�ம்.
c) INTR (Interrupt Request)
Output Configuration  If INTR = 1, input buffer full ஆன�ம் controller ைய
PA7 – PA0 Port A (Output) interrupt ெசய்வதற்� பயன்ப�கின்ற�.
PC7 �������
𝑂𝑂𝑂𝑂𝑂𝑂𝐴 Output configuration
8 PC6 �������
𝐴𝐴𝐴𝐴𝐴𝐴  Port A  output
𝐴
2 PC3 𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐴  PC3 , PC6 , PC7  Port A –ன் control signal
5
PC5 & PC4 I /O  Port B  Output
5
PC0 𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐵  PC0 – PC2  Port B –ன் control signal
A
PC2 �������
𝐴𝐴𝐴𝐴𝐴𝐴𝐵  PC4 , PC5  இதில் பயன்ப�வதில்ைல.
�����
𝑊𝑊𝐼𝐼 PC1 �������
𝑂𝑂𝑂𝑂𝑂𝑂𝐵 ������
a) 𝑂𝑂𝑂𝑂𝑂𝑂 (𝑂𝑂𝑈𝐼𝐼𝐸𝐼𝐼 𝑂𝑂𝑈𝑂𝑂𝑂𝑂𝐸𝐼𝐼 𝑂𝑂𝑈𝐿𝐿)
PB7 – PB0 Port B (Output) Microcontroller data ைவ 8255 –ன் output port –ல்
write ெசய்த�டன் enable (𝑂𝑂𝑂𝑂𝑂𝑂 ������ = 0)ஆ�ம்
������ (𝐴𝐴𝑐𝑘𝑛𝑜𝑤𝑙𝑒𝑑𝑔𝑒):
b) 𝐴𝐴𝐴𝐴𝐴𝐴
������ = 0)ஆ�ம்.
 Peripherals, 8255 –ல்லி�ந்� data ைவ receive ெசய்த�டன் enable (𝐴𝐴𝐴𝐴𝐴𝐴
c) 𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼: அ�த்த Data ைவ microcontroller –ைய interrupt ெசய்ய பயன்ப�கின்ற�.

iii) Mode 2 b) BIT SET / RESET Mode (BSR)


PA7 – PA0 D7 D6 D5 D4 D3 D2 D1 D0
Port A (I / O)
PC3 𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐼𝐴𝐴 0 X X X S/R
8 PC6 �������
𝐴𝐴𝐴𝐴𝐴𝐴𝐴𝐴
2 �������
PC7 𝑂𝑂𝑂𝑂𝑂𝑂𝐴𝐴 BSR
SET = 1
5 NOT USED RESET = 0
PC4 ������𝐴𝐴
𝑆𝑆𝑇𝑇𝑇𝑇 MODE (DON ’ T CARE)
���� 5
𝑅𝑅𝑅𝑅 PC5 𝐼𝐼𝐵𝐵𝐹𝐹𝐴𝐴
A BIT select

I/O 000 001 010 011 100 101 110 111


PC2 – PC0
�����
𝑊𝑊𝑊𝑊 Bit 0 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7
Port B (I / O)
PB7 – PB0

 Port C க்� மட்�ேம ெதாடர்�ைடய�.


 Port A மட்�ேம bidirectional data transfer
 Port C –ன் அைனத்� bit க�ம் தன�த்தன�ேய
port ஆக ெசயல்ப�கின்ற�.
microcontroller �லம் control ெசய்யப்ப�கின்ற�.
 இந்த Port C –ல் 5 line கள் control signal
 If D7 = 0  BSR mode -ல் ெசயலாற்�ம்.
களாக ெசயல்ப�கின்ற�

9
10

13. EXPLAIN THE STEPPER MOTOR INTERFACING WITH 8051.


STEP WINDING WINDING WINDING WINDING HEXA DIRE
No. D C B A CODE CTION
P 2.3 P 2.2 P 2.1 P 2.0
1 1 0 0 1 09H
2 0 0 1 1 03H
3 0 1 1 0 06H
4 1 1 0 0 0CH

 Stepper motor –ல் உள்ள shaft –ன் step by step ஆக இ�க்�ம்.


 Stepper motor –ைய rotate ெசய்யவதற்� winding க்� pulse ெகா�க்க ேவண்�ம்.
 Stator –ல் உள்ள ஒவ்ெவா� pole –ம் எதிெரதிராக wound ெசய்யப்பட்�ள்ள இரண்� coil
கைளக் ெகாண்��க்�ம்.
 Excitation ைய ெசயல்ப�த்�வதற்� ஒவ்ெவா� data ைவ�ம் ஒ� �றிப்ப�ட்ட கால
அளவ�ல் port 1 வழிேய stepper motor க்� ெகா�க்க ேவண்�ம்.
 Stepper motor –ன் நான்� coil க�ம் microcontroller –ன் port 0 ( P1.0 – P 1.3 ) �டன் driver circuit
�லம் இைணக்கப்பட்�ள்ள�.

14. EXPLAIN THE ADC INTERFACING WITH 8051.


 Analog to Digital converter.
 ADC 0808 –ன் Output Port 0 உட�ம், P3.0
ALE உட�ம், P3.1 SOC உட�ம், P3.2 OE
உட�ம், P3.3 EOC உட�ம்
இைணக்கப்பட்�ள்ள�.
 P2.0 , P2.1 ,P2.2 , ADC 0808 –ன் address line ABC
உட�ம் இைணக்கப்பட்�ள்ள�.
Steps to program ADC 0808
1) CBA bit கைளக்ெகாண்� (address line) ஒ�
analog channel ைய ேதர்� ெசய்ய
ேவண்�ம்.
2) Address ைய latch ெசய்வதற்� ALE (Address
Latch Enable) க்� L – to – H pulse ைய
ெகா�க்க ேவண்�ம்.

3) SOC (Start of Conversion) க்� L to H ெகா�த்� conversion ைய ஆரம்ப�க்க ேவண்�ம்.


4) Conversion ���ம் வைர காத்தி�க்க�ம், ��ந்த�டன் EOC –ல் L to H என்ற மாற்றம் கிைடக்�ம்.
5) OE ைய enable ெசய்� ADC –ல் output ைய ெபற ேவண்�ம்.

15. EXPLAIN THE ADC 8051 INTERFACING WITH 8255.


 8255 –ைய 8051 உடன் interface ெசய்வதன் �லம்
8051 –ல் உள்ள I /O Port கைள அதிக�த்�

ெகாள்ளலாம்.

 8255 –ன் D0 – D7 ஆன� 8051 –ன் Port 0 உடன்


���� , �����
இைணக்கப்பட்�ள்ள�. 8255 –ன் 𝐼𝐼𝑅𝑅 𝑊𝑊𝐼𝐼 ஆன�
8051 –ன் ����
𝐼𝐼𝑅𝑅 (P3.7), �����
𝑊𝑊𝐼𝐼 (P3.6) உடன்

இைணக்கப்பட்�ள்ள�.
 8255 ஆன� ஒ� external memory ேபான்�
ெசயல்ப�ம். MOVX என்ற instruction �லம் 8255 ஐ
access ெசய்� ெகாள்ளலாம்.

10
11

UNIT-1
16. DRAW AND EXPLAIN THE BLOCK DIAGRAM OF 8051.
 DIP –ல் 40 pin கைள ெகாண்ட 8 bit microcontroller ACCUMULATOR
 8 Bit register, A register
I/O
Arithmetic &
என�ம்

LATCH
SPECIAL

PORT 0
PSW
Logic Unit FUNCTION A0 – A7
8 BIT
REGISTER
RAM
D0 – D7 அைழக்கப்ப�ம்.
addres
 Instruction –ன�ன்

LATCH

PORT 1
b
A B
I/O
operand register ஆக
ROM
PC DPTR I/O ெசயல்ப�ம்.

LATCH

PORT 2
DPH
DPL
A8 – A15
B – Register
I/O  Multiply and divide
16 BIT address bus
ெசயல்கள�ல்

LATCH

PORT 3
INTERRUPT
COUNTER
SERIAL பயன்ப�கிற�. Scratch
����
EA DATA

ALE SYSTEM TIMING


Byte/ Special
function
RD - WR
pad register –ஆக�ம்
�������
PSEN
SYSTEM

பயன்ப�த்தலாம்.
register
INTERRUPTS
Bit
XTAL1
TIMERS
IE
XTAL2 Register
RESET DATA BUFFERS Bank - 3 IP Program status word
MEMORY PCON
VCC
CONTROL Register
SBUF  Program –ன் status
Bank - 2
SCON
தகவல்கைள
GND

Register TCON
Bank - 1
TMOD ெகாண்��க்�ம்.
TLO
Register
Bank - 0 THO  Internal RAM –ன்
–ல்
TL1
TH1
நான்� bank
INTERNAL RAM structure ேதைவயான Register
bank –ைய select
Stacle pointer ெசய்கின்ற�
 Stack memory –ைய �ட்�காட்�வதற்� பயன்ப�கின்ற�.
 Stack pointer Reset ெசய்�ம் ேபா� 07H என�ம், store ெசய்�ம் ேபா� 08H என�ம்
இ�க்�ம்.

 PUSH, CALL instruction �லம் data ைவ stack –ல் store ெசய்யலாம்.


Data pointer
 16 bit register, 8 bit ெகாண்ட DPH, DPL என இரண்� register ஆ�ம் பயன்ப�த்தலாம்,
Port 0 to 3
 P0, P1, P2, P3 (Port 0, Port 1, Port 2, Port 3) என நான்� input output port ஆ�ம் இைவ
தன�த்தன�யான address –ைய ெகாண்ட�.
Serial data buffer
 Transmitting buffer, receiving buffer என இரண்� buffer கைளக் ெகாண்ட�.
 Transmitting parallel in serial out -ம், receiving serial in parallel out –ம் நைடெப�ம்.
Timer Register
 16 bit ெகாண்ட T0, T1 என இரண்� Register, இவற்ைற TLO, THO, TL1, TH1 என 8 bit
ெகாண்ட Register –களாக பயன்ப�த்தலாம்.
Control Register
 IP, IE, TMOD, TCON, SCON, PCON என்கின்ற control Register கைள ெகாண்ட�. control &
status தகவல்கைள ெகாண்��க்�ம்.
Timing & Control Unit
 அைனத்� ெசயல்க�க்�ம் ேதைவயான Timing and control signal கைள ஏற்ப�த்�கிற�.
Oscillator
 Microcontroller ெசயல்ப�வதற்� ேதைவயான அ�ப்பைட timing clock signal கைள
உ�வாக்�கிற�.
Instruction Register
 Instruction –ன�ன் opcode ைய decode ெசய்கின்ற�.

11
12

EPROM
 IC chip –�ள் EPROM அைமயப்ெபற்றி�க்�ம்.
RAM
 Internal ஆக 128 byte கைள ெகாண்ட�.
ALU
 Arithmetic & logical ெசயல்கைள 8 bit –ல் ெசய்கின்ற�.
SFR Register Bank
 Special function Register 80 H �தல் FFH வைர இ�க்�ம்.
Program Counter
 16 bit Register
 அ�த்� Execute ஆகேவண்�ய instruction ன�ன் memory address ைய ெகாண்��க்�ம்.
இதற்� internal address கிைடயா�.

17. DRAW THE ARCHITECTURE OF 8051 AND EXPLAIN.


வ�னா எண் 16 -ல் உள்ள வ�ைடைய இதற்�ம் எ�த�ம்.

18. DRAW AND EXPLAIN THE PIN DETAILS OF 8051.


PORT 0 (P 0.0 - P 0.7)
 Bidirectional -ல் தன்ைம �ைறய�ல் 8 bit I / O port
 Bit மற்�ம் byte �ைறய�ல் address ெசய்�ம் தன்ைம ெகாண்ட�.
 SFR –ல் தன� address ெகாண்ட�.
 External memory ைய access ெசய்�ம்ேபா� multiplex ெசய்யப்பட்ட address / data (AD7 – AD0) line
ஆக ெசயல்ப�ம்.
PORT 1
 Bidirectional -ல் தன்ைம �ைறய�ல் 8 bit I / O port
 Bit மற்�ம் byte �ைறய�ல் address ெசய்�ம் தன்ைம ெகாண்ட�.
 SFR –ல் தன� address ெகாண்ட�

12
13

 40 pin ெகாண்ட DIP IC


 VCC : +5V
 VSS : Ground
 Reset : Microcontroller -ைய Reset ெசய்ய

பயன்ப�கின்ற�.
ALE / Program (Address Latch Enable)
o External memory ைய access ெசய்�ம் ேபா� high (1) level-ல்
இ�க்�ம்.
����
𝑬𝑨 : External Access
𝑖𝑓 ����
𝐸𝐴𝐴 = 0 → 𝐸𝑥𝑡𝑒𝑟𝑛𝑎𝑙 𝑚𝑒𝑚𝑜𝑟𝑦 𝑎𝑐𝑐𝑒𝑠𝑠
𝑖𝑓 ����
𝐸𝐴𝐴 = 1 → 𝐼𝐼𝑛𝑡𝑒𝑟𝑛𝑎𝑙 𝑚𝑒𝑚𝑜𝑟𝑦 𝑎𝑐𝑐𝑒𝑠𝑠
��������
𝑷𝑺𝑬𝑵 (Program Store Enable)
 Low level –ல் external program memory –ைய read ெசல்கின்ற�.
XTAL1 & XTAL2
Clock frequency –ைய உ�வாக்�கின்ற oscillator

PORT 2
 Bidirectional -ல் தன்ைம �ைறய�ல் 8 bit I / O port
 Bit மற்�ம் byte �ைறய�ல் address ெசய்�ம் தன்ைம ெகாண்ட�.
 SFR –ல் தன� address ெகாண்ட�.
 External memory ைய access ெசய்�ம் ேபா� higher order address (A8 – A15) அதன் வழிேய
ெசல்�ம்.
PORT 3 (P 0.0 - P 0.7)
 Bidirectional -ல் தன்ைம �ைறய�ல் 8 bit I / O port
 Bit மற்�ம் byte �ைறய�ல் address ெசய்�ம் தன்ைம ெகாண்ட�.
 SFR –ல் தன� address ெகாண்ட�.
 கீ ேழ உள்ள ேவ� ெசயல்க�க்�ம் பயன்ப�கின்ற�.
P3. 0  R × D (Serial Input Port)
P3. 1  T × D (Serial Output Port)
P3. 2  �������
𝐼𝐼𝐼𝐼𝐼𝐼𝑂𝑂 (External Interrupt 0)
P3. 3  �������
𝐼𝐼𝐼𝐼𝐼𝐼1 (External Interrupt 1)
P3. 4  To (Timer / Counter 0)
P3. 5  T1 (Timer / Counter 1)
����� (External data memory write strobe)
P3.6  𝑊𝑊𝐼𝐼
P3. 7  ����
𝐼𝐼𝑅𝑅 (External data memory read strobe)

19. EXPLAIN THE MEMORY ORGANISATION OF 8051.


Three types
1. 64 K byte Program memory
2. 64 K byte External data memory
3. 256 byte Internal data memory
FFFF INTERNAL
DATA MEMORY FFF H
EXTERNAL EXTERNAL
���� = 0 𝑜𝑟 1
𝐸𝐴𝐴 FF H SPECIAL
DATA
MEMORY 64
FUNCTION
1000 REGISTER
KBYTES

80 H 128 BYTES

0FFF 0FFF 7FH INTERNAL


INTERNAL EXTERNAL DATA RAM
���� = 1
𝐸𝐴𝐴 ���� = 0
𝐸𝐴𝐴 128 BYTES
00 H 0000 H
0000 0000
RAM
ROM
13
14

ROM
 Write ெசய்ய இயலா�, read மட்�ம் ெசய்யலாம்.
 64 K byte –ல் internal மற்�ம் external memory இ�க்கலாம்.
𝑖𝑓 ����
𝐸𝐴𝐴 = 1 → (0000 𝐻 − 0𝑂𝑂𝑂𝑂𝑂𝑂 𝐻) → 𝐼𝐼𝐼𝐼𝐼𝐼𝐸𝐼𝐼𝐼𝐼𝐴𝐴𝐿 𝑚𝑒𝑚𝑜𝑟𝑦 − ல் இ�ந்� 𝑓𝑒𝑡𝑐ℎ ெசய்யப்ப�ம்.
→ (1000 𝐻 − 𝑂𝑂𝑂𝑂𝑂𝑂𝑂𝑂 𝐻) → 𝐸𝑋𝐼𝐼𝐸𝐼𝐼𝐼𝐼𝐴𝐴𝐿 𝑚𝑒𝑚𝑜𝑟𝑦 − ல் இ�ந்� 𝑓𝑒𝑡𝑐ℎ ெசய்யப்ப�ம்.
𝑖𝑓 ����
𝐸𝐴𝐴 = 0 → 𝐸xternal memory ல் இ�ந்� 𝑓𝑒𝑡𝑐ℎ ெசய்யப்ப�ம்.
�������� External memory-ன் read stobe signal –ஆக ெசயல்ப�ம்.
 𝑃𝑆𝑆𝐸𝐼𝐼
RAM
 Internal, External என தன�தன� ப�திகைளக் ெகாண்ட�.
Internal
a) 128 byte lower internal RAM ( 00 H – 7F H)
b) 128 byte upper SFR ( 80 H – FF H) என இரண்� ப�திகைளக் ெகாண்ட�.
 எட்� எட்� Register கைள ெகாண்ட நான்� bank ( 0 – 31) 32 location கள�ல் உள்ள�.
 32-47  16 location கள் bit and byte –ல் address ெசய்யலாம்.
 அ�த்� 80 location –ன் byte –ல் மட்�ேம address ெசய்யலாம்.
 Lower internal RAM ைய direct and indirect �ைறய�ல் access ெசய்யலாம்.
 21 SFR உள்ள�, இதில் 11 SFR –ைய bit மற்�ம் byte –�ம் 10 ைய byte –�ம் address
ெசய்யலாம்.

 SFR –ைய direct ஆக மட்�ேம address ெசய்ய ���ம்.


External
 Maximum 64 K byte இ�க்�ம்.
���� , �����
 𝐼𝐼𝑅𝑅 𝑊𝑊𝐼𝐼 signal �லம் Read, Write ெசய்யலாம்.
 1 byte ந�ளம் ெகாண்ட address ஆன� R0 , R1 �ல�ம், 2 byte ந�ளம் ெகாண்ட address
ஆன� DPTR �ல�ம் indirect –ஆக �றிப்ப�டப்ப�கின்ற�.
 MOV X instruction –ன் �லம் external RAM –ைய access ெசய்யலாம் ேம�ம் instruction –
ன�ன் operand field –ல் accumulator இ�க்�ம்.
127
F0H
255 48
E0H ADDRESABLE
127 120
DOH BITS IN RAM
32 7 0
B8H 128 BITS
SPECIAL ADDRESABLE
R7 BANK 3
FUNCTION BITS IN SFRs
A8H R0
REGISTERS 24
A0H INTERNAL R7 BANK 2
98H DATA RAM R0 REGISTERS
90H 16
88H R7 BANK 1
R0
128 80H
8
R7 BANK 0
R0
0

14
15

1. Define microcontroller? State its application.


 Microprocessor உடன் input output port கள், memory, Timer / counter ஆகியவற்றிைன
ஒன்றாக VLSI ெதாழிற்�ட்பத்தினால் உ�வாக்கப்பட்ட IC chip microcontroller எனப்ப�ம்.
Application
 Micro oven , Television, VCR, Washing machine and Traffic control
2. Comparison of microcontroller and microprocessor.
Microprocessor Microcontroller
1 இ� Computer on a chip எனப்ப�ம். இ� True computer on a chip எனப்ப�ம்.
2 Memory, Timer/ Counter, Serial port, Parallel port Memory, Timer/ Counter, Serial Port, Parallel Port
ேபான்றைவ கிைடயா�. ேபான்றைவ உண்�.
3 ஒ� ெசயைல ெசய்���க்க அதிக ேநரம் ஒ� ெசயைல ெசய்� ��க்க �ைறவான
ேதைவப்ப�ம். ேநரம் ேபா�ம்.

3. What is the function of PSW Register

D7 D6 D5 D4 D3 D2 D1 D0 LSB
MSB
CY AC FO RS1 RS0 OV - P

Program status தகவல்கைள ெகாண்��க்�ம்.


CY  Carry flag
AC  Auxillary Carry flag
FO  Flag O
RS1, RSO  Register Bank –ஐ Select ெசய்கின்ற bit
OV  overflow flag
-  Reserve ெசய்யப்பட்�ள்ள�.
P  Parity flag
4. What is the use of B register or explain the instruction MUL AB, DIV AB.
 B register multiplication and division ெசயல்க�க்� பயன்ப�கின்ற�.
 MUL AB  A �ம் B �ம் multiply ஆகி கிைடக்கின்ற ��வ�ன் higher byte B ய��ம்
lower byte A ய��ம் store ஆகின்ற�.
 DIV AB  A ய�ன் மதிப்� B –ன் மதிப்பால் divide ெசய்யப்பட்� கிைடக்கின்ற

��வ�ன் Quotient (ஈ.�) A ய��ம், Remainder (ம� தி) B Register –�ம் store ஆகின்ற�.

5. What is an assembler.
Assembler என்ப� assembly language program –கைள machine language ஆக மா�கின்ற software
ஆ�ம்.

6. Write the bit and byte addresses of port used in 8051.


Byte address Bit address
MSB - LSB
P0 80H 87 H 80H
P1 90H 97 H 90H
P2 A0H A7 H A0H
P3 B0H B7 H B0H

7. Explain the input output (I / O) bit addresses for internal RAM.


 00 H – 1F H வைர உள்ள 32 byte location, 32 register கைள ெகாண்ட�. இைவ நான்� bank
bank –லி�ம் 8 register கைள ெகாண்ட�.
களாகப் ப��க்கப்பட்�, ஒவ்ெவா�
 20 H – 2F H வைர உள்ள 16 byte location ைய 16 byte ஆக அல்ல� 128 bit ஆக address
ெசய்யலாம்.

 30 H – 7F H வைர உள்ள 80 location byte �ைறய�ல் மட்�ேம address ெசய்ய ���ம்.


15
16

8. Write the format structure of assembly language?


[ LABEL : ] MNEMONIC [ OPERANDS ] [ ; COMMENT]
9. State the various types of operating modes used in T/C of 8051.
Mode 0 (13 bit T/ C)
Mode 1 (16 bit T/ C)
Mode 2 (8 bit Reload T/ C)
Mode 3 (8 bit Split T/ C)
10. Define Baud rate?
 One second ேநர இைடெவள�ய�ல் அ�ப்பப்ப�ம் bit கள�ன் எண்ண�க்ைகேய (bps) baud rate.
11. What is a interrupt? Sate its types.
 Interrupt என்பன control signal களா�ம். microcontroller –க்� interrupt கிைடத்த�டன், அ�
ஏற்கனேவ execute ெசய்� ெகாண்��ந்த program ைய நி�த்திவ�ட்�, அதன் control –ைய
interrupt –க்� உ�ய subroutine –க்� ெசல்கிற�.
Types
o External interrupt 0 (IE0)
o Timer interrupt 0 (TF0)
o External interrupt 1 (IE1)
o Timer interrupt 1 (TF1)
o Serial port interrupt (R1 + T1)
12. State the features of RS 232.
 Serial ஆக data ைவ communicate ெசய்வதற்� பயன்ப�கிற�.
 Protocol & electrical ஆகிய இரண்� வைகயான standard கைள�ம் ெகாண்��க்�ம்.
 50 அ� �ரம் வைர data ைவ communicate ெசய்கின்ற தன்ைம ெகாண்ட�.
 அதிகள� Band rate 20,000 ஆ�ம்.
 TTL �டன் ேநர�யாக இைணக்க ��யா�.
13. Define ADC and DAC
ADC  Analog to digital conveters.
DAC  Digital to analog converters
14. Write teh control word format in 8255

D7 D6 D5 D4 D3 D2 D1 D0

1 = I/O Mode selection Port A Port C1 Mode selection Port B Port CL


Mode 00 = Mode 0 1 = Input PC7 – PC 4 0 = Mode 0 1 = Input PC3 – PC 0
0 = BSR 01 = Mode 1 0 = Output 1 = Input 1 = Mode 1 0 = Output 1 = Input
Mode 1X = Mode 2 0 = Output 0 = Output

GROUP A GROUP B

15. Explain BSR mode of 8051


5.10 5.8

D7 D6 D5 D4 D3 D2 D1 D0 LSB
MSB
0 X X X S/R

SET = 1
BSR
NOT USED RESET = 0
MODE (DON ’ T CARE)

BIT select
000 001 010 011 100 101 110 111
Bit 0 Bit 1 Bit 2 Bit 3 Bit 4 Bit 5 Bit 6 Bit 7

16

You might also like