Ứ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.
34 trang |
Chia sẻ: lvbuiluyen | Lượt xem: 3697 | Lượt tải: 5
Bạn đang xem trước 20 trang tài liệu Đề 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, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
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:
Nguyễn Thu Hà
ĐỀ 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.
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
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
1.1 Sơ đồ khối và sơ đồ chân của AT89C51
OTHER REGISTER
128 byte RAM
128 byte RAM
8032\8052
ROM
0K:
8031\8032
4K:8951
8K:8052
INTERRUPT CONTROL
INT1\ INT0\
SERIAL PORT TEMER0
TEMER1
TEMER2 8032\8052
CPU
OSCILATOR
BUS CONTROL
I/O PORT
SERIAL PORT
EA\ RST
ALE\ PSEN\
P0 P1 P2 P3
Address\Data
TXD RXD
TEMER2 8032\8052
TEMER1
TEMER1
Sơ đồ khối của AT89C51
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ị ngoài có kiến trúc bus.
Port 0
+ 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
+ Port 3 (P3.0 – P3.7 hay chân 10 – 17): mỗi chân trên port 3 ngoà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
Tên
Chức năng chuyển đổi
P3.0
RXD
Dữ liệu nhận cho port nối tiếp
P3.1
TXD
Dữ liệu truyền cho port nối tiếp
P3.2
INT0
Ngắt bên ngoài 0
P3.3
INT1
Ngắt bên ngoài 1
P3.4
T0
Ngõ vào của Timer/Counter 0
P3.5
T1
Ngõ vào của Timer/Counter 1
P3.6
WR
Xung ghi bộ nhớ dữ liệu ngoài
P3.7
RD
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.
+ 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 ngoà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. 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 ngoà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.
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 7 đoạn
Mã hiển thị led 7 đoạn dạng nhị phân
Mã hiển thị led 7 đoạn dạng thập lục phân
h g f e d c b a
0
1 1 0 0 0 0 0 0
C0
1
1 1 1 1 1 0 0 1
F9
2
1 0 1 0 0 1 0 0
A4
3
1 0 1 1 0 0 0 0
B0
4
1 0 0 1 1 0 0 1
99
5
1 0 0 1 0 0 1 0
92
6
1 1 0 0 0 0 1 0
82
7
1 1 1 1 1 0 0 0
F8
8
1 0 0 0 0 0 0 0
80
9
1 0 0 1 0 0 0 0
90
A
1 0 0 0 1 0 0 0
88
B
1 0 0 0 0 0 1 1
83
C
1 1 0 0 0 1 1 0
C6
D
1 0 1 0 0 0 0 1
A1
E
1 0 0 0 0 1 1 0
86
F
1 0 0 0 1 1 1 0
8E
-
1 0 1 1 1 1 1 1
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 7 đoạn
Mã hiển thị led 7 đoạn dạng nhị phân
Mã hiển thị led 7 đoạn dạng thập lục phân
0
0 0 1 1 1 1 1 1
3F
1
0 0 0 0 0 1 1 0
06
2
0 1 0 1 1 0 1 1
5B
3
0 1 0 0 1 1 1 1
4F
4
0 1 1 0 0 1 1 0
66
5
0 1 1 0 1 1 0 1
6D
6
0 1 1 1 1 1 0 1
7D
7
0 0 0 0 0 1 1 1
07
8
0 1 1 1 1 1 1 1
7F
9
0 1 1 0 1 1 1 1
6F
A
0 1 1 1 0 1 1 1
77
B
0 1 1 1 1 1 0 0
7C
C
0 0 1 1 1 0 0 1
39
D
0 1 0 1 1 1 1 0
5E
E
0 1 1 1 1 0 0 1
79
F
0 1 1 1 0 0 0 1
71
-
0 1 0 0 0 0 0 0
40
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
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ộ khuyêch đại thuật toá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
II. Nội dung thiết kế
1. Lưu đồ thuật toán chương trình
Tính tần số
Cảnh báo
HEX to BCD
Ret
Không cảnh báo
Cảnh báo
Ret
Lấy FL/10
Thp ß A, thp2 ß B
Lấy 1000.000 chia cho
FREQ_H, FREQ_L
45<FH<55
?
Lấy FH/10
Chß A,dv ß B
S
Gọi chương trình
Chia 24 bit
Đ
Lưu thương vào FH
FH ß 70
Lấy phần dư x 100
Lấy tích chia giá trị đếm được
Lưu phần thập phân vào FL
FLßZ0
Ret
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 ;nhay den ngat Timer0 trong nay se tinh toan va hien thi gia tri tan so do duoc
;-------------khai bao bien-------------------------
FREQ_H equ 30h
FREQ_L equ 31h
FH equ 32h
FL equ 33h
X2 equ 40h ;100:9 11 du 1*100=100/911
X1 equ 41h
X0 equ 42h
Y2 equ 43h
Y1 equ 44h
Y0 equ 45h
Z0 equ 46h
Z1 equ 47h
Z2 equ 48h
Z3 equ 49h
Z4 equ 4ah
Z5 equ 4bh
shf equ 34h ;chon led de quet
thp2 equ 50h ;hang chuc cua tan so
thp1 equ 51h ;hang don vi cua tan so
dv equ 52h ;chu so sau dau ',' thu nhat
ch equ 53h ;chu so sau dau ',' thu hai
digit equ 54h
T_up equ 36h
T_lm equ 37h ;100*10 ms lay mau mot lan
F_Max equ 38h ;nguong tren
F_Min equ 58h ;nguong duoi
ZOV equ 00h
ON equ P1.0
OFF equ P1.1
CB_Cao equ P1.2 ;LED bao vuot nguong cao
CB_Thap equ P1.3 ;LED bao vuot nguong thap
;--------chuong trinh chinh--------------------------
org 0030h
main:
lcall Init
KT_ON:
jb ON,KT_OFF
setb EX0 ;cho phep ngat ngoai INT0
KT_OFF:
jb OFF,KT_ON
clr EX0 ;cho phep ngat ngoai INT0
sjmp KT_ON
;------------------------------------------------------------------------------
;--------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
mov P1,#0ffh
mov T_up,#0
mov T_lm,#100 ;t = T_lm*10ms
mov F_Max,#55 ;dat can tren canh bao
mov F_Min,#45 ;dat can duoi canh bao
mov shf,#thp2 ;byte de dieu khien hien thi cac led 7 thanh
mov TMOD,#11h ;khoi tao timer0,timer1 o che do 16 bit
mov TH0,#HIGH(-10000)
mov TL0,#LOW(-10000) ;khoi tao ngat 10ms de tinh toan va hien thi
mov TH1,#00h
mov TL1,#00h
setb IT0 ;thiet lap ngat ngoai theo suon xuong
setb PX0 ;cho piority cua INT0 cao nhat
setb ET0 ;cho phep ngat ngoai Timer1
setb TF0 ;dung co bao ngat
setb tr0 ;khoi dong Timer0
setb tr1
setb EA
ret
;---------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:
lcall canhbao ; kiem tra tan so va canh bao neu nam ngoai nguong
lcall HextoBcd ;chuyen doi gia tri tan so sang ma BCD de hien thi
lcall Hienthi ;goi hien thi
exit:
mov TH0,#HIGH(-10000)
mov TL0,#LOW(-10000)
reti
;------------------------------------------------------------------------------
;-----------Tinh tan so--------------------------------------------------------
;------------------------------------------------------------------------------
Tinh_tanso:
;-----------khi thuc hien cac lenh trong ngat INT0 thi se ton mot so chu ki may vi vay phai cong them
;-----------gia tri dem duoc trong timer 1 voi so chu ki tren de dam bao do chinh xac nhat
;-----------do viec gia tri tan so do la khong lon(50Hz) vi vay ma co the bo qua duoc mot so chu ki thuc hien
;-----------cac lenh trong chuong trinh ngat nhu lenh nhay toi chuong trinh phuc vu ngat, cac lenh xoa bo dem
mov X2,#0fh
mov X1,#42h
mov X0,#40h ;dat so bi chia =1000000
mov Y2,#0
mov Y1,FREQ_H
mov Y0,FREQ_L
;--------tinh phan nguyen cua tan so-----------------------
lcall DIV24
mov FH,Z0
;--------tinh phan thap phan-------------------------------
mov X1,Z4
mov X0,Z3
mov Y0,#100
lcall Mul2byte_voi_1byte
mov X0,Z0 ;chuyen gia tri tich vao lam so bi chia
mov X1,Z1
mov X2,Z2
mov Y2,#0 ;so chia
mov Y1,FREQ_H
mov Y0,FREQ_L
mov Z0,#0 ;xoa thuong
mov Z1,#0
mov Z2,#0
lcall DIV24
mov FL,Z0
ret
;------------------------------------------------------------------------------
;------------chuyen doi gia tri dem duoc ra BCD de hien thi--------------------
;------------------------------------------------------------------------------
HextoBcd:
;-------tinh chu so hang chuc cua tan so va luu vao byte ch----------
;-------tinh chu so hang don vi cua tan so----------------------------
;-------tinh chu so sau dau phay thu nhat va thu 2---------------------
mov A,FH
mov B,#10
div AB
mov ch,A
mov dv,B
mov A,FL
mov B,#10
div AB
mov thp1,A
mov thp2,B
ret
DIV24:
mov A,Y2
orl a,Y1
orl a,Y0
jnz CHIA24
;setb ZOV
ret
CHIA24:
mov R0,X0
mov R1,X1
mov R2,X2
mov X2,#0
mov X1,#0
mov X0,#0
mov R3,#0
mov R4,#0
mov R5,#0
mov R7,#24
TT_chia24:
clr c
mov a,R0
rlc a
mov R0,a
mov a,R1
rlc a
mov R1,a
mov a,R2
rlc a
mov R2,a ;dich trai so bi chia
mov a,X0
rlc a
mov X0,a
mov a,X1
rlc a
mov X1,a
mov a,X2
rlc a
mov X2,a ;dich trai so du
lcall SUBB24
mov c,ZOV
cpl c
jnc kh_Tru24
mov X2,Z2
mov X1,Z1
mov X0,Z0
kh_Tru24:
mov a,R3
rlc a
mov R3,a
mov a,R4
rlc a
mov R4,a
mov a,R5
rlc a
mov R5,a
djnz R7,TT_chia24
mov Z0,R3
mov Z1,R4
MOV z2,R5
mov Z3,X0
mov Z4,X1
mov Z5,X2
ret
SUBB24:
mov a,X0
clr c
subb a,Y0
mov Z0,a
mov a,X1
subb a,Y1
mov Z1,a
mov a,X2
subb a,Y2
mov ZOV,c
ret
Mul2byte_voi_1byte:
mov a,X0
mov b,Y0
mul ab
mov Z0,a
push b
mov a,X1
mov b,Y0
mul ab
pop 0
add a,R0
mov Z1,a
clr a
addc a,b
mov Z2,a
ret
;------------------------------------------------------------------------------
;-----------hien thi tan so----------------------------------------------------
;------------------------------------------------------------------------------
Hienthi:
mov a,shf
mov r0,a
mov a,@r0
mov dptr,#maled
movc a,@a+dptr
mov p2,#0ffh
mov P0,#0ffh
cjne r0,#52h,ko_dau_phay
anl a,#01111111b
ko_dau_phay:
mov p0,a
mov p2,digit
inc r0
mov a,r0
mov shf,a
mov a,digit
rr a
mov digit,a
mov a,shf
cjne a,#54h,exit_HT
mov shf,#thp2
mov digit,#0f7h
exit_HT:
ret
;---------------------canh bao-----------------------
canhbao:
setb CB_Cao
setb CB_Thap
jnb EX0,exit_canhbao
mov a,FH
clr c
subb a,F_Min
jc Phat_canh_bao_thap
setb CB_Thap
mov a,FH
clr c
subb a,F_Max
jnc Phat_canh_bao_cao
setb CB_Cao
ret
phat_canh_bao_cao:
clr CB_Cao
ret
phat_canh_bao_thap:
clr CB_Thap
exit_canhbao:
ret
maled: db 11000000b,11111001b,10100100b,10110000b,10011001b,10010010b,10000010b,11111000b,10000000b,10010000b
end
3.Phần mạch chức năng
3.1 Khối nguồn
Khối nguồn.Được đưa qua biến áp để giảm điện áp lưới.Nhưng không làm thay đổi giá trị tần số lưới điện
3.2 Khối cảnh báo
Khối nút ấn và nút cảnh báo .
Khi RUN hệ thống tiến hành hiển thị thông số
Nút STOP hệ thống dừng và hiển thị kết quả đo cuối cùng
Đèn D1 hiển thị cảnh báo mức cao tần số trên 55
Đèn D2 hiển thị cảnh báo tần số mức dưới 45
3.3 Khối hiển thị
Khối hiển thị kết quả đo sử dụng led 7 thanh.Được đưa ra từ vi điều khiển cho biết tần số hiện tại của lưới điện.
3.4 Khối IC điều khiển
Khối điều khiển có chức năng xử lí tín hiệu đầu vào.Đưa ra các chân tín hiệu để hiện thị , cảnh báo ngưỡng cao thấp của lưới điện,Ngắt
4.Thực hiện chạy mạch mô phỏng ở các mức
Khi tần số điện áp lưới ở ngoài khoảng 45 :55 đèn đỏ cảnh báo ở mức thấp
Khi điện áp lưới ở mức 45 :55 đèn không nháy.mạch chạy ổn định
Khi tần số lưới điện ở cao hơn mức 45: 55 đèn vàng cảnh báo mức cao sáng
III. Kết luận
Sau khi thực hiện đồ án chúng em rút ra được những ưu,nhược điểm của mạch như sau:
1.Ưu điểm
Mạch có cấu tạo gồm những thành phần gồm những linh kiện đơn giản,rẻ tiền
Khả năng đáp ứng nhanh với sự thay đổi của đối tượng cần đo
Mạch hiển thị LED 7 đoạn nên dễ dàng cho người sử dụng theo dõi tần số ở mức khác nhau
Dễ sử dụng, tiện lợi
2.Nhược điểm
Còn có sai số về giá trị đo được do sai số linh kiện và những sai số trong khi tính toán thiêt kế mạch nhưng chấp nhận được.
Mạch chưa có chức năng bảo vệ ngắn mạch
Chưa có các khối nguồn tạo điện áp ra cho IC rõ ràng
Độ tin cậy của mạch chưa được cao do hạn chế về kinh nghiệm cũng như giới hạn về trình độ chuyên môn còn yếu