TRƯỜNG HỌC VIỆN KĨ THUẬT QUÂN SỰ KHOA VÔ TUYẾN- ĐIỆN TỬ ************************
ĐỀ TÀI: Thiết kế hệ thống điều khiển đèn tín hiệu tại ngã tư Nguyễn Phong Sắc – Hoàng Quốc Việt, với bộ vi xử lý sử dụng onchip 89c51. Giáo viên hướng dẫn: Trần Thị hồng Thắm Sinh viên thực hiện: Nhóm 4 Lớp
LỜI NÓI ĐẦU ĐIỆN TỬ VIỄN THÔNG 15A
Page 1
:
DTVT 15A
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
Nghành kỹ thuật Điện tử hiện nay đang phát triển mạnh mẽ , kỹ thuật Vi
Điều Khiển đã trở lên quen thuộc trong các nghành kỹ thuật và trong dân dụng . Trong thực tế các bộ Vi Điều Khiển các bộ Vi Điều Khiển được ứng dụng vào mọi lĩnh vực của đời sống từ các thiết bị nhỏ như điện thoại di động , máy nhắn tin, trò chơi điện tử , các thiết bị gia dụng như ( máy giặt, điều hoà , tủ lạnh…) đến những thiết bị có quy mô lớn như các bộ điều khiển tự động trong các nhà máy , xi nghiệp, hệ thống thông tin liên lạc… Vi điều khiển đã góp phần đưa con người đến đỉnh cao của nhân loại. Trong phạm vi bài tập lớn lần này, chúng em dùng vi điều khiển để thiết kế HỆ THỐNG ĐÈN TÍN HIỆU TẠI 1 NGÃ TƯ. Đây chỉ là một trong những ứng dụng rất nhỏ của vi điều khiển nhưng qua quá trình thiết kế đề tài chúng em đã rút ra được rất nhiều kinh nghiêm thực tiễn quý báu. Mục đích của đề tài hướng đến: tạo ra bước đầu cho sinh viên thử nghiệm những ứng dụng của vi điều khiển trong thực tiễn để rồi từ đó tìm tòi, phát triển nhiều ứng dụng khác trong đời sống hằng ngày cần đến. Mặc dù đã cố gắng hết sức mình để hoàn thành xong đồ án môn học nhưng cũng không tránh khỏi những thiếu sót. Do vậy, chúng em rất mong được sự góp ý quý báu của thầy cô và các bạn để đề tài có thể hoàn thiện hơn. Chúng em xin chân thành cảm ơn
PHẦN A: ĐIỆN TỬ VIỄN THÔNG 15A
Sơ Lược 8051 Page 2
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
8051 ra đời năm 1981 do hãng Intel sản xuất. Họ điều khiển này có 128
byte RAM,4kbyte ROM,hai bộ đnh thời ,một cổng nối tiếp và 4 cổng ra\vào song song và là 1 bộ vi xử lý 8 bit.Sau khi Intel cho các nhà sản xuất khác sản xuất và bán các dạng biến thể của 8051 thì họ 8051càng ngày càng phổ biến và ngày càng có nhiều phiên bản khác nhau của 8051 nhưng tất cả đều tương thích với 8051 ban đầu. Sau đây là bảng so sánh các họ khác nhau:
I.
Số hiệu sản xuất
Bộ nhớ chương trình
Bộ nhớ dữ liệu
Số bộ định thời (bộ đếm)
8031
0K
128 BYTE
2
8051
4K ROM
128 BYTE
2
8571
4K EPROM
128 BYTE
2
8951
4K FLASH
128 BYTE
2
8032
0K
256 BYTE
3
8052
8K ROM
256 BYTE
3
8752
8K EPROM
256 BYTE
3
8952
8K FLASH
256 BYTE
3
C h ức
năng các chân của họ 8051 1.
Port 0 (P0.0 _ P0.7)
Port 0 gồm 8 chân .Với chức năng xuất nhập dữ liệu ,ngoài ra Port 0 còn là bus đa hợp dữ liện và địa chỉ(AD0_AD7).Port 0 cũng nhận các byte mã khi lập trình Flas và xuất các byte mã khi kiểm tra chương trình .Chú y trong trường hợp này cần có thêm điện trở trước khi nối vào chân Port 0. ĐIỆN TỬ VIỄN THÔNG 15A
Page 3
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
2. Port 1 (P1.0_P1.7) Cũng như Port 0 ,Port 1 cũng có 8 chân. Chức năng của Port 1 chỉ là xuất nhập dữ liệu .Port 1 cũng có thể xuất nhập theo bit và theo byte. 3. Port 2 Port 2 là port 8 bit ,cũng có chức năng xuất nhập dữ liệu như 2 port trên.Khi làm nhiệm vụ là port nhập, các chân của port 2 đang được kéo xuống mức thấp do tác động của bên ngoài sẽ cấp dòng do các điện trở kéo lên từ bên trong .Port 2 tạo ra byte cao của bus điạ chỉ trong thời gian tìm nạp lệnh từ bộ nhớ chương trình ngoài và trong thời gian truy xuất bộ nhớ dữ liệu ngoài sử dụng các địa chỉ 16 bit.Port 2 cũng nhận các bit địa chỉ cao và tín hiệu điều khiển trông thời gian lập trình Flash và kiểm tra chương trình. 4. Port 3 Cũng là port xuất nhập dữ liệu 8 bit ,ngoài ra port 3 còn có các chức năng khác cụ thể như 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 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/counter0 Ngõ vào của timer/counter1 Xung ghi bộ nhớ dữ liệu ngoài Xung đọc bộ nhớ dữ liệu ngoài
5. RST Khi tín hiệu vào chân này được đưa lên mức cao ( trong ít 2 chu kỳ),các thanh ghi trong bộ vi điều khiển được tải lên nhưng giá trị thích hợp để khởi động hệ thống. 6. Chân /PSEN PSEN(program store enable) là chân đọc chương trình ở bộ nhớ ngoài ./PSEN sẽ ở mức thấp trong thời gian đọc mã lệnh.Khi thực hiện chương trình trong ROM nội thì /PSEN ở mức cao Chân này được kích hoạt 2 lần mỗi chu kỳ máy và hai hoạt đông này sẽ được bỏ qua khi truy cập bộ nhớ ngoài . ĐIỆN TỬ VIỄN THÔNG 15A
Page 4
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
7. Chân ALE ALE(address latch enable) là một xung ngõ ra để chốt byte thấp của địa chỉ trong khi truy cập bộ nhớ ngoài .Đây cũng là chân truy cập xung lập trình khyi lập trình Flash.Bình thường khi hoạt động chân ALE sẽ được phát với một tỷ lệ không đổi 1/6 tần số dao đông của vi điều khiển .Tuy nhiên chân này cũng sẽ bỏ qua mỗi khi truy cập bộ nhớ ngoài . 8. Chân EA EA(external access) là chân cho phép chọn bộ nhớ trong hay bộ nhớ ngoài của vi điều khiển .Khi EA ở mức tích cực cao(nối với VCC) thì vi điều khiển thi hành chương trình ROM nội,ngược lại(nối với GND) thì vi điều khiển thi hành bộ nhớ ngoài. 9. XTAL1 và XTAL2
Đây là 2 ngỏ vào và ra của 1 bộ khuyếch đại dao động nghịch được cấu hình để dùng như một bộ dao động trên chip.Nó thường được nối với bộ dao đông thạch anh có dải tần thường là 12MHz-33MHz. 10. Vcc và GND Đây là 2 chân dùng để cấp nguồn cho IC, dải điện áp thích hợp là 4-5V.Với Vcc nối với dương nguồn ,GND nối với âm nguồn.
Hình 1. của
Sơ đồ chân 8051
ĐIỆN TỬ VIỄN THÔNG 15A
Page 5
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
Hình 2. Sơ đồ khối điều khiển của 8051 PHẦN B: Phân Tích Bài Toán Thiết Kế
và Thiết Kế Sơ Đồ Phần Cứng 1. Phân tích bài toán Điều khiển 2 cột đèn ở một ngã tư Mục đích để phân luồng giao thông, điều khiển đèn đỏ sáng 24 s, đèn xanh 20s, đèn vàng 4s.
Các đèn vàng, xanh, đỏ trên 2 cột đèn sáng xen kẽ nhau. Đảm bảo sao cho thời gian đèn đỏ cột này bằng thời gian đèn vàng cộng đèn xanh và ngược lại Điều đó thể hiện qua giản đồ sau: Cột 1 Dx1
20s
ĐIỆN TỬ VIỄN THÔNG 15A
20s
Page 6
TRƯỜNG HVKT QUÂN SỰ Dv1
BÀI TẬP LỚN VI XỬ LÍ 4s
Dd2
4s
24s
24s
Cột 2
Dd1
24s
Dx2
24s
20s
Dv2
20s
4s
4s
Hình 3: Giản đồ thời gian các chế độ hoạt đông
2. Thiết kế phần cứng - Thành phần linh kiện bao gồm: 4 cột đèn giao thông gồm 3 đèn xanh, đỏ, vàng. 4 cặp led đôi 7 thanh loại cathode, 1 con chip 89c51, 8 cổng logic not, 1 switch, và các trở va tụ. - Khối hiện thị
LED 7 THANH
IC 89C51
-
Khối điều khiển đèn
IC 89C51 -
LED ĐƠN
Sơ đồ nguyên lí
ĐIỆN TỬ VIỄN THÔNG 15A
Page 7
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
Phần C: Lưu Đồ Thuật Toàn Và Mã Phần Mềm 1.
Lưu đồ thuật toán
Begin
Thời gian D1=24s
Thời gian D2=24s
Thời gian X2= 20s
Thời gian X1= 20s
Bật đèn đỏ 1 và đèn xanh 2
Bật đèn đỏ 2 và đèn xanh 1
ĐIỆN TỬ VIỄN THÔNG 15A Chạy chương chương trình trình led led Chạy đènđếm đỏ 1lùivàthời đèn 77Bật đoạn, Thời gian 4s đoạn, đếmV2= vàng 2lùi thời gian
Page 8
Chạy chương trình led Chạy led7 Bật chương đèn đỏ 2trình và đèn đoạn, đếm lùi thời gian Thời gian V1=thời 4s 7 đoạn, đếm vàng lùi 1
TRƯỜNG HVKT QUÂN SỰ
BÀI TẬP LỚN VI XỬ LÍ
Hình 4: sơ đồ giải thuật
2. Chương trình /****************DEN GIAO THONG 1 NGA TU**********************/ /******************** NHOM 4 DTVT 15A*************************/ /*========================================================*/ #include<AT89X51.h> unsigned char thoi_gian0,thoi_gian1,thoi_gian2,thoi_gian3; unsigned int over=0; unsigned char ma[10]={192,249,164,176,153,146,130,248,128,144}; void delay(unsigned char time) { ĐIỆN TỬ VIỄN THÔNG 15A
PHẦN D: HƯỚNG MỞ RỘNG ĐỀ TÀI Trên cơ sở xây dựng đèn giao thông 1 ngã tư, chúng ta có thể mở rộng mô hình điều khiển sang nhiều hướng khác .Đó cũng chỉ là việc liên kết các cột đèn tín hiệu. tín hiệu cho phép đi của làn đường này (đèn xanh) cùng lúc đó co tín hiệu dừng lại (đèn đỏ) của các làn đường khác không cùng chiều cùng hướng. Ngoải ra chúng ta có thể thiết kê thêm đèn dành cho người đi bộ, làn đường ưu tiên. Cùng với các bộ cảm biến quang và ic thời gian thực, chúng ta sẽ tự động thay đổi thời gian ban ngày và ban đêm ( ban đêm thì giảm thời giảm xuống, ban ngày tăng thời gian lúc cao điểm để tránh gây tắc nghẽn).