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

Ứng dụng họ vi điều khiển 8051 ghép nối với LED 7 thanh để hiển thị số đo tần số lưới điện công nghiệp với khoảng đo (45 – 55) Hz

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 (1.2 MB, 33 trang )

ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA ĐIỆN

ĐỒ ÁN
MÔN: VI XỬ LÝ VÀ ĐO LƯỜNG ĐIỆN
ĐỀ TÀI: Ứng dụng họ vi điều khiển 8051 ghép nối với LED 7 thanh để hiển thị số
đo tần số lưới điện công nghiệp với khoảng đo (45 – 55) Hz.
Giáo viên hướng dẫn:

GVHD:NGUYỄN THU HÀ

Nguyễn Thu Hà

Page 1


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

ĐỀ BÀI: Ứng dụng họ vi điều khiển 8051 ghép nối 04 LED 7 thanh để hiển thị
số đo và cảnh báo tần số lưới điện cơng nghiệp, khoảng đo [45-55]Hz. Hệ thống
gồm có :
+ 01 Vi điều khiển 89C51RD2.
+ Ghép nối 04 LED bảy thanh.
+ Ghép nối mạch chuẩn hóa đo tần số.
+ Ghép nối 2 đèn LED cảnh báo ngưỡng thấp , ngưỡng cao.


+ Hai nút ấn RUN, STOP.
Hoạt động: Khi ấn RUN ,hệ thống thực hiện đo tần số; còn khi ấn, STOP hệ
thống lưu lại giá trị đo cuối cùng.

GVHD:NGUYỄN THU HÀ

Page 2


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ
MỤC LỤC

Contents

LỜI NÓI ĐẦU
Ngày nay, với những ứng dụng của khoa học kỹ thuật tiên tiến, thế giới
của chúng ta đã và đang ngày một thay đổi, văn minh và hiện đại hơn. Sự phát
triển của kỹ thuật điện tử đã tạo ra hàng loạt những thiết bị với các đặc điểm nổi
bật như sự chính xác cao, tốc độ nhanh, gọn nhẹ là những yếu tố rất cần thiết
góp phần cho hoạt động của con người đạt hiệu quả cao.
Các bộ điều khiển sử dụng vi điều khiển tuy đơn giản nhưng để vận hành
và sử dụng được lại là một điều rất phức tạp. Các bộ vi điều khiển theo thời gian
cùng với sự phát triển của công nghệ bán dẫn đã tiến triển rất nhanh, từ các bộ vi
điều khiển 4 bit đơn giản đến các bộ vi điều khiển 32 bit, rồi sau này là 64 bit.
Điện tử đang trở thành một ngành khoa học đa nhiệm vụ. Điện tử đã đáp ứng
được những địi hỏi khơng ngừng từ các lĩnh vực công – nông – lâm – ngư
nghiệp cho đến các nhu cầu cần thiết trong hoạt động đời sống hằng ngày.
Một trong những ứng dụng thiết thực trong đó là ứng dụng về nhiệt kế điện tử.

Với mơn học Vi điều khiển này, em đã quyết định nhận làm đồ án với đề tài ứng
dụng họ vi điều khiển 8051 ghép nối 04 led bảy thanh để hiển thị số đo và
cảnh báo tần số lưới điện công nghiệp,khoảng đo [45-55] hz
Nội dung báo cáo gồm 3 phần:
I – Cơ sở lý thuyết
II – Nội dung thiết kế
III – Kết luận
GVHD:NGUYỄN THU HÀ

Page 3


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

Mặc dù đã rất cố gắng thiết kế và làm mạch nhưng do thời gian ngắn và
năng lực còn hạn chế nên mạch vẫn cịn những sai sót. Em mong thầy giáo và
các bạn góp ý để việc học tập của em được tốt hơn.
Em xin chân thành cảm ơn!
HỆ THỐNG HIỂN THỊ SỐ ĐO VÀ CẢNH BÁO TẦN SỐ LƯỚI ĐIỆN
CÔNG NGHIỆP
I. Cơ sở lý thuyết
1. Giới thiệu tổng quan về họ Vi điều khiển 8051
AT89C51 là một vi điều khiển 8 bit, chế tạo theo công nghệ CMOS chất
lượng cao, công suất thấp với 4 KB PEROM (Flash Programeable and erasable
read only memory).
Các đặc điểm của 8951 được tóm tắt như sau:
- 4KB bộ nhớ, có thể lập trình lại nhanh, có khả năng ghi xóa tới
1000 chu kỳ

- Tần số hoat động từ 0 Hz đến 24 MHz
- 3 mức khóa bộ nhớ lập trình
- 2 bộ Timer/Counter 16 bit
- 128 Byte RAM nội
- 4 Port xuất/nhập (I/O) 8 bit
- Giao tiếp nối tiếp
- 64 KB vùng nhớ mã ngoài
- 64 KB vùng nhớ dữ liệu ngoài
- Xử lý Boolean (hoạt động trên bit đơn)
- 210 vị trí nhớ có thể định vị bit
- 4μs cho hoạt động nhân hoặc chia

GVHD:NGUYỄN THU HÀ

Page 4


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

1.1 Sơ đồ khối và sơ đồ chân của AT89C51

Sơ đồ khối của AT89C51

GVHD:NGUYỄN THU HÀ

Page 5



ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

Sơ đồ chân của AT89C51
1.2 Chức năng các chân của AT89C51
+ Port 0 (P0.0 – P0.7 hay chân 32 – 39): Ngoài chức năng xuất nhập ra,
port 0 còn là bus đa hợp dữ liệu và địa chỉ (AD0 – AD7), chức năng này sẽ được
sử dụng khi AT89C51 giao tiếp với thiết bị ngồi có kiến trúc bus.

Port 0

GVHD:NGUYỄN THU HÀ

Page 6


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

+ Port 1 (P1.0 – P1.7 hay chân 1 – 8): có chức năng xuất nhập theo bit
và byte. Ngoài ra, 3 chân P1.5, P1.6, P1.7 được dùng để nạp ROM theo chuẩn
ISP, 2 chân P1.0 và P1.1 được dùng cho bộ Timer 2.

Port 1
+ Port 2 (P2.0 – P2.7 hay chân 21 – 28): là một port có cơng dụng kép. Là
đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết kế dùng bộ
nhớ mở rộng.


Port 2

GVHD:NGUYỄN THU HÀ

Page 7


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

+ Port 3 (P3.0 – P3.7 hay chân 10 – 17): mỗi chân trên port 3 ngồi chức
năng xuất nhập ra cịn có một số chức năng đặc biệt sau:
Bit
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7

Tên
RXD
TXD
INT0
INT1
T0
T1

WR
RD

Chức năng chuyển đổi
Dữ liệu nhận cho port nối tiếp
Dữ liệu truyền cho port nối tiếp
Ngắt bên ngoài 0
Ngắt bên ngoài 1
Ngõ vào của Timer/Counter 0
Ngõ vào của Timer/Counter 1
Xung ghi bộ nhớ dữ liệu ngoài
Xung đọc bộ nhớ dữ liệu ngoài

Port 3
+ RST (Reset – chân 9): mức tích cực của chân này là mức 1, để reset ta
phải đưa mức 1 (5V) đến chân này với thời gian tối thiểu 2 chu kỳ máy (tương
đương 2µs đối với thạch anh 12MHz.
+ XTAL 1, XTAL 2: AT89S52 có một bộ dao động trên chip, nó thường
được nối với một bộ dao động thạch anh có tần số lớn nhất là 33MHz, thơn
thường là 12MHz.
+ EA (External Access): EA thường được mắc lên mức cao (+5V) hoặc
mức thấp (GND). Nếu ở mức cao, bộ vi điều khiển thi hành chương trình từ
ROM nội. Nếu ở mức thấp, chương trình chỉ được thi hành từ bộ nhớ mở rộng.
GVHD:NGUYỄN THU HÀ

Page 8


ĐHCN HÀ NỘI


BÀI TẬP LỚN:VI XỬ LÝ

+ ALE (Address Latch Enable): ALE là tín hiệu để chốt địa chỉ vào một
thanh ghi bên ngoài trong nửa đầu của chu kỳ bộ nhớ. Sau đó các đường port 0
dùng để xuất hoặc nhập dữ liệu trong nửa chu kỳ sau của bộ nhớ.
+ PSEN (Program Store Enable): PSEN là điều khiển để cho phép bộ
nhớ chương trình mở rộng và thường được nối với đến chân /OE (Output
Enable) của một EPROM để cho phép đọc các bytes mã lệnh. PSEN sẽ ở mức
thấp trong thời gian đọc lệnh. Các mã nhị phân của chương trình được đọc từ
EPROM qua Bus và được chốt vào thanh ghi lệnh của bộ vi điều khiển để giải
mã lệnh. Khi thi hành chương trình trong ROM nội, PSEN sẽ ở mức thụ động
(mức cao).
+ Vcc, GND: AT89S52 dùng nguồn một chiều có dải điện áp từ 4V –
5.5V được cấp qua chân 40 (Vcc) và chân 20 (GND).
2. Sơ lược về led 7 thanh
2.1 Tổng quát

Led 7 đoạn có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo
hình
và có thêm một led đơn hình trịn nhỏ thể hiện dấu chấm trịn ở góc
dưới, bên phải của led 7 đoạn.
8 led đơn trên led 7 đoạn có Anode(cực +) hoặc Cathode(cực -) được nối
chung với nhau vào một điểm, được đưa chân ra ngồi để kết nối với mạch điện.
8 cực cịn lại trên mỗi led đơn được đưa thành 8 chân riêng, cũng được đưa ra
ngoài để kết nối với mạch điện. Nếu led 7 đoạn có Anode(cực +) chung, đầu
chung này được nối với +Vcc, các chân còn lại dùng để điều khiển trạng thái
sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 0.
GVHD:NGUYỄN THU HÀ

Page 9



ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

Nếu led 7 đoạn có Cathode(cực -) chung, đầu chung này được nối xuống
Ground (hay Mass), các chân còn lại dùng để điều khiển trạng thái sáng tắt của
các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1.

Vì led 7 đoạn chứa bên trong nó các led đơn, do đó khi kết nối cần đảm
bảo dịng qua mỗi led đơn trong khoảng 10mA-20mA để bảo vệ led. Nếu kết nối
với nguồn 5V có thể hạn dịng bằng điện trở 330Ω trước các chân nhận tín hiệu
điều khiển.

Sơ đồ vị trí các led
Các điện trở 330Ω là các điện trở
bên ngồi được kết nối để giới hạn dịng điện qua led nếu led 7 đoạn được nối
với nguồn 5V.
Chân nhận tín hiệu a điều khiển led a sáng tắt, ngõ vào b để điều khiển led b.
Tương tự với các chân và các led còn lại.

GVHD:NGUYỄN THU HÀ

Page 10


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ


2.2 Kết nối với Vi điều khiển
Ngõ nhận tín hiệu điều khiển của led 7 đoạn có 8 đường, vì vậy có thể
dùng 1 Port nào đó của Vi điều khiển để điều khiển led 7 đoạn. Như vậy led 7
đoạn nhận một dữ liệu 8 bit từ Vi điều khiển để điều khiển hoạt động sáng tắt
của từng led led đơn trong nó, dữ liệu được xuất ra điều khiển led 7 đoạn thường
được gọi là "mã hiển thị led 7 đoạn". Có hai kiểu mã hiển thị led 7 đoạn: mã
dành cho led 7 đoạn có Anode(cực +) chung và mã dành cho led 7 đoạn có
Cathode(cực -) chung. Chẳng hạn, để hiện thị số 1 cần làm cho các led ở vị trí b
và c sáng, nếu sử dụng led 7 đoạn có Anode chung thì phải đặt vào hai chân b và
c điện áp là 0V(mức 0) các chân còn lại được đặt điện áp là 5V(mức 1), nếu sử
dụng led 7 đoạn có Cathode chung thì điện áp(hay mức logic) hoàn toàn ngược
lại, tức là phải đặt vào chân b và c điện áp là 5V(mức 1).
Bảng mã hiển thị led 7 đoạn:
Phần cứng được kết nối với 1 Port bất kì của Vi điều khiển, để thuận tiện
cho việc xử lí về sau phần cứng nên được kết nối như sau: Px.0 nối với chân a,
Px.1 nối với chân b, lần lượt theo thứ tự cho đến Px.7 nối với chân h.
• Dữ liệu xuất có dạng nhị phân như sau : hgfedcba


Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Anode chung (các led đơn
sáng ở mức 0):
Số hiển thị trên led Mã hiển thị led 7 đoạn Mã hiển thị led 7 đoạn dạng
7 đoạn
dạng nhị phân
thập lục phân
hgfedcba
0
11000000
C0

1
11111001
F9
2
10100100
A4
3
10110000
B0
4
10011001
99
5
10010010
92
6
11000010
82
7
11111000
F8
8
10000000
80
9
10010000
90
A
10001000
88

B
10000011
83
GVHD:NGUYỄN THU HÀ

Page 11


ĐHCN HÀ NỘI
C
D
E
F
-

BÀI TẬP LỚN:VI XỬ LÝ
11000110
10100001
10000110
10001110
10111111

C6
A1
86
8E
BF

Bảng mã hiển thị led 7 đoạn dành cho led 7 đoạn có Cathode chung (các led đơn
sáng ở mức 1):

Số hiển thị trên led Mã hiển thị led 7 đoạn Mã hiển thị led 7 đoạn dạng
7 đoạn
dạng nhị phân
thập lục phân
0
00111111
3F
1
00000110
06
2
01011011
5B
3
01001111
4F
4
01100110
66
5
01101101
6D
6
01111101
7D
7
00000111
07
8
01111111

7F
9
01101111
6F
A
01110111
77
B
01111100
7C
C
00111001
39
D
01011110
5E
E
01111001
79
F
01110001
71
01000000
40

GVHD:NGUYỄN THU HÀ

Page 12



ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

3.Chuyển đổi tín hiệu sine đầu vào của lưới điện thành xung vuông sử dụng
LM324
3.1 Cấu tạo IC LM324

GVHD:NGUYỄN THU HÀ

Page 13


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

3.2 Chức năng
LM324 là một IC bao gồm 4 bộ khuyêch đại thuật toán trong nó .Thơng thường
một bộ khuch đại thuật tốn (Op_Amp) thì cần phải có nguồn đơi.Tức là phải
có nguồn dương và nguồn âm.Chẳng hạn như Opamp 741.Tuy nhiên các opamp
trong LM324 được thiết kế đặc biệt để sử dụng nguồn đơn.Có nghĩa là chỉ cần
sử dụng Vcc và GND là đủ.Một điều đặc biệt là nguồn cung cấp của LM324 có
thể hoạt động độc lập với nguồn tín hiệu.ví dụ nguồn cung cấp của LM324 là
5V nhưng nó có thể làm việc bình thường với tín hiệu ngõ vào là V+ và V- là
15V

GVHD:NGUYỄN THU HÀ

Page 14



ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

II. Nội dung thiết kế
1. Lưu đồ thuật tốn chương trình

S

Đ

GVHD:NGUYỄN THU HÀ

Page 15


ĐHCN HÀ NỘI

GVHD:NGUYỄN THU HÀ

BÀI TẬP LỚN:VI XỬ LÝ

Page 16


ĐHCN HÀ NỘI

GVHD:NGUYỄN THU HÀ


BÀI TẬP LỚN:VI XỬ LÝ

Page 17


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

2. Phần lập trình và mơ phỏng
2.1 Phần lập trình
;-------------bai tap lon--------------------------;-------------made by NHOM4---------------------;-------------vector-------------------------------org 0000h
ljmp main
;nhay den chuong trinh main ngay sau khi MCU chay
;-------chuong trinh phuc vu ngat------------------org 0003h
ljmp INT_EX0

;ngat ngoai INT0

org 000bh
ljmp INT_T0
hien thi gia tri tan so do duoc

;nhay den ngat Timer0 trong nay se tinh toan va

;-------------khai bao bien------------------------FREQ_H equ 30h
FREQ_L equ 31h
FH equ 32h
FL equ 33h

X2
X1
X0

equ
equ
equ

40h
41h
42h

Y2
Y1
Y0

equ
equ
equ

43h
44h
45h

Z0
Z1
Z2
Z3
Z4


equ
equ
equ
equ
equ

46h
47h
48h
49h
4ah

;100:9 11 du 1*100=100/911

GVHD:NGUYỄN THU HÀ

Page 18


ĐHCN HÀ NỘI

BÀI TẬP LỚN:VI XỬ LÝ

Z5

equ

4bh

shf


equ

34h

;chon led de quet

thp2 equ
thp1 equ
dv
equ
ch
equ
digit equ
T_up equ
T_lm equ
F_Max
F_Min

50h
51h
52h
53h
54h
36h
37h
equ
equ

;hang chuc cua tan so

;hang don vi cua tan so
;chu so sau dau ',' thu nhat
;chu so sau dau ',' thu hai

ZOV equ
ON equ
OFF equ
CB_Cao
CB_Thap

00h
P1.0
P1.1
equ P1.2
equ P1.3

38h
58h

;100*10 ms lay mau mot lan
;nguong tren
;nguong duoi

;LED bao vuot nguong cao
;LED bao vuot nguong thap

;--------chuong trinh chinh-------------------------org

0030h


main:
lcall Init
KT_ON:
jb
setb
KT_OFF:
jb
clr
sjmp

ON,KT_OFF
EX0
OFF,KT_ON
EX0
KT_ON

;cho phep ngat ngoai INT0
;cho phep ngat ngoai INT0

;-----------------------------------------------------------------------------;--------chuong trinh con-----------------------------------------------------;-----------------------------------------------------------------------------Init:
mov P1,#0ffh
clr
EA
;cam tat ca cac ngat
mov digit,#0f7h
;bat led thp2 dau tien
mov P2,#0ffh
mov P0,#0ffh
;tat tat ca cac led
GVHD:NGUYỄN THU HÀ


Page 19


ĐHCN HÀ NỘI
mov
mov
mov
mov
mov
mov
mov
mov
mov

BÀI TẬP LỚN:VI XỬ LÝ

P1,#0ffh
T_up,#0
T_lm,#100
;t = T_lm*10ms
F_Max,#55
;dat can tren canh bao
F_Min,#45
;dat can duoi canh bao
shf,#thp2
;byte de dieu khien hien thi cac led 7 thanh
TMOD,#11h
;khoi tao timer0,timer1 o che do 16 bit
TH0,#HIGH(-10000)

TL0,#LOW(-10000)
;khoi tao ngat 10ms de tinh toan va hien

thi
mov TH1,#00h
mov TL1,#00h
setb
setb
setb
setb
setb
setb
setb
ret

IT0
PX0
ET0
TF0
tr0
tr1
EA

;thiet lap ngat ngoai theo suon xuong
;cho piority cua INT0 cao nhat
;cho phep ngat ngoai Timer1
;dung co bao ngat
;khoi dong Timer0

;---------chuong trinh phuc vu ngat ngoai INT0--------INT_EX0:

clr
EA
mov FREQ_H,TH1
mov FREQ_L,TL1
mov TH1,#00h
mov TL1,#02h ;xoa bo dem nay de bat dau dem chu ki moi
setb EA
reti
;---------chuong trinh phuc vu ngat timer0------------INT_T0:
clr
TF0
;xoa co tran
mov a,T_up
inc a
;tang t_up
mov T_up,a
cjne a,T_lm,ko_update ;kiem tra neu t_up = t_lm thi update lai du lieu
neu khong thi thoi
mov T_up,#0
;xoa t_up chuan bi cho lan tinh tiep theo
lcall Tinh_tanso
;goi chuong trinh tinh tan so
ko_update:
GVHD:NGUYỄN THU HÀ

Page 20




×