Tải bản đầy đủ (.pdf) (24 trang)

VI ĐIỀU KHIỂN GIAO TIẾP ADC ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (850.21 KB, 24 trang )

Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 1
VI ĐIỀU KHIỂN GIAO TIẾP ADC
(ANALOG TO DIGITAL CONVERTER)
BÀI SỐ X-1: YÊU CẦU: ĐO NHIỆT ĐỘ DÙNG ADC
 MẠCH ĐIỆN GIAO TIẾP
MỘT HỆ THỐNG DÙNG VI ĐIỀU KHIỂN GIAO TIẾP VỚI ADC:
 P0 KẾT NỐI VỚI 8 ĐOẠN A, B, C, D, E, F, G, DP
 P2.0, P2.1, P2.2 ĐIỀU KHIỂN 3 TRANSISTOR CẤP DÒNG CHO 3 LED 7 ĐOẠN
 P3 NHẬN DỮ LIỆU SỐ TỪ ADC
 P1.0, P1.1, P1.2 => A0, A1, A2; P1.3, P1.4 => ALE, START

ĐỘ PHÂN GIẢI: HAY STEP SIZE:
 VỚI ADC 0809 LÀ 8 BIT THÌ CÓ 256 TRẠNG THÁI
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 2
)12(
8






REFREF
REFI
VV
VV
N

CHO :


0
REF
V
THÌ
255)12(
8

 REF
I
REF
I
V
V
V
V
N

NẾU CHỌN
MVV
REF
2550

THÌ
I
VN 1.0
SUY RA ĐỘ PHÂN GIẢI
NẾU
0
I
V

THÌ
0N

NẾU
10
I
V
THÌ
1N

ĐỘ PHÂN GIẢI SS = 10MV

NẾU CHỌN
MVV
REF
255

THÌ
I
VN 

NẾU
0
I
V
THÌ
0N

NẾU
1

I
V
THÌ
1N

ĐỘ PHÂN GIẢI SS = 1MV

SO SÁNH KHÁC NHAU GIỮA 2 SS VỚI CÙNG ADC 8BIT
ĐATT
mV
GIÁ TRỊ SỐ 8 BIT
SS=10mV,
VV
REF
0


VV
REF
55,2


Tp
GIÁ TRỊ SỐ 8 BIT
SS=5mV,
VV
REF
0



VV
REF
275,1


tp

GIÁ TRỊ SỐ
8 BIT
SS=1mV,
VV
REF
0


VV
REF
255.0


tp
0
0000 0000
0
0000 0000
0

0000 0000
0
1

0000 0000
0
0000 0000
0

0000 0001
1
2
0000 0000
0
0000 0000
0

0000 0010
2








5
0000 0000
0
0000 0001
1

0000 0101

5
10
0000 0001
1
0000 0010
2

0000 1010
10
20
0000 0010
2
0000 0100
4

0001 0100
20
30
0000 0011
3
0000 0110
6

0001 1110
30
35
0000 0011
3
0000 0111
7












255













1111 1111
255









1275
0111 1111
127
1111 1111
255
FS
1111 1111
255
1300
1000 0010
130
1111 1111
255

1111 1111
255
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 3



Bảo hòa FS=1275





2550
1111 1111
255





2560
BẢO HÒA
255


FS



NẾU MUỐN ĐÁP ỨNG NỮA VỚI SỰ THAY ĐỔI CỦA TÍN HIỆU TƯƠNG TỰ
THÌ PHẢI TĂNG:
- TĂNG STEP SIZE
- TĂNG SỐ BIT ADC LÊN VÍ DỤ NHƯ ADC 10 BIT

 DẠNG SÓNG ĐIỀU KHIỂN ADC


BÀI SỐ 1:
CHUYỂN ĐỔI KÊNH TƯƠNG TỰ THỨ 7 HIỂN THỊ KẾT QUẢ ĐO TRÊN LED 7
ĐOẠN.
 LƯU ĐỒ ĐIỀU KHIỂN

Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 4
BEGIN
TẠO XUNG ALE
TẠO XUNG START
END
DELAY HIỂN THỊ
CHỜ CHUYỂN ĐỔI
XONG
CHỌN KÊNH THỨ 0
CHUYỂN HEX=> BCD
GIẢI MÃ

 VIẾT CHƯƠNG TRÌNH
;CHUONG TRINH CHUYEN DOI ADC KENH THU 7
ALE BIT P1.3
START BIT P1.4

ORG 0H
MOV DPTR,#MA7DOAN

MOV P1,#00111B ;START,ALE = 00; A2A1A0 = 111
MAIN: SETB ALE ;ALE=1
SETB START ;START=1
NOP
NOP
CLR START ;START=0
CLR ALE ;ALE =0
CALL DELAY_HIENTHI
CALL HEXTOBCD

CALL GIAIMA
JMP MAIN
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HEXTOBCD: MOV A,P3
MOV B,#10
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 5
DIV AB
MOV 27H,B ;(27H)=DVI
MOV B,#10
DIV AB
MOV 26H,B ;(26H)=CHUC
MOV 25H,A ;(25H)=TRAM
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
GIAIMA: MOV A,27H
MOVC A,@A+DPTR
MOV 37H,A
MOV A,26H
MOVC A,@A+DPTR
MOV 36H,A
MOV A,25H
MOVC A,@A+DPTR
MOV 35H,A

CJNE A,#0C0H,GMA
MOV 35H,#0FFH
GMA: RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
DELAY_HIENTHI: MOV 77H,#20

DEL: CALL HIENTHI
DJNZ 77H,DEL
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HIENTHI: MOV P0,37H
CLR P2.0
CALL DELAY1MS
SETB P2.0
MOV P0,36H
CLR P2.1
CALL DELAY1MS
SETB P2.1
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 6
MOV P0,35H
CLR P2.2
CALL DELAY1MS
SETB P2.2
RET
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
$INCLUDE(TV_DELAY.ASM)
END
BÀI SỐ 2: CHUYEN DOI ADC VA DIEU KHIEN 1 RELAY
YEU CAU: NHIET DO NHO HON 40 THI RELAY ON, LỚN HƠN 40 THÌ RELAY NGẮT
;CHUONG TRINH CHUYEN DOI ADC KENH THU 7
ALE BIT P1.3
START BIT P1.4
RELAY1 BIT P1.6
RELAY2 BIT P1.7
ORG 0H

MOV DPTR,#MA7DOAN
MOV P1,#00111B ;START,ALE = 00; A2A1A0 = 111
MAIN: SETB ALE ;ALE=1
SETB START ;START=1
NOP
NOP
CLR START ;START=0
CLR ALE ;ALE =0
CALL DELAY_HIENTHI
CALL HEXTOBCD
CALL GIAIMA
CALL SOSANH_DKRL
JMP MAIN
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
SOSANH_DKRL:
MOV A,P3
CJNE A,#40,SS1
SS1: JNC SS2
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 7
SETB RELAY1
RET
SS2: CLR RELAY1
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HEXTOBCD:
MOV A,P3
MOV B,#10
DIV AB
MOV 27H,B ;(27H)=DVI

MOV B,#10
DIV AB
MOV 26H,B ;(26H)=CHUC
MOV 25H,A ;(25H)=TRAM
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
GIAIMA: MOV A,27H
MOVC A,@A+DPTR
MOV 37H,A
MOV A,26H
MOVC A,@A+DPTR
MOV 36H,A
MOV A,25H
MOVC A,@A+DPTR
MOV 35H,A
CJNE A,#0C0H,GMA
MOV 35H,#0FFH
GMA: RET

;XXXXXXXXXXXXXXXXXXXXXXXXXXX
DELAY_HIENTHI: MOV 77H,#20
DEL: CALL HIENTHI
DJNZ 77H,DEL
RET
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 8
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HIENTHI: MOV P0,37H
CLR P2.0
CALL DELAY1MS

SETB P2.0
MOV P0,36H
CLR P2.1
CALL DELAY1MS
SETB P2.1
MOV P0,35H
CLR P2.2
CALL DELAY1MS
SETB P2.2
RET
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
$INCLUDE(TV_DELAY.ASM)
END

CHUYỂN ĐỔI KÊNH TƯƠNG TỰ THỨ 1 HIỂN THỊ KẾT QUẢ ĐO TRÊN LED 7
ĐOẠN.
;CHUONG TRINH CHUYEN DOI ADC KENH THU 1
ALE BIT P1.3
START BIT P1.4
ORG 0H
MOV DPTR,#MA7DOAN
MAIN: MOV P1,#00001B ;START,ALE = 00; A2A1A0 = 001
SETB ALE ;ALE=1
SETB START ;START=1
NOP
NOP
CLR START ;START=0
CLR ALE ;ALE =0
CALL DELAY_HIENTHI
CALL HEXTOBCD

Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 9
CALL GIAIMA
JMP MAIN
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HEXTOBCD:
MOV A,P3
MOV B,#10
DIV AB
MOV 27H,B
MOV B,#10
DIV AB
MOV 26H,B
MOV 25H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
GIAIMA: MOV A,27H
MOVC A,@A+DPTR
MOV 37H,A
MOV A,26H
MOVC A,@A+DPTR
MOV 36H,A
MOV A,25H
MOVC A,@A+DPTR
MOV 35H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
DELAY_HIENTHI: MOV 7FH,#100
DEL: CALL HIENTHI
DJNZ 7FH,DEL

RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HIENTHI: MOV P0,37H
MOV P2,#11111110B
CALL DELAY1MS
MOV P0,36H
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 10
MOV P2,#11111101B
CALL DELAY1MS
MOV P0,35H
MOV P2,#11111011B
CALL DELAY1MS
RET
MA7DOAN: DB 0C0H,
$INCLUDE(TV_DELAY.ASM)
END
BÀI SỐ 3:
CHUYỂN ĐỔI KÊNH TƯƠNG TỰ THỨ 6 VÀ THỨ 7 HIỂN THỊ KẾT QUẢ ĐO TRÊN
6 LED 7 ĐOẠN.
;CHUONG TRINH CHUYEN DOI ADC 2 KENH THU 6 VA THU 7
ALE BIT P1.3
START BIT P1.4
ORG 0H
MOV DPTR,#MA7DOAN

MAIN: MOV P1,#00110B ;KENH 6
CALL CONVERT
CALL DELAY_HIENTHI
CALL HEXTOBCD_K6

CALL GIAIMA_K6

MOV P1,#00111B ;KENH 7
CALL CONVERT
CALL DELAY_HIENTHI
CALL HEXTOBCD_K7
CALL GIAIMA_K7
JMP MAIN
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
CONVERT: SETB ALE ;ALE=1
SETB START ;START=1
NOP
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 11
NOP
CLR START ;START=0
CLR ALE ;ALE =0
RET
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
HEXTOBCD_K6: MOV A,P3
MOV B,#10
DIV AB
MOV 27H,B ;DVI-6
MOV B,#10
DIV AB
MOV 26H,B ;CHUC-6
MOV 25H,A ;TRAM-6
RET

HEXTOBCD_K7: MOV A,P3

MOV B,#10
DIV AB
MOV 24H,B ;DVI-7
MOV B,#10
DIV AB
MOV 23H,B ;CHUC-7
MOV 22H,A ;TRAM-7
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
GIAIMA_K6: MOV A,27H
MOVC A,@A+DPTR
MOV 37H,A
MOV A,26H
MOVC A,@A+DPTR
MOV 36H,A
MOV A,25H
CJNE A,#0,GMA6
MOV 35H,#0FFH ;XOA SO 0 VO NGHIA
RET
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 12
GMA6: MOVC A,@A+DPTR
MOV 35H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
GIAIMA_K7: MOV A,24H
MOVC A,@A+DPTR
MOV 34H,A
MOV A,23H
MOVC A,@A+DPTR

MOV 33H,A
MOV A,22H
CJNE A,#0,GMA7
MOV 32H,#0FFH ;XOA SO 0 VO NGHIA
RET
GMA7: MOVC A,@A+DPTR
MOV 32H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
DELAY_HIENTHI: MOV 76H,#50
DEL: CALL HIENTHI
DJNZ 76H,DEL
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HIENTHI: MOV P0,37H
CLR P2.0
CALL DELAY1MS
SETB P2.0

MOV P0,36H
CLR P2.1
CALL DELAY1MS
SETB P2.1

MOV P0,35H
CLR P2.2
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 13
CALL DELAY1MS
SETB P2.2

;
MOV P0,34H
CLR P2.5
CALL DELAY1MS
SETB P2.5

MOV P0,33H
CLR P2.6
CALL DELAY1MS
SETB P2.6

MOV P0,32H
CLR P2.7
CALL DELAY1MS
SETB P2.7
RET
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
$INCLUDE(TV_DELAY.ASM)
END

BÀI SỐ 3:
CHUYỂN ĐỔI KÊNH 7 VÀ ĐIỀU KHIỂN RELAY DÙNG BIT P1.7
NHIỆT ĐỘ NHỎ 50 THÌ ĐÓNG RELAY
NHIỆT ĐỘ LỚN HƠN HAY BẰNG 50 THÌ NGẮT RELAY

Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 14

Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 15


;CHUONG TRINH CHUYEN DOI ADC KENH THU 7 VA DKHIEN RELAY
ALE BIT P1.3
START BIT P1.4
RELAY BIT P1.7

ORG 0H
MOV DPTR,#MA7DOAN
MOV P1,#00111B ;CHANNEL 7

MAIN: CALL CONVERT
CALL SOSANH
CALL DELAY_HIENTHI
CALL HEXTOBCD
CALL GIAIMA
JMP MAIN
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SOSANH: MOV A,P3
CJNE A,#50,SS1 ;(A)>=50 THI C=0, (A)<50 THI C=1
SS1: JNC SS2 ;NHAY NEU C=0 HAY (A) >= 50
SETB RELAY ;RELAY ON
RET
SS2: CLR RELAY ;RELAY OFF
RET
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 16
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
CONVERT: SETB ALE ;ALE=1
SETB START ;START=1
NOP

NOP
CLR START ;START=0
CLR ALE ;ALE =0
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HEXTOBCD: MOV A,P3
MOV B,#10
DIV AB
MOV 27H,B
MOV B,#10
DIV AB
MOV 26H,B
MOV 25H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
GIAIMA: MOV A,27H
MOVC A,@A+DPTR
MOV 37H,A
MOV A,26H
MOVC A,@A+DPTR
MOV 36H,A
MOV A,25H
CJNE A,#0,GMA
MOV 35H,#0FFH ;XOA SO 0 VO NGHIA
RET

GMA: MOVC A,@A+DPTR
MOV 35H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX

DELAY_HIENTHI: MOV 76H,#100
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 17
DEL: CALL HIENTHI
DJNZ 76H,DEL
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HIENTHI: MOV P0,37H
CLR P2.0
CALL DELAY1MS
SETB P2.0

MOV P0,36H
CLR P2.1
CALL DELAY1MS
SETB P2.1

MOV P0,35H
CLR P2.2
CALL DELAY1MS
SETB P2.2
RET
MA7DOAN: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
$INCLUDE(TV_DELAY.ASM)
END


CHUYỂN ĐỔI KÊNH 0 VÀ ĐIỀU KHIỂN RELAY DÙNG BIT P2.0
NHIỆT ĐỘ NHỎ HAY BẰNG 50 THÌ ĐÓNG RELAY
NHIỆT ĐỘ LỚN HƠN 50 THÌ NGẮT RELAY

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SOSANH: MOV A,P3
CJNE A,#50,SOSA ;NHAY DEN NHAN S0SA VI <>
SOSA1: CLR RELAY ;DONG RELAY
RET
SOSA: JC SOSA1 ;NHAY NEU C=1
SETB RELAY ;NGAT RELAY
RET
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 18

CHUYỂN ĐỔI KÊNH 0 VÀ ĐIỀU KHIỂN RELAY DÙNG BIT P2.0
NHIỆT ĐỘ NHỎ 50 THÌ ĐÓNG RELAY
NHIỆT ĐỘ LỚN HƠN 70 THÌ NGẮT RELAY
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
SOSANH: MOV A,P3
CJNE A,#50,SOSA ;NHAY DEN NHAN S0SA VI <>
RET

SOSA: JNC SOSA2 ;NHAY NEU C=0 (>50)
CLR RELAY ;DONG RELAY
RET
SOSA2: CJNE A,#70,SOSAB
RET
SOSAB: JC SOSAC ;NHAY NEU NHO HON 70
SETB RELAY
SOSAC: RET


BÀI TÂP: ĐO NHIỆT ĐỘ LẦN LƯT 2 KÊNH THỨ 0 VÀ THỨ 1: THỜI GIAN ĐO

VÀ HIỂN THỊ CHO MỖI KÊNH LÀ 1 GIÂY.
GIẢI:

 VIẾT CHƯƠNG TRÌNH
ALE BIT P1.3
START BIT P1.4
BDN EQU 20H ;BIEN DEM NGAT
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ORG 0000H
JMP MAIN
ORG 000BH ;DCHI NGAT CUA TIMER0
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
INC BDN
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 19
CJNE BDN,#20,EXIT
MOV BDN,#00 ;XOA SAU 1 GIAY
CPL P1.0 ;DAO BIT DIA CHI A0
EXIT: RETI
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MAINA: MOV TMOD,#00000001
SETB TR0
MOV P1,#00000B ;START,ALE = 00; A2A1A0 = 000
MAIN: MOV DPTR,#MA7DOAN
SETB ALE
SETB START
NOP ;NO OPERATION KLGC
NOP
CLR START

CLR ALE
CALL DELAY_HIENTHI
CALL HEXTOBCD
CALL GIAIMA
JMP MAIN
BÀI TÂP: ĐO NHIỆT ĐỘ LẦN LƯT 4 KÊNH THỨ 0 VÀ THỨ 3: THỜI GIAN ĐO
VÀ HIỂN THỊ CHO MỖI KÊNH LÀ 1 GIÂY.
GIẢI:

 VIẾT CHƯƠNG TRÌNH
ALE BIT P1.3
START BIT P1.4
BDN EQU 20H ;BIEN DEM NGAT

;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ORG 0000H
JMP MAIN
ORG 000BH ;DCHI NGAT CUA TIMER0
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 20
INC BDN
CJNE BDN,#20,EXIT
MOV BDN,#00 ;XOA SAU 1 GIAY
INC P0 ;00 => 01 =>10 =>11 => 100=>00
ANL P0,#00000011B
EXIT: RETI
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MAINA: MOV TMOD,#00000001

SETB TR0
MOV P1,#00000B ;START,ALE = 00; A2A1A0 = 000
MAIN: MOV DPTR,#MA7DOAN
SETB ALE
SETB START
NOP ;NO OPERATION KLGC
NOP
CLR START
CLR ALE
CALL DELAY_HIENTHI
CALL HEXTOBCD
CALL GIAIMA
JMP MAIN
BÀI TÂP: ĐO NHIỆT ĐỘ LẦN LƯT 5 KÊNH THỨ 0 VÀ THỨ 4: THỜI GIAN ĐO
VÀ HIỂN THỊ CHO MỖI KÊNH LÀ 1 GIÂY.
GIẢI:

 VIẾT CHƯƠNG TRÌNH
ALE BIT P1.3
START BIT P1.4
BDN EQU 20H ;BIEN DEM NGAT
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
ORG 0000H
JMP MAIN
ORG 000BH ;DCHI NGAT CUA TIMER0
MOV TH0,#HIGH(-50000)
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 21
MOV TL0,#LOW(-50000)
INC BDN

CJNE BDN,#20,EXIT
MOV BDN,#00 ;XOA SAU 1 GIAY
INC P0 ;00 => 01 =>10 =>11 => 100=>00
MOV A,P0
CJNE A,#5,EXIT
MOV P0,#00000000B
EXIT: RETI
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
MAINA: MOV TMOD,#00000001
SETB TR0
MOV P1,#00000B ;START,ALE = 00; A2A1A0 = 000
MAIN: MOV DPTR,#MA7DOAN
SETB ALE
SETB START
NOP ;NO OPERATION KLGC
NOP
CLR START
CLR ALE
CALL DELAY_HIENTHI
CALL HEXTOBCD
CALL GIAIMA
JMP MAIN
 LƯU ĐỒ ĐIỀU KHIỂN SỬ DỤNG TÍN HIỆU EOC
CHUYỂN ĐỔI KÊNH TƯƠNG TỰ THỨ 0
CÁCH 1 DELAY CHỜ CHUYỂN ĐỔI XONG
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 22
BEGIN
TẠO XUNG ALE
TẠO XUNG START

END
CHỌN KÊNH THỨ 0
CHUYỂN HEX=> BCD
GIẢI MÃ
EOC=0
HIỂN THỊ
Đ
S
EOC=1
HIỂN THỊ
Đ
S


BEGIN
TẠO XUNG ALE
TẠO XUNG START
END
CHỌN KÊNH THỨ 0
CHUYỂN HEX=> BCD
GIẢI MÃ
EOC=0
Đ
S
EOC=1
Đ
S
HIỂN THỊ

Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú

Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 23
 VIẾT CHƯƠNG TRÌNH
;CHUONG TRINH CHUYEN DOI ADC KENH THU 0
ALE BIT P1.3
START BIT P1.4
ORG 0H
MOV DPTR,#MA7DOAN
MAIN: MOV P1,#00000B ;START,ALE = 00; A2A1A0 = 000
SETB ALE
SETB START
NOP
NOP
CLR START
CLR ALE
CALL DELAY_HIENTHI
CALL HEXTOBCD
CALL GIAIMA
JMP MAIN
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HEXTOBCD:
MOV A,P3
MOV B,#10
DIV AB
MOV 27H,B
MOV B,#10
DIV AB
MOV 26H,B
MOV 25H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX

GIAIMA: MOV A,27H
MOVC A,@A+DPTR
MOV 37H,A
MOV A,26H
MOVC A,@A+DPTR
Đại học sư phạm kỹ thuật tp HCM khoa điện – điện tử Nguyễn Đình Phú
Bộ môn điện tử công nghiệp bài giảng vi điều khiển: giao tiếp ADC 24
MOV 36H,A
MOV A,25H
MOVC A,@A+DPTR
MOV 35H,A
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
DELAY_HIENTHI: MOV 7FH,#100
DEL: CALL HIENTHI
DJNZ 7FH,DEL
RET
;XXXXXXXXXXXXXXXXXXXXXXXXXXX
HIENTHI: MOV P0,37H
MOV P2,#11111110B
CALL DELAY1MS
MOV P0,36H
MOV P2,#11111101B
CALL DELAY1MS
MOV P0,35H
MOV P2,#11111011B
CALL DELAY1MS
RET
MA7DOAN: DB 0C0H,
$INCLUDE(TV_DELAY.ASM)

END

×