Thông báo

Tất cả đồ án đều đã qua kiểm duyệt kỹ của chính Thầy/ Cô chuyên ngành kỹ thuật để xứng đáng là một trong những website đồ án thuộc khối ngành kỹ thuật uy tín & chất lượng.

Đảm bảo hoàn tiền 100% và huỷ đồ án khỏi hệ thống với những đồ án kém chất lượng.

CỬA HÀNG THÔNG MINH DÙNG VI XỬ LÝ AT89C51

mã tài liệu 301000300006
nguồn huongdandoan.com
đánh giá 5.0
mô tả 100 MB Bao gồm tất cả file DBK, DRC, OPJ, ASM, HEX, LST..,.lưu đồ giải thuật.. CDR thuyết minh, bản vẽ nguyên lý, bản vẽ thiết kế, FILE lập trình, và nhiều tài liệu liên quan kèm theo đồ án này
giá 989,000 VNĐ
download đồ án

NỘI DUNG ĐỒ ÁN

100 MB Bao gồm tất cả file,.lưu đồ giải thuật... thuyết minh, bản vẽ nguyên lý, bản vẽ thiết kế, FILE lập trình, ĐỒ ÁN TỐT NGHIỆP ĐIỆN tử CỬA HÀNG THÔNG MINH DÙNG VI XỬ LÝ AT89C51

Trong thời đại ngày nay, khoa học kỹ thuật ngày càng phát triển cao hơn, ngành điện tử có thể nói là một ngành rất quan trọng trong lĩnh vực này. Ở nước ta, cùng với chế tạo cơ khí thì ngành điện tử và công nghệ thông tin là các ngành được đầu tư phát triển. Được ứng dụng trong nhiều ngành nghề khác nhau, nên ngành điện tử được nhiều bạn trẻ lựa chịn theo học và phát triển, tất cả để phục vụ cho sản xuất và phục vụ cho con người.

Xã hội ngày càng phát triển, nhu cầu cuộc sống của con người ngày càng tăng, tận dụng tối đa thời gian, làm việc đạt năng suất cao và đặc biết là những nhu cầu về tiện nghi trong cuộc sống. Đáp ứng những nhu cầu trên ngành điện tử đã giải quyết đựơc điều này và ngày càng phục vụ tốt hơn với nhiều thiết bị điện tử ra đời giải phóng con người khỏi lao động chân tay, là công cụ giúp con người trong cuộc sống và ngày càng không thể thiếu đựơc đối với con người. Góp phần trong đó là sự ra đời của những cửa hàng thông minh.

Cửa hàng thông minh được kết hợp từ nhiều phần khác nhau như cảm biến hồng ngoại, hệ thống vi điều khiển, cảm biến nhiệt, … Đặc điểm của thiết bị này linh kiện rất dể tìm và giá thành rất khiêm tốn, hơn nửa các mạch được thiết kế rất đơn giản nhưng có độ chính xác cao. Đặc biệt là các thiết bị điều khiển từ xa dùng hồng ngoại được sử dụng rộng rãi, phổ biến và cũng cho hiệu quả chính xác cao. Nó có thể điều khiển ở khoảng cách gần rất phù hợp với việc điều khiển với các thiết bị sinh hoạt trong gia đình, cửa hàng chẳng hạn tivi, quạt gió, đèn, hệ thống lạnh …cao hơn là điều khiển cả máy vi tính và rất nhiều thiết bị khác nữa. Làm cho cuộc ssóng của con người ngày càng tốt hơn.

MỤC LỤC

LỜI MỞ ĐẦU                                                                  

LỜI CẢM TẠ­­­

CHƯƠNG DẪN NHẬP                                                                                     4        CHƯƠNG II: GIỚI THIỆU CHUNG VỀ VI ĐIỀU KHIỂN                        6   

I. Giới thiệu                                                                                        6

II. Lịch sử phát triển của Vi Điều Khiển                                               6

III. Khảo sát bộ Vi Điều Khiển 8051                                                     7

CHƯƠNG III : KHÁI QUÁT VỀ HỒNG NGOẠI                                        23    

            I. Giới thiệu về LED phát và LED thu                                                  23

            II. Giới thiệu về IC SZ9148 và SZ9149                                                23

 CHƯƠNG IV: GIỚI THIỆU VỀ CÁC LINH KIỆN KHÁC                  36    I. Giới thiệu về IC ổn áp 7805 và 7812                                                36

            II. Giới thiệu về IC LM555                                                                   38

            III. Giới thiệu về TRANSISTOR C1815, A1015, D468                      39

            IV. Giới thiệu về IC 74LS04                                                                 43

CHƯƠNG V: THIẾT KẾ VÀ THI CÔNG                                                     44                                

            I. Nhiệm vụ thiết kế                                                                               44

            II. Sơ đồ khối và chức năng từng khối                                                  44

            III. Thiết kế và phân tích nguyên lý hoạt động từng khối                   46

            IV. Sơ đồ nguyên lý và giải thuật chương trình                                   54

            V. Thi công                                                                                            72

CHƯƠNG KẾT LUẬN                                                                                    73

PHỤ LỤC _ TÀI LIỆU THAM KHẢO                                                    74

CHƯƠNG DẪN NHẬP

          Ngày nay với sự phát triển của công nghiệp vi điện tử, kĩ thuật số, các hệ thống điều khiển dần dần được tự động hoá với những kỹ thuật tiên tiến như Vi Xử Lý, Vi Mạch Số….. được ứng dụng vào lĩnh vực điều khiển, thì các hệ thống điều khiển cơ khí thô sơ với tốc độ xử lý chậm, ít chính xác sẽ được thay thế bằng các chương trình điều khiển tự động với các lệnh chương trình đã được con người chúng ta thiết lập trước .

          Chính vì yêu cầu ngày càng cao của cả nhân loại, chúng em cũng muốn thử sức mình vào việc thi công thử một trong những đề tài về Vi Điều Khiển. Đó chính là Cửa Hàng Thông Minh Dùng Vi Xử Lý. Với những chức năng như: Đóng mở cửa sữ dụng cảm biến hồng ngoại, bảo mật bằng mật mã và Card và điều khiển từ xa các thiết bị trong cửa hàng dùng cảm biến hồng ngoại. Để thực hiện những chức năng trên không thể thiếu đó là Vi Điều Khiển.

Để đáp ứng cho nhu cầu ngày càng cao của con người, những thành tựu khoa học kĩ thuật tiên tiến không ngừng ra đời và phát triển. Trong đó kĩ thuật Vi Điều Khiển đã trở nên quen thuộc trong các ngành kĩ thuật và trong dân dụng, các dây chuyền sản xuất lớn đến các thiết bị gia dụng, chúng ta đều thấy sự hiện diện của Vi Điều Khiển. Các bộ Vi Điều Khiển có khả năng xử lý nhiều hoạt động phức tạp mà chỉ cần một chip vi mạch nhỏ, gọn nhẹ và sử dụng một cách dễ dàng.

Vi Điều Khiển không những góp phần vào kĩ thuật điều khiển mà còn góp phần to lớn vào việc phát triển thông tin. Đó chính là sự ra đời của hàng loạt thiết bị tối tân trong ngành viễn thông, truyền hình, đặc biệt là sự ra đời của mạng Internet… đã góp phần đưa con người đến đỉnh cao của nền văn minh nhân loại.

Ở TP Hồ Chí Minh ta có thể thấy rất nhiều cửa hàng, siêu thị họ bán rất nhiều mặt hàng đa dạng nhiều chủng loại khác nhau. Các cửa hàng, siêu thị này có thể áp dụng hệ thống Vi Điều Khiển vào để quản lý như: cửa tự động mở cửa khi có người đi vào và đóng cửa khi ra ngoài rồi, khóa cửa và bảo mật bằng mật mã và card, điều khiển từ xa các thiết bị trong cửa hàng dùng cảm biến hồng ngoại.  

Mục đích đầu tiên của chúng em làm đề tài này là hoàn tất chương trình học tại trường, đủ điều kiện để tốt nghiệp ra trường.

Cụ thể là chúng em muốn phát huy những thành quả ứng dụng của Vi Điều Khiển để phục vụ tốt hơn cuộc sống của chúng ta. Đồng thời nếu được nghiên cứu sâu hơn và sự giúp đỡ của quý thầy cô, nhất định chúng em sẽ thực hiện đề tài này thật đẹp mắt và sống động hơn nhiều.

Mặt khác, đề tài này cũng làm tài liệu tham khảo cho những khóa sau, giúp họ hiểu rõ hơn những ứng dụng của Vi Điều Khiển.

Ngoài ra đây cũng là dịp thuận lợi cho chúng em tự kiểm tra lại những kiến thức cơ bản quan trọng cần phải nắm bắt, ứng dụng.. …Trong đó cần phải tư duy, suy nghĩ giải quyết những vấn đề khó khăn hơn nhiều.

Vì trình độ của chúng em còn hạn hẹp và thời gian gấp rút nên chúng em chỉ có thể thiết kế mạch này có các chức năng chưa thật sự là tối ưu mà chỉ trong phạm vi nhỏ hẹp với những giới hạn như sau:

  • Khoá dùng card & mật mã (6 số), có thể thay đổi mã, báo động khi nhập sai quá 3 lần.

Ø  Đóng mở cửa dùng hồng ngoại.

Ø  Điều khiển thiết bị thông qua Remote.

CHƯƠNG II: GIỚI THIỆU CHUNG VỀ VI ĐIỀU KHIỂN

 

I.GIỚI THIỆU :

Bộ vi điều khiển viết tắt là Micro-controller, là mạch tích hợp trên một chip có thể lập trình được, dùng để điều khiển hoạt động của một hệ thống. Theo các tập lệnh của người lập trình, bộ vi điều khiển tiến hành đọc, lưu trữ thông tin, xử lý thông tin, đo thời gian và tiến hành đóng mở một cơ cấu nào đó.

Trong các thiết bị điện và điện tử dân dụng, các bộ vi điều khiển, điều khiển hoạt động của TV, máy giặt, đầu đọc laser, điện thọai, lò vi-ba … Trong hệ thống sản xuất tự động, bộ vi điều khiển được sử dụng trong Robot, dây chuyền tự động. Các hệ thống càng “thông minh” thì vai trò của hệ vi điều khiển càng quan trọng.

 

II.LỊCH SỬ PHÁT TRIỂN CỦA  C ÁC BỘ VI ĐIỀU KHIỂN :

Bộ vi điều khiển thực ra là một loại vi xử lí trong tập hợp các bộ vi xử lý nói chung. Bộ vi điều khiển được phát triển từ bộ vi xử lí, từ những năm 70 do sự phát triển và hoàn thiện về công nghệ vi điện tử dựa trên kỹ thuật MOS (Metal-Oxide-Semiconductor), mức độ tích hợp của các linh kiện bán dẫn trong một chip ngày càng cao.

Năm 1971 xuất hiện bộ vi xử lí 4 bit loại TMS1000 do Công ty Texas Instruments vừa là nơi phát minh vừa là nhà sản xuất. Nhìn tổng thể thì bộ vi xử lí chỉ có chứa trên một chip những chức năng cần thiết để xử lí chương trình theo một trình tự, còn tất cả bộ phận phụ trợ khác cần thiết như : bộ  nhớ dữ liệu, bộ nhớ chương trìn , bộ chuyển đổi AID, khối điều khiển, khối hiển thị, điều khiển máy in, hối đồng hồ và lịch là những linh kiện nằm ở bên ngoài được nối vào bộ vi xử lí.

Mãi đến năm 1976 công ty INTEL (Interlligen-Elictronics) mới cho ra đời bộ vi điều khiển đơn chip đầu tiên trên thế giới với tên gọi 8048. Bên cạnh bộ xử lí trung tâm 8048 còn chứa bộ nhớ dữ liệu, bộ nhớ chương trình, bộ đếm và phát thời gian các cổng vào và ra Digital trên một chip.

Các Công ty khác cũng lần lượt cho ra đời các bộ vi điều khiển 8bit tương tự như 8048 và hình thành họ vi điều khiển MCS-48 (Microcontroller-sustem-48).

Đến năm 1980 công ty INTEL cho ra đời thế hệ thứ hai của bộ vi điều khiển đơn chip với tên gọi 8051. Và sau đó hàng loạt các vi điều khiển cùng loại với 8051  ra đời và hình thành họ vi điều khiển MCS-51 .

Đến nay họ vi điều khiển 8 bit MCS51 đã có đến 250 thành viên và hầu hết các công ty hàng dẫn hàng đầu thế giới chế tạo. Đứng đầu là công ty INTEL và rất nhiều công ty khác như: AMD, SIEMENS, PHILIPS, DALLAS, OKI …

Ngoài ra còn có các công ty khác cũng có những họ vi điều khiển riêng như:

Họ       68HCOS              của Công ty Motorola

Họ       ST62                    của Công ty SGS-THOMSON

Họ       H8                        của Công ty Hitachi

Họ       pic                        cuả Công ty Microchip

 

III. KHẢO SÁT BỘ VI ĐIỀU KHIỂN 8051/8031:

  IC vi điều khiển 8051 thuộc họ MCS51 có các đặt điểm sau :

  • 4 KB ROM bên trong.
  • 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 ms cho hoạt động nhân hoặc chia.

         

Bảng mô tả sự khác nhau của các IC trong họ MSC-51 :

 

Loại

Bộ Nhớ Mã Trên CHIP

Bộ Nhớ Dữ Liệu Trên CHIP

Số Timer

8051

4K ROM

128 Byte

2

8031

0K ROM

128 Byte

2

8751

4K ROM

128 Byte

2

8052

8 K ROM

256Byte

2

1.Cấu trúc bên trong của 8051:Hình 2.1 : Sơ Đồ Khối 8051 / 8031

 

Phần chính của Vi Điều Khiển 8051/8031 là bộ xử lý trung tâm (CPU: central processing unit) bao gồm:

  • Thanh ghi tích lũy A
  • Thanh ghi tích lũy phụ B, dùng cho phép nhân và phép chia
  • Đơn vị logic học (ALU : Arithmetic Logical Unit )
  • Từ trạng thái chương trình (PSW : Prorgam  Status Word)
  • Bốn băng thanh ghi
  • Con trỏ ngăn xếp
  • Ngoài ra  còn có bộ nhớ chương trình, bộ giải mã lệnh, bộ điều khiển thời gian và logic.

Đơn vị xử lí trung tâm nhận trực tiếp xung từ bộ giao động, ngoài ra còn có khả năng đưa một tín hiệu giữ nhịp từ bên ngoài.

Chương trình đang chạy có thể cho dừng lại nhờ một khối điều khiển ngắt ở bên trong. Các nguồn ngắt có thể là : các biến cố ở bên ngoài, sự  tràn bộ đếm định thời hoặc cũng có thể là giao diện nối tiếp.

Hai bộ định thời 16 bit hoạt động như một bộ đếm.

Các cổng (port0, port1, port2, port3 ). Sử dụng vào mục đích điều khiển.

Ở cổng 3 có thêm các đường dẫn điều khiển dùng để trao đổi với một bộ nhớ bên ngoài, hoặc để đầu nối giao diện nối tiếp, cũng như các đường ngắt dẫn bên ngoài.

Giao diện nối tiếp có chứa một bộ truyền và một bộ nhận không đồng bộ, làm việc độc lập với nhau. Tốc độ truyền qu   ổng nối tiếp có thể đặt trong vảy rộng và được ấn định bằng một bộ định thời.

Trong vi điều khiển 8051 / 8031 có hai thành phần quan trọng khác đó là bộ nhớ và các thanh ghi :

Bộ nhớ gồm có bộ nhớ Ram và bộ nhớ Rom (chỉ có ở 8031) dùng để lưu trữ dữ liệu và mã lệnh.

Các thanh ghi sử dụng để lưu trữ  thông tin trong quá trình xử lí. Khi CPU làm việc nó làm thay đổi nội dung của các thanh ghi.

                         2. Chức năng các chân vi diều khiển:

Hình 2.2 : Sơ Đồ Chân 8051

ÄTừ chân 1¸ 8 Port 1 (P1.0, . . ., P1.7) dùng  làm Port xuất nhập I/O để giao tiếp bên ngoài.

ÄChân 9 (RST) là chân để RESET cho 8051.

ÄTừ chân 10¸17 là Port3 (P3.0, P3.1, . . ., P3.7) dùng vào hai mục đích: dùng là Port xuất / nhập I/O hoặc mỗi chân giữ một chức năng cá biệt được tóm tắt sơ bộ như sau :

l P3.0 (RXD)      : Nhận dữ liệu từ Port nối tiếp.

l P3.1 (TXD)       : Phát dữ liệu từ Port nối tiếp.

l P3.2 (INT0)      : Ngắt 0 bên ngoài.

l P3.3 (INT1)      : Ngắt 1 từ bên ngoài.

l P3.4 (T0)     : Timer/Counter 0 nhập từ bên ngoài.

l P3.5 (T1)     : Timer/Counter 1 nhập từ bên ngoài.

l P3.6 (WR)   : Tín hiệu Strobe ghi dữ liệu lên bộ nhớ bên ngoài.

l P3.7 (RD)    : Tín hiệu Strobe đọc dữ liệu lên bộ nhớ bên ngoài.

Ä Các chân 18,19 (XTAL2 và XTAL1) được nối với bộ dao động thạch anh 12 MHz để tạo dao động trên CHIP. Hai tụ 30 pF được thêm vào để ổn định dao động.

Ä Chân 20 (Vss) nối đất (Vss = 0).

Ä Từ chân 21¸28 là Port 2 (P2.0, P2.1, . . ., P2.7) dùng vào hai mục đích: làm Port xuất/nhập I/O hoặc dùng làm byte  cao của bus địa chỉ thì nó không còn tác dụng I/O nữa. Bởi vì ta muốn dùng EPROM và RAM ngoài nên phải sử dụng Port 2 làm byte cao bus địa chỉ.

Ä Chân 29 (PSEN) là tín hiệu điều khiển xuất ra của 8051, nó cho phép chọn bộ nhớ ngoài và được nối chung với chân của OE (Out Enable) của EPROM ngoài để cho phép đọc các byte của chương trình. Các xung tín hiệu PSEN hạ thấp trong suốt thời gian thi hành lệnh. Những mã nhị phân của chương trình được đọc từ EPROM đi qua bus dữ liệu và được chốt vào thanh ghi lệnh của 8051 bởi mã lệnh.

Ä Chân 30 (ALE : Adress Latch Enable) là tín hiệu điều khiển xuất ra của 8051, nó cho phép phân kênh bus địa chỉ và bus dữ liệu của Port 0.

Ä Chân 31 (EA : Eternal Acess) được đưa xuống thấp cho phép chọn bộ nhớ mã ngoài đối với 8031.

          Đối với 8051 thì :

  • EA = 5V   : Chọn ROM nội.
  • EA = 0V   : Chọn ROM ngoại
  • EA = 21V : Lập trình EPROM nội.

          Ä  Các chân từ 32¸39 là Port 0 (P0.0, P0.1, . . . , P0.7) dùng cả hai mục đích : Vừa làm byte thấp cho bus địa chỉ, vừa làm bus dữ liệu, nếu vậy Port 0 không còn chức năng xuất nhập I/O nữa.

Ä Chân 40 (Vcc) được nối lên nguồn 5V.

3. Tổ chức bộ nhớ :

          Bản đồ bộ nhớ data trên Chip như sau :

 

 

 


FF

 

 

 

 

 

F0

F7

F6

F5

F4

F3

F2

F1

F0

B

 

RAM đa dụng

 

 

 

 

 

 

 

E0

E7

E6

E5

E4

E3

E2

E1

E0

ACC

 

 

 

 

 

 

 

 

 

D0

D7

D6

D5

D4

D3

D2

D1

D0

PSW

 

 

 

 

 

 

30

 

 

B8

-

-

-

BC

BB

BA

B9

B8

IP

2F

7F

7E

7D

7C

7B

7A

79

78

 

 

 

 

 

 

 

 

 

 

 

2E

77

76

75

74

73

72

71

70

 

B0

B7

B6

B5

B4

B3

B2

B1

B0

P.3

2D

6F

6E

6D

6C

6B

6A

69

68

 

 

 

 

 

 

 

 

 

 

 

2C

67

66

65

64

63

62

61

60

 

A8

AF

 

 

AC

AB

AA

A9

A8

IE

2B

5F

5E

5D

5C

5B

5A

59

58

 

 

 

 

 

 

 

 

 

 

 

2A

57

56

55

54

53

52

51

50

 

A0

A7

A6

A5

A4

A3

A2

A1

A0

P2

29

4F

4E

4D

4C

4B

4A

49

48

 

 

 

 

 

 

 

 

 

 

 

28

47

46

45

44

43

42

41

40

 

99

không được địa chỉ hoá bit

SBUF

27

3F

3E

3D

3C

3B

3A

39

38

 

98

9F

9E

9D

9C

9B

9A

99

98

SCON

26

37

36

35

34

33

32

31

30

 

 

 

 

25

2F

2E

2D

2C

2B

2A

29

28

 

90

97

96

95

94

93

92

91

90

P1

24

27

26

25

24

23

22

21

20

 

 

 

 

23

1F

1E

1D

1C

1B

1A

19

18

 

8D

không được địa chỉ hoá bit

TH1

22

17

16

15

14

13

12

11

10

 

8C

không được địa chỉ hoá bit

TH0

21

0F

0E

0D

0C

0B

0A

09

08

 

8B

không được địa chỉ hoá bit

TL1

20

07

06

05

04

03

02

01

00

 

8A

không được địa chỉ hoá bit

TL0

1F

Bank 3

 

89

không được địa chỉ hoá bit

TMOD

18

 

 

88

8F

8E

8D

8C

8B

8A

89

88

TCON

17

Bank 2

 

87

không được địa chỉ hoá bit

PCOZ

10

 

 

 

 

 

0F

Bank 1

 

83

không được địa chỉ hoá bit

DPH

08

 

 

82

không được địa chỉ hoá bit

DPL

07

Bank thanh ghi 0

 

81

không được địa chỉ hoá bit

SP

00

(mặc định cho R0 -R7)

 

88

87

86

85

84

83

82

81

80

P0

                                                                                 

RAM   CÁC THANH GHI CHỨC NĂNG ĐẶC BIỆT

Mọi địa chỉ trong vùng RAM đa dụng đều  có thể được truy xuất tự  do dùng cách đánh địa chỉ trực tiếp hoặc gián tiếp. Ví dụ, để đọc nội dung ở địa chỉ 5FH của RAM nội vào thanh ghi tích lũy lệnh sau sẽ được dùng : MOV A, 5FH

Lệnh này di chuyển một búyt dữ liệu dùng cách đánh địa chỉ trực tiếp để xác định “địa chỉ nguồn” (5FH). Đích nhận dữ liệu được ngầm xác định trong mã lệnh là thanh ghi tích lũy A.

RAM bên trong cũng có thể được truy xuất dùng cách đánh địa chỉ gián tiếp qua RO hay R1. Ví dụ, sau khi thi hành cùng nhiệm vụ như lệnh đơn ở trên :

MOV R0, #5FH

MOV A, @R0

Lệnh đầu dùng địa chỉ tức thời để di chuyển giá trị 5FH vào thanh ghi R0 và lệnh thứ hai dùng địa chỉ trực tiếp để di chuyển dữ liệu “được trỏ bởi R0” vào thanh ghi tích lũy.

b.RAM địa chỉ hóa từng bit :

8051 / 8031 chứa 210 bit  được địa chỉ hóa, trong đó 128 bit là ở các địa chỉ byte 20H đến 2FH, và phần còn lại trong các thanh ghi chức năng đặc biệt

Y tưởng truy xuất từng bit riêng rẽ bằng mềm là một đặc tín tiện lợi của vi điều khiển nói chung. Các bit có thể được đặt, xóa, AND,OR …với một lệnh đơn. Đa số các chi xử lí đòi hỏi một chuổi lệnh đọc – sữa – ghi để đạt được hiệu quả tương tự. Hơn nữa, các port I/0 cũng được địa chỉ từng bit làm đợn giản phần mềm xuất nhập từng bit.

Có 128 bit được địa chỉ hóa đa dụng ở các byte 20H đến 2FH. Các địa chỉ này được truy xuất như các byte  hoặc các bit phụ thuộc vào lệnh được dùng. ví dụ, để đặt bit 67H, ta dùng lệnh sau :

SETB 67H

Chú ý rằng “địa chỉ bit 67H” là bit có trọng số lớn nhất (MSB) ở “địa chỉ byte 2CH” lệnh trên sẽ không tác động đến các bit khác của địa chỉ này.

c.Các bank thanh ghi :

32byte thấp nhất của bộ nhớ nội là dành cho các bank thanh ghi. Bộ lệnh của 8051 / 8031 hổ trợ 8 thanh ghi (RO đến R7) và theo mặc định (sau khi Reset hệ thống) các thanh ghi này ở các địa chỉ 00H-07H. Lệnh sau đây sẽ đọc nội dung ở địa chỉ 05H vào thanh ghi tích lũy.

MOV A,R5

Đây là lệnh một byte dùng địa chỉ thanh ghi. Tất nhiên, thao tác tương tự có thể được thi hành bằng lệnh 2 byte dùng địa chỉ trực tiếp nằm trong byte thứ hai:

MOV A,05H

Các lệnh dùng các thanh ghi R0 đến R7 thì sẽ ngắn hơn và nhanh hơn các lệnh tương ứng nhưng dùng địa chỉ trực tiếp. Các giá trị dữ liệu được dùng thường xuyên nên dùng một trong các thanh ghi này.

Bank thanh ghi tích cực có thể chuyển đổi bằng cách thay đổi các bit chọn bank thanh ghi trong từ trạng thái chương trình (PSW). Giả sử rằng bank thanh ghi 3 được tích cực, lệnh sau sẽ ghi nội dung của thanh ghi tích lũy vào địa chỉ 18H:

MOV R0,A

Y tưởng dùng “các bank thanh ghi” cho phép “chuyển hướng” chương trình nhanh và hiệu qủa (từng phần riêng rẽ của phần mềm sẽ có một bộ thanh ghi riêng không phụ thuộc vào các phần khác).

4. Các thanh ghi chức năng đặc biệt:

Các thanh ghi nội của 8051/8031 được truy xuất ngầm định bởi bộ lệnh. Ví dụ lệnh “INC A” sẽ tăng nội dung của thanh ghi tích lũy A lên 1. Tác động này được ngầm định trong mã lệnh.

Các thanh ghi trong 8051/8031 được định dạng như một phần của RAM trên chip. Vì vậy mỗi thanh ghi sẽ có một địa chỉ (ngoại trừ thanh ghi trực tiếp, sẽ không có lợi khi đặt chúng vào trong RAM trên chip). Đó là lý do để 8051/0831 có nhiều thanh ghi. Cũng như R0 đến R7, có 21 thanh ghi chức năng đặc biệt (SFR: Special Funtion Rgister) ở vùng trên của RAM nội, từ địa chỉ 80H đến FFH. Chú ý rằng hầu hết 128 địa chỉ từ 80H đến FFH không được định nghĩa. Chỉ có 21 địa chỉ SFR là được định nghĩa.

Ngoại trừ tích lũy (A) có thể được truy xuất ngầm như đã nói, đa số các SFR được truy xuất dùng địa chỉ trực tiếp. chú ý rằng một vài SFR có thể được địa chỉ hóa bit hoặc byte. Người thiết kế phải thận trọng khi truy xuất bit và byte. Ví dụ lệnh sau:

SETB 0E0H

Sẽ Set bit 0 trong thanh ghi tích lũy, các bit khác không thay đổi. Ta thấy rằng E0H đồng thời là địa chỉ byte của thanh ghi tích lũy và là địa chỉ bit có trọng số nhỏ nhất trong thanh ghi tích lũy. Vì lệnh SETB chỉ tác động trên bit, nên chỉ có địa chỉ bit là có hiệu quả.

  1.  Từ trạng thái chương trình:

Từ trạng thái chương trình (PSW: Program Status Word) ở địa chỉ D0H chứa các bit trạng thái như bảng tóm tắt sau:

 

Bit

Ký hiệu

Địa chỉ

Y nghĩa

PSW.7

PSW.6

PSW.5

PSW.4

PSW.3

 

 

 

 

PSW.2

PSW.1

PSW.0

CY

AC

F0

RS1

RS0

 

 

 

 

OV

 

P

D7H

D6H

D5H

D4H

D3H

 

 

 

 

D2H

D1H

D0H

Cờ nhớ

Cờ nhớ phụ

Cờ 0

Bit 1 chọn bank thanh ghi

Bit chọn bank thanh ghi.

00=bank 0; địa chỉ 00H-07H

01=bank 1: địa chỉ 08H-0FH

10=bank 2:địa chỉ 10H-17H

11=bank 3:địa chỉ 18H-1FH

Cờ tràn

Dự trữ

Cờ Parity chẵn.

 

Bảng 2.1: Từ trạng thái chương trình

  • Cờ nhớ (CY) có công dụng kép. Thông thường nó được dùng cho các lệnh toán học: nó sẽ được set nếu có một số nhớ sinh ra bởi phép cộng hoặc có một số mượn phép trừ . Ví dụ, nếu thanh ghi tích lũy chứa FFH, thì lệnh sau:

ADD A,#1

Sẽ trả về thanh ghi tích lũy kết qủa 00H và set cờ nhớ trong PSW.

Cờ nhớ cũng có thể xem như một thanh ghi 1 bit cho các lệnh luận lý thi hành trên bit. Ví dụ, lệnh sẽ AND bit 25H với cờ nhớ và đặt kết qủa trở vào cờ nhớ:

ANL C,25H

  • Cờ nhớ phụ:

Khi cộng các số BCD, cờ nhớ phụ (AC) được set nếu kết qủa của 4 bit thấp trong khoảng 0AH đến 0FH. Nếu các giá trị cộng được là số BCD, thì sau lệnh cộng cần có DA A( hiệu chỉnh thập phân thanh ghi tích lũy) để mang kết qủa lớn hơn 9 trở về tâm từ 0¸9.

  • Cờ 0

Cờ 0 (F0)là một bit cờ đa dụng dành các ứng dụng của người dùng.

  • Các bit chọn bank thanh ghi

Các bit chọn bank thanh ghi  (RSO và RS1) xác định bank thanh ghi được tích cực. Chúng được xóa sau khi reset hệ thống và được thay đổi bằng phần mềm nếu cần. Ví dụ, ba lệnh sau cho phép bank thanh ghi 3 và di chuyển nội dung của thanh ghi R7 (địa chỉ byte IFH) đến thanh ghi tích lũy:

SETB RS1

SETB RSO

MOV A,R7

Khi chương trình được hợp dịch các địa chỉ bit đúng được thay thế cho các ký hiệu “RS1” và “RS0”. Vậy lệnh SETB RS1 sẽ giống như lệnh SETB 0D4H.

  • Cờ Tràn

Cờ tràn (OV) được set một lệnh cộng hoặc trừ nếu có một phép toán bị tràn. Khi các số có dấu được cộng hoặc trừ với nhau, phần mềm có thể kiểm tra bit này để xác định xem kết qủa của nó có nằm trong tầm xác định không. Khi các số không dấu được cộng, bit OV có thể được bỏ qua. Các kết qủa lớn hơn +127 hoặc nhỏ hơn –128 sẽ set bit OV.

  1. Thanh ghi B:

Thanh ghi B ở địa chỉ F0H được dùng cùng với thanh ghi tích lũy A cho các phép  toán nhân và chia. Lệnh MUL AB sẽ nhân các giá trị không dấu 8 bit trong A và B rồi trả về kết qủa 16 bit trong A (byte thấp) và B (byte cao). Lệnh DIV AB sẽ chia A cho B rồi trả về kết qủa nguyên trong A và phần dư trong B. Thanh ghi B cũng có thể được xem như thanh ghi đệm đa dụng. Nó được địa chỉ hóa ttừng bit bằng các địa chỉ bit FOH đến F7H.

  1. Con trỏ ngăn xếp:

Con trỏ ngăn xếp (SP) là một thanh ghi 8 bit ở địa chỉ 81H. Nó chứa địa chỉ của byte dữ liệu hiện hành trên đỉnh của ngăn xếp. Các lệnh trên ngăn xếp bao gồm các thao tác cất dữ liệu vào ngăn xếp và lấy dữ liệu ra khỏi ngăn xếp. Lệnh cất dữ liệu vào ngăn xếp sẽ làm tăng SP trước khi ghi dữ liệu, và lệnh lấy dữ liệu ra khỏi ngăn xếp sẽ dọc dữ liệu và làm giảm SP. Ngăn xếp của 8051/8031 được giữ trong RAM nội và được giới hạn các địa chỉ có thể truy xuất bằng địa chỉ gián tiếp. chúng là 128 byte đầu của 8051/8031.

Để khởi động lại SP với ngăn xếp bắt đầu tại 60H, các lệnh sau đây được dùng:

MOV SP,#%FH

Trên  8051/8031 ngăn xếp bị giới hạn 32 byte vì địa chỉ cao nhất của RAM trên chip là 7FH. Sở dĩ cùng giá trị 5FH vì SP sẽ tăng lên 60H trước khi cất byte dữ lệu đầu tiên.

Người thiết kế có thể chọn không phải khởi động lại con trỏ ngăn xếp mà để nó lấy giá trị mặc định khi reset hệ thống. Giá trị măc định đó là 07H và kết qủa là ngăn đầu tiên để cất dữ liệu có địa chỉ 08H. Nếu phần mềm ứng dụng không khởi động lại SP , bank thanh ghi 1 (có thể cả 2 và 3) sẽ không dùng được vì vùng RAM này đã được dùng làm ngăn xếp.

Ngăn xếp được truy xuất trực tiếp bằng các lệnh PUSH và POP để lưu giữ tạm thời và lấy lại dữ liệu hoặc được truy xuất ngầm bằng các lệnh gọi chương trình con (ACALL, LACALL) và các lệnh trở về (RET,RETI) để cất và lấy lại bộ đếm chương trình.

  1. Con trỏ dữ liệu:

Con trỏ dữ liệu (DPTR) được dùng để truy xuất bộ nhớ ngoài là một thanh ghi 16 bit ở địa chỉ 82H(DPL: byte thấp) và 83H (DPH:byte cao). Ba lệnh sau sẽ ghi 55H vào RAM ngoài ở địa chỉ 1000H:

MOV A,#55H

MOV DPTR,#1000H

MOVX @DPTR,A

Lệnh đầu tiên dùng địa chỉ tức thời để tải dữ liệu 55H vào thanh ghi tích lũy, lệnh thứ hai cũng dùng địa chỉ tức thời, lần này để tải dữ liệu 16 bit 1000H vào con trỏ dữ liệu. Lệnh thứ ba dùng địa chỉ gián tiếp để di chuyển dữ liệu trong A (55H) đến RAM ngoài  ở địa chỉ được chứa trong DPTR (1000H)

  1. Các thanh ghi port xuất nhập:

Các port của 8051/8031 bao gồm Port 0 ở địa chỉ 80H, Port 1 ở địa chỉ 90 H, Port 2 ở địa chỉ A0H và Port 3 ở địa chỉ B0H. Tất cả các Port đều được địa chỉ hóa từng bit. Điều đó cung cấp một khả năng giao tiếp thuận lợi.

  1. Các thanh ghi timer:

8051/8031 chứa 2 bộ định thời đếm 16 bit được dùng trong việc định thời hoặc đếm sự kiện. Timer 0 ở địa chỉ 8AH (TL0:byte thấp) và 8CH (TH0:byte cao).Timer 1 ở địa chỉ 8BH (TL1:byte thấp) và 8DH (TH1: byte cao). việc vận hành timer được set bởi thanh ghi Timer Mode (TMOD) ở địa chỉ 89H và thanh ghi điều khiển timer (TCON) ở địa chỉ 88H. Chỉ có TCON được địa chỉ hóa từng bit.

  1. Các thanh ghi port nối tiếp:

8051/8031 chức một port nối tiếp trên chip dành cho việc trao đổi thông tin với các thiết bị nối tiếp như máy tính, modem hoặc cho việc giao tiếp với các IC khác có giao tiếp nối tiếp (có bộ chuyển đổi A/D, các thanh ghi dịch..). Một thanh ghi gọi là bộ đệm dữ liệu nối tiếp (SBUF) ở địa chỉ 99H sẽ giữ cả hai giữ liệu truyền và nhận. Khi truyền dữ liệu thì ghi lên SBUf, khi nhận dữ liệu thì đọc SBUF. Các mode vận hành khác nhau được lập trình qua thanh ghi điều khiển port nối tiếp (SCON) (được địa chỉ hóa từng bit) ở địa chỉ 98H.

  1. Các thanh ghi ngắt:

8051/8031 có cấu trúc 5 nguồn ngắt, 2 mức ưu tiên. Các ngắt bị cấm sau khi reset hệ thống và sẽ được cho phép bằng việc ghi thanh ghi cho phép ngắt (IE) ở địa chỉ 8AH. Cả hai thanh ghi được địa chỉ hóa từng bit.

  1. Các thanh ghi điều khiển công suất:

Thanh ghi điều khiển công suất (PCON) ở địa chỉ 87H chứa nhiều bit điều khiển. Chúng được tóm tắt trong bảng sau:

BIT

KÝ HIỆU

MÔ TẢ

7

SMOD

Bit tăng gấp đôi tốc độ baud, bit này khi được set làm cho tốc độ baud tăng 2 ở các chế độ 1,2 và 3 của port nối tiếp

6

_

Không định nghĩa

5

_

Không định nghĩa

4

_

Không định nghĩa

3

GF1

Bit cờ đa mục đích 1

2

GF0

Bit cờ đa mục đích 2

1

PD

Nguồn giảm; thiết lập để tích cực chế độ nguồn giảm, chỉ ra khỏi chế độ bằng reset.

0

IDL

Chế độ nghỉ; thiết lập để tích cực chế độ nghỉ, chỉ ra khỏi chế độ bằng 1 ngắt hoặc reset hệ thống.

Bảng 2.2 :Thanh ghi điều khiển công suất (PCON)

5. Bộ nhớ ngoài.

8051/8031 có khả năng mở rộng bộ nhớ đến 64K bộ nhớ chương trình và 64K bộ nhớ dữ liệu bên ngoài. Do đó có thể dùng thêm ROM và RAM nếu cần.

Khi dùng bộ nhớ ngoài, port 0 không còn là một port I/O thuần túy nữa. Nó được hợp kênh giữa bus địa chỉ (A0-A7) và bus dữ liệu (D0-D7) với tín hiệu ALE để chốt byte thấp của địa chỉ khi bắt đầu mỗi chu kỳ bộ nhớ. Port 2 thông thường được dùng cho byte cao của bus địa chỉ.

Trong   nửa đầu của mỗi chu kỳ bộ nhớ, byte thấp của địa chỉ được cấp trong port 0 và được chốt bằng xung ALE. Một IC chốt 74HC373 (hoặc tương đương) sẽ giữ byte địa chỉ thấp trong phần còn lại của chu kỳ bộ nhớ. Trong nửa sau của chu kỳ bộ nhớ port 0 được dùng như bus dữ liệu và được đọc hoặc ghi tùy theo lệnh.

a. Truy xuất bộ nhớ chương trình ngoài:

Bộ nhớ chương trình ngoài là mộ IC ROM được phép bởi tín hiệu PSEn. Hình sau mô tả cách nối một EPROM vào 8051/8031:

Hình 2.5 Giao tiếp giữa 8051/8031 và EPROM

Một chu kỳ máy của 8051/8031 có 12 chu kỳ xung nhịp. Nếu bộ dao động trên chip được lái bởi một thạch anh 12MHz thì chu kỳ máy kéo dài 1ms. Trong một chu kỳ máy sẽ có 2 xung ALE và 2 byte được đọc từ bộ nhớ chương trình (nếu lệnh hiện hành là một byte thì byte thứ hai sẽ được loại bỏ). Giản đồ thời gian của một lần lấy lệnh được vẽ ở hình sau:

 

Hình 2.3: Giản đồ thời gian đọc bộ nhớ chương trình ngoài.

b. Truy xuất bộ nhớ dữ liệu ngoài:

                           Hình 2.4: Giao tiếp giữa 8051/8031 và RAM

Bộ nhớ dữ liệu ngoài là một bộ nhớ RAM được cho phép ghi/đọc bằng các tín hệu WR và RD (các chân P3.6 và P3.7 thay đổi chức năng). chỉ có một cách truy xuất bộ nhớ dữ liệu ngoài là với lệnh MOVX dùng con trỏ dữ liệu (DPTR) 16 bit hoặc R0 và R1 xem như thanh ghi địa chỉ.

Kết nối bus địa chỉ và bus dữ liệu giữa RAM và 8051/8031 cũng giống EPROM và do đó cũng có thể lên đến 64 byte bộ nhớ RAM. Ngoài ra, chân RD của 8051/8031 được nối tới chân cho phép xuất (OE) của RAM và chân WR được nối tới chân ghi (WR) của RAM.

Hình 2.5: giải mã địa chỉ

Sự giải mã địa chỉ :

Đó là một yêu cầu tất yếu để chọn Eprom, Ram, … Sự giải mã địa chỉ đối với 8051để chọn các vùng nhớ ngoài. Nếu các con Eprom hoặc Ram 8K được dùng thì các bus địa chỉ phải được giải mã để chọn các IC nhớ nằm trong phạm vi giới hạn 8K: 0000H – 1FFFH; 2000H – 3FFFH; … Cụ thể là Ic 74LS138 được dùng với những ngõ ra của nó nối với những ngõ vào chọn chip CS trên những IC nhớ Eprom, Ram, …

          Sự đè lên nhau của các vùng nhớ dữ liệu ngoài :

Vì bộ nhớ chương trình là Eprom nên nảy sinh một vấn đề bất tiện khi phát triển phần mềm cho vi điều khiển. Một nhược điểm chung  của 8051 là các vùng nhớ dữ liệu ngoài nằm đè lên nhau, vì tín hiệu PSEn\  được dùng để đọc bộ nhớ mã ngoài và tín hiệu RD\ được dùng để đọc bộ nhớ dữ liệu , nên một bộ nhớ Ram có thể chứa cả chương trình và dữ liệu bằng cách nối đường OE\ của Ram nên ngõ ra một cổng And có hai ngõ vào là RD\ và PSEN\ .

Giản đồ thời gian cho lệnh đọc bộ nhớ dữ liệu ngoài được vẽ trên hình sau đối với lệnh  MOVX A, @DPTR:

Hình 2.6: Giản đồ thời gian của lệnh MOVX

Giản đồ thời gian cho lệnh ghi (MOVX @DPTR, A) cũng tương tự chỉ khác đường WR sẽ thay vào đường RD và dữ liệu được xuất ra trên port 0 (RD vẫn giữ mức cao).

6. Lệnh reset:

8051/8031 được reset bằng cách giữ chân RST ở mức cao ít nhất trong 2 chu kỳ máy và trả nó về múc thấp. RST có thể được kích khi cấp điện dùng một mạch R-C.

Hình 2.7: Mạch reset hệ thống.

          Khi mới cấp nguồn thì mạch sẽ tự động reset và chân Reset ở mức cao trong thời gian là: T = R.C = 8,2.103 * 10.10-6 = 82 ms

          Khi ta nhấn nút Reset thì điện áp trên chân Reset là:

V = 5*8,2/(100+8,2.103) =

          Trạng thái của tất cả các thanh ghi của 8051/8031 sau khi reset hệ thống được tóm tắt trong bảng sau:

Thanh ghi

Nội dung

Đếm chương trình

Tích lũy

B

PSW

SP

DPTR

Port 0-3

IP

IE

Các thanh ghi định thời

SCON

SBUF

PCON(HMOS)

PCON(CMOS)

0000H

00H

00H

00H

07H

0000H

FFH

XXX00000B

0XX00000B

00H

00H

00H

0XXXXXXB

0XXX0000B

Bảng 2.3: Trạng thái các thanh ghi sau khi reset

Quan trọng nhất trong các thanh ghi trên là thanh ghi đếm chương trình, nó được đặt lại 0000H. Khi RST trở lại mức thấp, việc thi hành chương trình luôn bắt đầu ở địa chỉ đầu tiên trong bộ nhớ trong chương trình: địa chỉ 0000H. Nội dung của RAM trên chip không bị thay đổi bởi lệnh reset.

CHƯƠNG III : KHÁI QUÁT VỀ HỒNG NGOẠI

  1. Giới thiệu về LED phát và LED thu:
    1. LED phát:

VLED = 1.7 ~ 2.4V

ILED  = 5 ~ 20mA

  1. LED thu

VCC = 5V                                                                    

  1. Giới thiệu về IC SZ9148 và SZ9149:
    1. Giới thiệu về IC SZ9148:

Mạch điện IC SZ9148 sử dụng công nghệ CMOS qui mô lớn để chế tạo là một loại linh kiện phát xa mã hoá tia hồng ngoại rất thông dụng,phạm vi điện áp nguồn điện là 2.2~5.5V.Vì sử dụng công nghệ  CMOS để chế tạo nên công suất tiêu hao cực thấp,dòng điện trạng thái tĩnh chỉ 10µA,nó có thể sử dụng nhiều tổ hợp phím ,linh kiện bên ngoài rất ít,mã số của nó thích hợp với nhiều qui mô khác,chỉ cần nối ngoài linh kiện LC hoặc bộ dao động gốm là có thể gây ra dao động.

  • Sơ dồ chân:

                                                      BL9148

1.Chức năng của các chân dẫn:

          IC SZ 9148 sử dụng 16 chân vỏ nhựa kiểu cắm thẳng hàng.

          Chân 1:Vss  là đầu âm của dòng điện nối với đất.

Chân 2: XT là đầu vào của bộ phận phân tần bên trong:

Chân 3: XTN là đầu ra của bộ dao động bên trong,bên trong nó không có điện trở phản hồi.

Chân 4 đến chân 9: (k1-k6) là đoạn đầu vào tín hiệu của bàn phím kiểu ma trận.

Chân 10 đến chân 12:T1-T3 kết hợp với các chân k1 đến k6 có thể tạo thành 18 phím.

Chân 13:(CODE) là đầu vào của mã số,dùng mã sốp để truyền tải và tiếp nhận.

Chân 14: (TEST) là đầu đo thử,bình thường khi sử dụng cò thể bỏ trống.

Chân 15: (Txout) là đầu ra tín hiệu truyền tải tín hiệu 12 bit thành một chu kì,sử dụng sóng mang 38khz để điều chế.

Chân 16: (Vcc) là đầu dương của nguồn điện nối với điện áp một chiều 2.2-5.5V,điện áp làm việc bình thường 3V.

Tham số cực hạn của IC SZ 9148:

Bảng:

Tham số

Ký hiệu

Gía trị cực hạn

Đơn vị

Điện áp nguồn điện

VOO

6.0

V

Đầu vào/ra điện áp

VIN

VSS-3v~VDD+3V

V

Công suất tổn hao

PD

200

MW

Nhiệt độ làm việc

TOPP

-200~75

­­OC

Nhiệt độ cất giữ

TSFG

-55~125

OC

Dòng điện đầu ra(Iout)

Iout

-5

mA

Mục lục

Kí hiệu

Điều kiện đo thử

Nhỏ nhất

Điển hỉnh

Lớn nhất

Đơn vị

Điện áp nguồn điện

VDD

Tất cả chức năng thao tác

2.2

    _

5.0V

   V

Dòng điên làm việc

IDD

Phím thông không phụ tải

  _

    _

1.0

Ma

Dòng điện trạng thái bão hoà

IDS

Phím mở không dao động

    _

     _

10

µA

 

 

 

 

 

 

 

 

 

 

 

 

Đầu vào

 

k1

÷

k5 code

 

Điện áp đầu vào

Mức điện cao

VIH

-

2.0

-

3.0

V

 

Mức điện thấp

VIL

-

0

-

0.5

V

 

 

 

k2

 ÷

k6

 

Dòng điện đầu vào

Mức điện cao

IIH

VIH = 3V

20

30

60

µA

 

Mức điện thấp

IIL

VIL = 0V

-1.0

-

1.0

µA

 

 

 

Code Test

 

Dòng điện đầu vào

Mức điện cao

IIH

VIH = 3V

-1.0

-

1.0

µA

 

Mức điện thấp

IIL

VIL = 0V

20

30

60

µA

 

Đầu ra

 

k1

÷

k3

 

Dòng điện đầu ra

Mức điện cao

IOH

VOH = 2V

-

-

-

500

µA

 

Mức điện thấp

IOL

VOL = 3V

-50

-

-

µA

 

Txo ut

Dòng điện đầu ra

Mức điện cao

IOH

VOH = 2V

-

-

-0.1

mA

 

Mức điện thấp

IOL

VOL = 2V

1.0

-

-

mA

 

Điện trở phản hồi bộ dao động

R

-

-

500

-

K¿

 

Công suất dao động

Fosc

-

400

455

600

KHz

 

                               

          Nguyên lý hoạt động:

Trong IC SZ 9148 có chứa bộ đảo pha CMOS là điện trở định thiên cùng nối bộ dao động bằng thạch anh hoặc mạch điện dao động cộng hưởng.Khi tần số của bộ dao động thiết kế xác định là 455kHz. Chỉ khi có thao tác nhấn phím mới có thể tạo ra dao động, vì thế đảm bảo công suất của nó tiêu hao thấp. Bởi nó có thể thông qua các chân k1 đến k6 và đầu ra thứ tự thời gian chân T1 đến T3 để tạo ra bàn phím 6x3 theo kiểu ma trận Tại T1 sáu phím được sắp xếp có thể tuỳ chọn đế tạo thành 63 trạng thái tín hiệu liên tục đưa ra được trình bày ở hình sau:

**************************************************************

GET_KEY: Đọc trạng thái bàn phím

              _ Trả về C = 0 nếu không có phím ấn.

              _ Trả về C = 1 và mã số HEX trong ACC nếu có phím ấn.

***************************************************************

GET_KEY: MOV A,#0FEH             ; bắt đầu với cột 0

                    MOV R6,#4                            ; sử dụng R6 làm phổ biến

TEST:         MOV P1,A                    ; tích cực cột

                    MOV R7,A                    ; lưu ACC

                    MOV A,P1                    ; đọc trở lại P1

                    ANL A,#0F0H               ; cách ly các hàng

                    CJNE A,#0F0H,KEY_HIT; hàng tích cực?

                    MOV A,R7                    ; không: di chuyển tới

                    RL A                              ; cột kế

                    DJNZ R6,TEST             ;

                    CLR C                           ; không có phím được ấn

                    SJMP EXIT                             ; quay về với C = 0

KEY_HIT:  MOV R7,A                    ; lưu trong R7

                    MOV A,#4                     ; chuẩn bị tính

                    CLR C                           ; trọng số của cột

                    SUBB A,R6                            ; 4 – R6 = trọng số

                    MOV R6,A                    ; lưu trong R6

                    MOV A,R7                    ; phục hồi mã quét

                    SWAP A                        ; đặt trong 4 bit thấp

                    MOV R5,#4                            ; dùng R5 làm bộ đếm

AGAIN:      RRC A                           ; quay về cho đến khi = 0

                    JNC DONE                    ; thực thi xong khi C = 0

                    INC R6                          ; cộng 4 cho đến khi                

INC R6                          ; tìm thấy hàng tích cực

                    INC R6

                    INC R6

                    DJNZ R5,AGAIN

DONE:       SETB C                         ; C =1 (có phím được ấn)

                    MOV A,R6                    ; mã trong A

EXIT:         RET

  1. Thi công:
  • Sau khi đã tính toán thiết kế trên cơ sở lý thuyết, nhóm chúng em tiến hành thi công hệ thống. Công việc thi công được thực hiện qua các bước sau:
  1. Thiết kế mạch in:

Vì mạch cũng không phức tạp lắm nên chúng em vừa sử dụng phần mềm ORCAD, vừa vẽ tay để thiết kế mạch in.

  1. Chuẩn bị:

         Trong thời gian chờ gia công mạch in giải quyết các vấn đề sau:

Lập bảng liệt kê và mua linh kiện.

Thiết kế hộp đựng mạch điều khiển

Lắp thử một số mạch trên testboard để kiểm tra một số linh kiện trong hệ thống.

Viết và nạp chương trình điều khiển vào IC.

  1. Lắp ráp linh kiện và kiểm tra:

Để đảm bảo không gặp sự cố khi lắp ráp toàn bộ linh kiện lên mạch in, nhóm chọn phương pháp lắp và kiểm tra từng bộ phận, sau khi bộ phận đó hoạt động tốt rồi mới tiến hành lắp ráp bộ phận kế tiếp.

  1. Thiết kế mạch điều khiển động cơ cửa:

                   Do động cơ quay với tốc độ cao nhưng Momen nhỏ nên chúng em thiết kế bộ giảm tốc để tăng Momen và cũng để giảm tốc độ đóng mở của cửa.

 

 

 

 

CHƯƠNG KẾT LUẬN

          Trên đây là toàn bộ quy trình thi công lắp ráp mạch cửa hàng thông minh của chúng em. Hơn một tháng làm việc không mệt mỏi, cuối cùng nhóm chúng em đã hoàn thành, có thể nói đây là một đề tài lớn nhất của chúng em từ khi được học tại trường. Nó là thành quả mà chúng em đạt được sau hai năm học tập và tìm tòi. Với thời gian hạn hẹp và trình độ còn hạn chế, có thể đề tài do chúng em thực hiện còn nhiều khuyết điểm và thiếu sót, chúng em mong có được sự thông cảm và đóng góp ý kiến của quý thầy cô. Chúng em xin chân thành cảm ơn.

          Hướng Phát Triển Đề Tài :lắp thêmhệ thống báo cháy và hoàn thiện cửa tự động dùng hồng ngoại để có được một cửa hàng thật sự thông minh như mọi người mong muốn. Đó là một vài suy nghĩ của chúng em. Nếu có được điều kiện thuận lợi và được quý thầy cô giúp đỡ, nhất định chúng em sẽ cố gắng thực hiện được nó.

PHỤ LỤC VÀ TÀI LIỆU THAM KHẢO

  1. Họ vi điều khiển 8051 –TỐNG VĂN ON
  2. Các tài liệu đồ án tốt nghiệp khoá 2002 _ 2005
  3. www.princeton.com.tv
  4. www.alldatasheet.com
  5. www.datasheet4u.com

Close