Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 14 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
14
Dung lượng
318,48 KB
Nội dung
Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên LỜI CẢM ƠN Trước hết em xin chân thành cảm ơn thầy Nhựt Tuyên Thầy Khoa Điện-Điện Tử giúp đỡ cho em hoàn thành đồ án Đây đồ án trình học tập trường, cịn nhiều thiếu sót hạn chế mong thông cảm thầy Em hi vọng thời gian lại học trường em nhận giúp đỡ thầy để học tập tốt hoàn thành tốt đồ án mơn học cịn lại Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên I ĐẶT VẤN ĐỀ II Trong hệ thống giao thông nước ta, vấn đề an tồn giao thơng tránh ùn tắc đô thị thành phố lớn nhữngvấn đề cấp bách tồn xã hội quan tâm Vì phương tiện hướng dẫn giao thơng đóng vai trị quan trọng, góp phần hạn chế xung đột xảy tham gia giao thông Tại đô thị hệ thống đèn điều khiển giao thơng quan trọng Hệ thống đèn điều khiển giao thông khơng có tác dụng hạn chế xung đột giao thơng thành phố mà cịn cơng cụ điều khiển luồng giao thông nhằm hạn chế ùn tắc - vấn đề nan giải thành phố lớn Vì lí trên, chúng em định chọn đề tài “Thiết kế hệ thống đèn điềukhiển giao thông” TỔNG QUAN VỀ IC AT89C51 Vi điều khiển AT89C51 vi điều khiển thuộc họ 8051, loại CMOS,có tốc độ cao công suất thấp với nhớ Flash lập trình được.Nó sản xuất với công nghệ nhớ không bay mật độ cao hãng Atmel AT89C51 có 40 chân, đóng gói theo tiêu chuẩn PDIP Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên Hình1: Sơ đồ chân AT89c51 -Các đặc điểm tiêu chuẩn (của họ vi điều khiển 8051): 4KB Flash ROM 128 byte RAM cổng vào/ra song song bit định thời/đếm 16 bit Kiến trúc vectơ ngắt mức (five interruptarchitecture) cổng nối tiếp song công (full-duplex) vector two-level Chức chân tín hiệu Các cổng vào/ra song song 8051 có cổng vào/ra song song bit Port0, Port1, Port2, Port3 Các cổng sử dụng cổng vào cổng +)Cổng Port0 (các chân 32÷39) : cổng vào/ra song song có hai chức Trong thiết kế cỡ nhỏ không dùng nhớ mở rộng, có chức đường vào/ra Trong thiết kế cỡ lớn có nhớ mở rộng trở thành bus địa bus liệu đa hợp +)Cổng Port1 (các chân 1÷8): cổng vào/ra song song Các chân ký hiệu P1.0, P1.1, P1.2, …có thể dùng cho giao tiếp với thiết bị ngồi cần Cổng Port1 khơng có chức khác, chúng dùng cho giao tiếp với thiết bị ngoại vi +)Cổng Port2 (các chân 21÷28): cổng vào/ra song song có tác dụng kép, dùng đường xuất nhập byte bus địa 16 bit thiết bị dùng nhớ mở rộng +)Cổng Port3 (các chân 10÷17): cổng vào/ra song song có tác dụng kép Khi khơng hoạt động xuất nhập chân cổng có nhiều chức riêng Bảng cho ta chức chân cổng Port3 Bit Tên Chức chuyển đổi P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RxT TxD INT0 INT1 T0 T1 WR RD Đường vào liệu cổng nối tiếp Đường xuất liệu cổng nối tiếp Đường vào ngắt Đường vào ngắt Đường vào Bộ định thời/Bộ đếm thứ Đường vào Bộ định thời/Bộ đếm thứ Tín hiệu ghi liệu nhớ ngồi Tín hiệu đọc liệu nhớ Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên Các chân tín hiệu điều khiển Chân cho phép nhớ chương trình PSEN (Program Storage Enable): -Tín hiệu PSEN tín hiệu chân 29 có tác dụng kép - Cho phép đọc nhớ chương trình ngồi, thường nối đến chân OE (Output Enable) EPROM cho phép đọc byte mã lệnh Tín hiệu PSEN logic thời gian vi điều khiển tìm nạp lệnh Các mã lệnh đọc từ EPROM qua bus liệu chốt vào ghi lệnh IR vi điều khiển để giải mã - Khi vi điều khiển thi hành chương trình ROM nội PSEN mức logic Chân cho phép chốt địa ALE/PROG (Address Latch Enable): - Chân tín hiệu ALE (chân 30) đưa xung điều khiển cho phép chốt byte thấp địa vi điều khiển truy xuất nhớ Chân đầu vào xung lập trình lập trình cho FLASH chân tín hiệu mức - Khi hoạt động bình thường, tín hiệu ALE phát với tần số khơng đổi 1/6 tần số tạo dao động chip, sử dụng cho mục đích định thời Tuy nhiên, có xung ALE bị bỏ qua vi điều khiển truy xuất nhớ ngồi Chân tín hiệu truy xuất ngồi EA (External Access): -Tín hiệu vào EA (chân 31) nối với 5V (mức logic 1) với GND (mức 0) Nếu mức 1, vi điều khiển thi hành chương trình từ ROM nội Nếu mức 0, vi điều khiển thi hành chương trình nhớ mở rộng -Chân EA lấy làm chân cấp nguồn 12V lập trình cho FLASH vi điều khiển Chân thiết lập lại RST (Reset): - Chân RST (chân 9) đường vào xóa vi điều khiển dùng để thiết lập lại hệ thống Khi chân tín hiệu đưa lên mức cao chu kì máy, ghi bên nạp giá trị thích hợp để khởi động hệ thống -RST kích cấp điện dùng mạch R-C Mạch sau:(MẠCH RESET) Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên Mạch thiết lập lại cho AT89c51(8051) - Trạng thái ghi vi điều khiển tóm tắt bảng 2) Quan trọng ghi ghi đếmchương trình (PC – Program Counter) Sau thiết lập lại (RSTtrở mức thấp), ghi PC có giá trị 0000H, tức chươngtrình ln bắt đầu địa nhớ chương trình.Nội dung RAM chip khơng bị thay đổi thiết lập lại Thanh ghi Nội dung Hình 2: Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên Bộ đếm chương trình Thanh chứa A Thanh chứa B PSW SP DPTR Port – IP IE Các ghi định thời SCON SBUF PCON(HMOS) PCON(CMOS 0000H 00H 00H 00H 07H 0000H FFH xxx00000B 0xx00000B 00H 00H 00H 0xxxxxxxB 0xxx0000B Trạng thái ghi sau Reset Các chân XTAL1, XTAL2: -Các chân (chân 18, 19) nối với tạo dao động chip Mạch tạo dao động sau: Hình 3: Mạch tạo dao động -Tần số dao động thường 12MHz Khi tụ có giá trị 33pF Chân VCC nối đến +5V nguồn cấp, chân GND nối đất Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên 2.3 Bộ nhớ chip • RAM nội -Bộ vi điều khiển 8051 có 128 byte RAM bao gồm 32 byte (00H đến 1FH) dành cho ghi, 16 byte (20H đến 2FH) vùng RAM định địa theo bit, sau 80 byte RAM nháp - Vùng ghi có 32 byte, chia thành khối (bank đến bank 3), khối có ghi (từ R0 đến R7) - Ở vùng RAM định địa theo bit, bit dánh địa từ 00H đến 7FH Các ghi chuyên dụng (SFRs – Special Function Registers): - Các ghi có địa từ 80H đến FFH Chúng chứa nội dung ghi điều khiển -Sau số ghi chuyên dụng Thanh ghi Chốt cổng Port0 Chốt cổng Port1 Chốt cổng Port2 Chốt cổng Port3 Điều khiển Bộ định thời/Bộ đếm Điều khiển chế độ Bộ định thời/Bộ đếm Byte thấp Bộ định thời/Bộ đếm Byte cao Bộ định thời/Bộ đếm Byte thấp Bộ định thời/Bộ đếm Byte cao Bộ định thời/Bộ đếm Cho phép ngắt Điều khiển ưu tiên ngắt Từ trạng thái chương trình Thanh ghi tích lũy Thanh ghi B Mã gợi nhớ P0 P1 P2 P3 TCON TMOD TL0 TH0 TL1 TH1 IE IP PSW ACC A B Địa 80H 90H A0H B0H 88H 89H 8AH 8BH 8CH 8DH A8H B8H D0H E0H F0H Một số ghi chuyên dụng vi điều khiển 8051(89c51) ROM: - Bộ vi điều khiển AT89C51 có 4KB FLASH lập trình - ROM chiếm vùng địa thấp nhớ chương trình • Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên Điều khiển ngắt Bộ vi điều khiển 8051 có nguồn ngắt: TF0, TF1, INT0, INT1 ngắt cổng nối tiếp Sự điều khiển hoạt động ngắt cất ghi ghi cho phép ngắt IE (Interrupt Enable) ghi xác định thứ tự ưu tiên ngắt IP (Interrupt Priority) Các bit chức chúng ghi IE sau (thiết lập cho phép, xóa cấm): Bit Mã gợi nhớ EA -ET2 ES ET1 EX1 ET0 EX0 Chức Cho ngắt tồn cục Khơng dùng Cho phép ngắt định thời Cho phép ngắt cổng nói tiếp Cho phép ngắt đếm Cho phép ngắt từ bên Cho phép ngắt đếm Cho phép ngắt từ bên ngồi Các bit chức ghi IE Với ghi IP: Bit Mã gợi nhớ -6 -5 PT2 PS PT1 PX1 PT0 PX0 Chức Không dùng Không dùng Ưu tiên ngắt định thời Ưu tiên ngắt cổng nói tiếp Ưu tiên ngắt đếm Ưu tiên ngắt từ bên Ưu tiên ngắt đếm Ưu tiên ngắt từ bên Các bit chức chúng ghi IP Page Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên NGUYÊN LÝ HOẠT ĐỘNG 1.Nguyên lý hoạt động Các mạch hiển thị hoạt động nguyên tắc điều khiển bit vào/racủa cổng IC 89C51 Cụ thể sau: Vi điều khiển lập trình để điều khiển cơng việc chính: Chuyển mức đèn tín hiệu hai đường(Xanh,đỏ,vàng) Việc chuyển mức thực 10 bit truyền tín hiệu: Làn đường thứ nhất: Làn đường thứ hai: P0.0: đèn xanh ( 10s) P0.4 đèn xanh ( 10s) P0.1đèn vàng ( 2s) P0.5 đèn vàng ( 5s) P0.2đèn đỏ ( 15s) P0.6: đèn đỏ ( 12s) P1.0xanh ( 15s) P0.7 xanh ( 12s) P1.1đỏ ( 10s) P0.8 đỏ ( 15s) 2.Lưu đồ giải thuật Quay lại Bắt Đầu III Nạp giá trị ban đầu cho p2.0 p0.1 Cho đèn xanhA, đỏB,xanh A,đỏ B sáng Gọi chương trình delay Tắt đèn xanh A,Vàng Asáng Gọi chương trình delay Đèn vàng A,đỏB,xanhbộA,đỏ B tắt Đèn xanhB, đỏA,xanh B,đỏ A sáng Gọi chương trình delay Tắt đèn xanh B,Vàng B sáng Gọi chương trình delay Page ĐènVàng B, đỏA,xanh B,đỏ A tắt Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên SƠ ĐỒ NGUYÊN LÝ 4.SƠ ĐỒ MẠCH IN Page 10 Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tun CHƯƠNG TRÌNH ĐIỀU KHIỂN Chương trình điều khiển đèn giao thong viêt ngôn ngữ C / *======================================================== =================================================== CHUONG TRINH DEN GIAO THONG TAI NGA TU CO DI BO ========================================================= ===================================================*/ /***********************BO TIEN XU LI***********************/ #include //DINH KEM FILE THU VIEN #define bat //Dinh nghia gia tri bat den led #define tat //Dinh nghia gia tri tat den led /*************Khai bao bien****************************/ sbit led1 = P2^0;// Khai bao bien led1 kieu bit chan p2_0 sbit led2 = P2^1; //Khai bao bien led1 kieu bit chan p2_1 sbit led3 = P2^2;// Khai bao bien led1 kieu bit chan p2_2 sbit led4 = P2^3; //Khai bao bien led1 kieu bit chan p2_3 sbit led5 = P2^4; //Khai bao bien led1 kieu bit chan p2_4 Page 11 Báo cáo: ĐỒ ÁN GVHD: Nguyễn Lê Nhựt Tuyên sbit led6 = P2^5;// Khai bao bien led1 kieu bit chan p2_5 sbit led7 = P2^6;// Khai bao bien led1 kieu bit chan p2_6 sbit led8 = P2^7;// Khai bao bien led1 kieu bit chan p2_7 sbit led9 = P0^0;// Khai bao bien led1 kieu bit chan p0-0 sbit led10 = P0^1;// Khai bao bien led1 kieu bit chan p0_1 / **************************************************************** / /********************Khai bao ham******************/ /* -Ham tre */ void tre(long time) { long n;//Khai bao bien cuc bo for(n=0;n