Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

L i nói đ u

Ngày nay khoa h c công ngh ngày càng phát tri n. Cùng v i s phát ớ ự ệ ể ọ

tri n đó công ngh t đ ng hóa ngày càng đ c u tiên đ u t ệ ự ộ ể ượ ư ầ ư ứ nghiên c u

ng, phát tri n. Đ i đa s các lĩnh v c s n xu t, đi u khi n, giám sát, đo l ự ả ề ể ể ạ ấ ố ườ

… đ u đ c trang b h th ng đi u khi n h th ng t đ ng hóa. M t trong ề ượ ị ệ ố ệ ố ề ể ự ộ ộ

s vi m ch đ ố ạ ượ ử ụ ư c s d ng đó là Kĩ thu t vi đi u khi n. Nh this năng u ề ể ậ ờ

vi t k nh ệ ủ ộ t c a b vi đi u khi n nh : kh năng l p trình phù h p v i thi ả ư ề ể ậ ợ ớ ế ế ỏ

và l n cũng nh giao ti p v i các thi t b ngo i vi và máy tính s đem l ư ế ớ ớ ế ị ẽ ạ ạ i

s hoàn h o, đ chính xác và tính m m d o cao. ự ề ẻ ả ộ

Vi đi u khi n qu n lý và đi u khi n ho t đ ng c a h th ng thông ể ủ ệ ố ạ ộ ề ể ề ả

qua ph n m m, nh v y ta có th thay đ i và m r ng ho t đ ng m t cách ạ ộ ờ ậ ở ộ ể ề ầ ổ ộ

d dàng. Vi đi u khi n ho t đ ng theo ch ể ễ ạ ộ ề ươ ng trình đã n p s n, đ c các ạ ẵ ọ

tín h u t bên ngoài đ a vào sau l u tr và x lí, trên c s đó đ a ra các ệ ừ ơ ở ư ữ ử ư ư

thông báo, tín hi u đi u khi n các thi ệ ề ể ế ị t b bên ngoài ho t đông theo đúng ạ

ặ thong s và yêu c u c a h th ng. Ngoài ra vi đi u khi n cũng có m t ầ ủ ệ ố ề ể ố

nhi u trong các s n ph m công nghi p và tiêu dùng. ệ ề ả ẩ

Đ hi u đ ể ể ượ ề c ph n nào v ch c năng và ng d ng c a vi đi u ề ứ ứ ụ ủ ầ

khi n nhóm em ch n đ tài Thi t k mô hình Khóa đi n t hi n th 6 ề ể ọ ế ế ệ ử ể ị

led 7 đo nạ đ nghiên c u và th c hi n. ự ứ ể ệ

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 ế ế

1

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

III – K t lu n ế ậ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

ữ Trong quá trình th c hi n đ tài, tuy đã r t c g ng song do nh ng ấ ố ắ ự ệ ề

nên chúng em h n ch v th i gian, ki n th c cũng nh kinh ngi m th c t ứ ạ ế ề ờ ự ế ư ế ệ

không tránh kh i nhi u thi u sót. Chúng em r t mong nh n đ ậ ượ ề ế ấ ỏ c nh ng ý ữ

ki n đóng góp c a th y cô và các b n đ đ tài c a chúng em đ c hoàn ể ề ủ ủ ế ầ ạ ượ

thi n h n. ệ ơ

Cu i cùng chúng em xin chân thành c m n cô ả ơ ố ươ Vũ Th Thu H ng ị

cùng các th y cô giáo b môn đã h ngs d n t n tình, giúp đ chúng em ầ ộ ươ ẫ ậ ỡ

2

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

hoàn thi n đ tài này. ệ ề

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

Thi

t k mô hình khóa đi n t

ế ế

ệ ử ể

hi n th 6 led 7 ị

đo n.ạ

I – C s lý thuy t ế

ơ ở

1 – Gi ớ i thi u t ng quan v h Vi đi u khi n 8051 ề ọ ệ ổ ề ể

AT89S52 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 89S52 đ 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 ả

i 1000 chu kỳ t ớ

- 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 ạ ộ ặ

3

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

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

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

INT1\ INT0\ SERIAL PORT TEMER0 TEMER1 TEMER2 8032\8052

128 byte RAM 8032\8052

TEMER2 8032\8052 TEMER1

128 byte RAM

INTERRUPT CONTROL

ROM 0K: 8031\8032 4K:8951 8K:8052

TEMER1

OTHER REGISTER

CPU

BUS CONTROL

I/O PORT

SERIAL PORT

OSCILATOR

ALE\ PSEN\

EA\ RST

TXD RXD

P P P P 3 2 1 0 Address\Data

Hình 1 – S đ kh i c a AT89S52 ố ủ ơ ồ

4

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

Hình 2 – S đ chân c a AT89S52 ơ ồ ủ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

b – Ch c năng các chân c a AT89S52 ứ ủ

ậ + 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 ữ ệ ứ ợ ị ỉ

c s d ng khi AT89S52 giao ti p v i thi t b ngoài có ki n trúc bus. s đ ẽ ượ ử ụ ế ớ ế ị ế

Hình 3 – 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. ẩ ượ ộ

5

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

Hình 4 – Port 1

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

ụ + 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. ế ớ ở ộ ộ

Hình 5 – 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: ộ ố ứ ứ ấ ậ ặ ệ

ậ ề

6

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

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 ắ ắ ủ ủ ộ ọ ộ ớ ữ ệ ớ ữ ệ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

Hình 6 – 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 m c th p, ch ng trình ch đ c thi hành t ừ ROM n i. N u ộ ế ở ứ ấ ươ ỉ ượ ừ ộ 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 ề ể ể

ng đ b nh ch ộ ớ ươ ng trình m r ng và th ở ộ ườ ượ 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. ể ủ ệ ộ ọ

7

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

PSEN s ẽ ở ứ ủ m c th p trong th i gian đ c l nh. Các mã nh phân c a ọ ệ ấ ờ ị

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

ch ng trình đ c đ c t EPROM qua Bus và đ c ch t vào thanh ghi ươ ượ ọ ừ ượ ố

i mã l nh. Khi thi hành ch ng trình trong l nh c a b vi đi u khi n đ gi ệ ủ ộ ể ả ề ể ệ ươ

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). ượ ấ

II N i Dung ộ

1 – Ph n l p trình và mô ph ng ầ ậ ỏ

# include "regx51.h"

#define C1 P1_0 #define C2 P1_1 #define C3 P1_2 #define C4 P1_3 #define H1 P1_4 #define H2 P1_5 #define H3 P1_6 #define H4 P1_7

#define led6 P2_2 #define led5 P2_3 #define led4 P2_4 #define led3 P2_5 #define led2 P2_6 #define led1 P2_7

#define dung P3_6 #define sai P3_7

char key; long int number_key,key_true; unsigned char led_code[10]={0x81,0xb7,0xc2,0x92,0xb4,0x98,0x88,0xb3,0x80,0x90}; unsigned char h[6]={0,0,0,0,0,0}; char index =0,set=0,enter =0,clear =0; void delay(); void ghep_so(); void scan_key();

8

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

a – Ph n l p trình ầ ậ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

void ht1(long int number);

= 0; C2= 1; C3= 1; C4= 1;

void scan_key() {

C1 delay(); if( H1 ==0) {

while( H1 ==0){}; key =1; h[index] = key;

index = index +1;

} else if( H2 ==0) {while( H2 ==0){}; key =5; h[index] = key;index = index +1; } else if( H3 ==0) {while( H3 ==0){}; key =9;h[index] = key;index = index +1; } else if( H4 ==0) {while( H4 ==0){}; set=1; }

//key =13;

= 1; C2

= 0; C3= 1; C4= 1;

C1 delay(); if( H1 ==0) {while( H1 ==0){};key =2; h[index] = key;index = index +1; } else if( H2 ==0) {while( H2 ==0){};key =6; h[index] = key;index = index +1;} else if( H3 ==0) {while( H3 ==0){};key =10; h[index] = key;index = index +1;} else if( H4 ==0) {while( H4 ==0){};key =0; h[index] = key;index = index +1;}

//key =14;

= 1; C2

= 1; C3= 0; C4= 1;

C1 delay(); if( H1 ==0) {while( H1 ==0){};key =3; h[index] = key;index = index +1;} else if( H2 ==0){while( H2 ==0){}; key =7; h[index] = key;index = index +1;} else if( H3 ==0) {while( H3 ==0){}; key =11; h[index] = key;index = index +1;} else if( H4 ==0) {while( H4 ==0){}; clear =1;}

//key =15;

= 1; C2

= 1; C3= 1; C4= 0;

//key =16;

C1 delay(); if( H1 ==0) {while( H1 ==0){};key =4; h[index] = key;index = index +1; } else if( H2 ==0){while( H2 ==0){}; key =8; h[index] = key;index = index +1;} else if( H3 ==0) {while( H3 ==0){}; key =12; h[index] = key;index = index +1;} else if( H4 ==0) {while( H4 ==0){}; enter =1; } //number_key = key; //h[index] = key; // index = index +1; if( index > 5) index =0; } void ghep_so() { number_key = h[0]*100000 + h[1]*10000+ h[2]*1000 +h[3]*100 + h[4]*10 +h[5] ;

9

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

} void ht1(long int number) { char tramnghin, chucnghin, nghin, tram, chuc, donvi; tramnghin = number/100000; chucnghin = (number%100000)/10000; nghin = (((number%100000)%10000))/1000; tram = ((((number%100000)%10000))%1000)/100; chuc = (((((number%100000)%10000))%1000)%100)/10; donvi = (((((number%100000)%10000))%1000)%100)%10;

P0 = led_code[tramnghin]; led6 =0; delay(); led6 =1;

P0 = led_code[chucnghin]; led5 =0; delay(); led5 =1;

P0 = led_code[nghin]; led4 =0; delay(); led4 =1;

P0 = led_code[tram]; led3 =0; delay(); led3 =1;

P0 = led_code[chuc]; led2 =0; delay(); led2 =1;

P0 = led_code[donvi]; led1 =0; delay(); led1 =1;

}

void main() { P1 = 0xFF; P0 = 0xff;

10

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

P2 = 0xff; P3 = 0x00; number_key =0; key_true = 123456; dung =0; sai =1; while(1) { scan_key(); ghep_so(); ht1(number_key); if (set ==1) { ghep_so();

number_key;

key_true = set =0; } if (enter ==1)

{

if(number_key == key_true) { dung =1; sai =0; } else { dung =0; sai =1; } enter =0; }

h[5] =0;

if(clear ==1) { h[0] =0; h[1] =0;h[2] =0;h[3] =0;h[4] =0; number_key=0; clear=0; index=0; }

}

}

void delay() { unsigned int i; for( i=0; i< 500; i++);

}

11

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

b – Ph n mô ph ng ỏ ầ

12

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

3 – M ch nguyên lý và m ch in ạ ạ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

13

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

Hình 9 – S đ m ch nguyên lý ơ ồ ạ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

Hình 10 – S đ m ch in ơ ồ ạ

III – K t lu n ế ậ

1 – u đi m Ư ể

- Hi n th đ y đ rõ nét các kí t ị ầ ủ ể ự yêu c u ầ

- Bàn phím linh ho tạ

- Có th thay đ i đ ổ ượ ể c m t kh u ẩ ậ

- M ch có tín hi u chuông khi đóng m khóa ệ ạ ở

- M ch hi n th LED 7 đo n nên d dàng cho ng i s d ng theo dõi các kí ễ ể ạ ạ ị ườ ử ụ

t ự hi n th dù trong đi u ki n thi u ánh sáng. ề ệ ế ể ị

c thi t k nh g n, d s d ng, ti n l - M ch đ ạ ượ ế ế ễ ử ụ ỏ ọ ệ ợ ề i và có th dùng nhi u ể

lo i ngu n: pin, acquy, ngu n đi n xoay chi u,… nên r t c đ ng. ệ ấ ơ ộ ề ạ ồ ồ

2 – Nh ượ c đi m ể

14

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

- M t kh u b gi i h n 6 kí t ị ớ ạ ở ậ ẩ ự

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

- Các kí t hi n th ch a đ c linh ho t nh trên màn hình LCD ự ể ị ư ượ ư ạ

3 – H ng c i ti n, phát tri n ả ế ướ ể

- Nghiên c u, ng d ng trên các h vi đi u khi n khác ứ ứ ụ ề ể ọ

- Tích h p thêm nhi u tính năng khác nh : báo cháy, báo rò khí gas, ti ư ề ợ ế t

15

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

ki m đi n năng… ệ ệ

Đ ÁN MÔN VĐK

ƯỜ

NG ĐHCN HÀ N I Ộ

TR KHOA C KHÍ L P CĐT2-K5

Ồ Ớ

Ơ

M c l c ụ ụ

Trang

3

I – C s lý thuy t ế

ơ ở

1 – Gi 3 ớ i thi u t ng quan v h Vi đi u khi n 8051 ề ọ ệ ổ ề ể

3 a – S đ kh i và s đ chân c a AT89S52 ơ ồ ơ ồ ủ ố

b – Ch c năng các chân c a AT89S52 5 ủ ứ

11 II – N i dung ộ

1– Ph n l p trình và mô ph ng 13 ầ ậ ỏ

13 a – Ph n l p trình ầ ậ

b – Ph n mô ph ng 16 ầ ỏ

2 – M ch nguyên lý và m ch in 17 ạ ạ

19 III – K t lu n ế ậ

19 1 – u đi m Ư ể

2 – Nh 19 ượ c đi m ể

16

GVHD: Vũ Th Thu H ng ị

ươ

SVTH: Nguy n Văn Qu ng ễ Lê Duy Tú Nguy n Văn Thái

20 4 – H ng c i ti n, phát tri n ể ả ế ướ