7 Serial Port
7 Serial Port
Communication
Application
Port expansion
8051
TXD clk
RXD Shift register
data
oscillator cycle
RXD (data)
MOV SCON,#0001xxxxB
Wait: JNB TI,WAIT
CLR TI
MOV SBUF,A MOV SCON,#0001xxxxB
Wait: JNB RI,WAIT
CLR RI
MOV A,SBUF
(MSB) (LSB)
GATE C/T M1 M0 GATE C/T M1 M0
Timer 1 Timer 0
M_Nokhodchian @ yahoo.com Microprocessors 1-12
M_Nokhodchian @ yahoo.com Microprocessors 1-13
Programming for sending data
( in mode 1 )
1. MOV TMOD,#20H
(MSB (LSB)
GATE
) C/T M1 M0 GATE C/T M1 M0
Timer 1 Timer 0
9600 -3 FD
2400 -12 F4
1200 -24 E8
XTAL=11.0592 MHz
4. SETB TR1
5. MOV SBUF, DATA
6. WAIT: JNB TI,WAIT
7. CLR TI
M_Nokhodchian @ yahoo.com Microprocessors 1-14
Programming for sending data
( in mode 1 )
Serial example(1)
Serial example(2)
Mode 3
Same as mode 2
But may have a variable baud rate generated from Timer 1.
Org 0003h
Orl pcon,#02h ;power down mode
Reti
Org 0030h
Main:
……
……
……
Orl pcon,#01h ;Idle mode
end