Luận văn Tín hiệu đèn giao thông

Thiet ke va lap trinh mach den giao thong voi 3 den xanh vang do. - Dung Port 0 de dieu khien den xanh vang do - Dung Port 2 de hien thi thoi gian - Dung port 1 de noi voi cac phim nhan dung de dieu khien va chinh thoi gian cua den xanh, vang va do.

doc37 trang | Chia sẻ: lylyngoc | Lượt xem: 2457 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận văn Tín hiệu đèn giao thông, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Luận văn Đề tài: Tín Hiệu Đèn Giao Thơng LỜI NĨI ĐẦU Ngày nay, với sự phát triển ngày càng mạnh về lĩnh vực khoa học kỹ thuật cũng như tất cả các lĩnh vực khác. Đặc biệt ngành điện tử là một trong những ngành khoa học kỹ thuật đáp ứng rất tốt nhu cầu cuộc sống của con người. Trong ngành điện tử thì cĩ rất nhiều lĩnh vực chuyên mơn hĩa khác nhau, nhưng vi điều khiển là một trong những lĩnh vực đáp ứng rất tốt nhu cầu trên của con người. Vì nĩ là một vi mạch rất nhỏ nhưng giải quyết được rất nhiều vấn đề khĩ khăn, phức tạp. Chính vì vậy, hầu hết các thiết bị điện tử hiện nay đều sử dụng vi mạch điều khiển. Nĩi đến vi điều khiển thì phải nĩi đến 89XX. Đây là một trong những con vi xử lí được sử dụng khá rộng rãi và rất phổ biến trong đời sống hiện nay, giá thành lại vừa phải. Vì vậy, nĩ là một con vi điều khiển được sử dụng nhiều trong giảng dạy và học tập. NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN š­› & Tp.HCM, ngày … tháng … năm 2010 Ký tên NHẬN XÉT CỦA HỘI ĐỒNG CHẤM ĐỒ ÁN š­› & Tp.HCM, ngày … tháng … năm 2010 Ký tên MỤC LỤC Trang Lời nĩi đầu: 1 Lời cảm ơn: 2 Nhận xét của Giáo Viên Hướng Dẫn: 3 Nhận xét của hội đồng chấm đồ án: 4 Mục lục: 5 PHẦN I: VẤN ĐỀ ĐẶT RA: 7 PHẦN II: PHƯƠNG ÁN THIẾT KẾ: 9 Mơ tả hoạt động của hệ thống: 10 Phương án thiết kế: 10 Sơ đồ khối hệ thống: 11 PHẦN III. PHẦN THIẾT KẾ: 12 1. Khối vi điều khiển: 13 Sơ lược về vi điều khiển: 13 Sơ đồ bên trong của vi điều khiển: 14 Khảo sát, chức năng từng chân: 15 Nhĩm chân nguồn nuơi: 15 Chức năng của các chân tín hiệu: 15 Các chân tín hiệu điều khiển: 16 Bộ nhớ trên chip: 18 Các Bộ định thời/Bộ đếm: 19 Điều khiển ngắt: 20 2. Khối hiển thị: 20 2.1 LED 7 thanh dùng Anode chung: 20 2.2 LED đơn hiển thị Xanh, Váng, Đỏ: 21 2.3 Tính giá trị điện trở hạn dịng cho LED: 21 3. Khối nguồn: 21 PHẦN IV. THIẾT KẾ VÀ THI CƠNG MẠCH: 23 1. Sơ đồ nguyên lý tồn mạch: 24 2. Nguyên lý hoạt động: 26 3. Lưu đồ giải thuật: 27 4. Chương trình điều khiển: 29 5. Một số hình ảnh sau khi mơ phỏng trên protues: 35 6. Tài liệu tham khảo: ……………………………………………………….. .37 PHẦN I . VẤN ĐỀ ĐẶT RA Trong hệ thống giao thơng hiện nay ở nước ta, vấn đề về an tồn giao thơng và tránh ùn tắc tại các đơ thị và thành phố lớn là một trong những vấn đề hết sức cấp bách và được tồn xã hội quan tâm. Vì vậy các phương tiện hướng dẫn giao thơng đĩng vai trị rất quan trọng, nĩ gĩp phần hạn chế những xung đột xảy ra khi tham gia giao thơng. Tại các đơ thị thì hệ thống đèn điều khiển giao thơng là rất quan trọng. Hệ thống đèn điều khiển giao thơng khơng những cĩ tác dụng hạn chế những xung đột trong giao thơng thành phố mà cịn là cơng cụ điều khiển các luồng giao thơng nhằm hạn chế ùn tắc - một vấn đề nan giải tại các thành phố lớn. Vì lí do trên, chúng em quyết định chọn đề tài “Thiết kế hệ thống đèn điều khiển đèn giao thơng” cho đồ án mơn học: PHẦN II . PHƯƠNG ÁN THIẾT KẾ Mơ tả hoạt động của hệ thống: Mật độ giao thơng phát triển mạnh mẽ ở các đơ thị lớn địi hỏi hệ thống điều khiển giao thơng phải chính xác, linh hoạt, đơn giản nhưng hiệu quả cao. Hệ thống đèn giao thơng phần nào đã đáp ứng được những yêu cầu trên. Mỗi cột gồm các đèn: Xanh - Đỏ - Vàng điều khiển các phương tiện đang tham gia giao thơng. Hoạt động của từng pha ở chế độ điều khiển tự động như sau: Đèn xanh: Hướng đi ứng với pha này được phép đi. Đèn vàng: Thơng báo cho các phương tiện ứng với pha này giảm tốc độ, chuẩn bị dừng lại. Đèn đỏ: Các phương tiện dừng lại. 2. Phương án thiết kế: Hiện nay việc sử dụng các mạch số kết kợp với chíp vi điều khiển trong các hệ thống điều khiển tự động đã trở nên rất phổ biến vì những ưu việt của nĩ như: độ chính xác cao, khả năng lập trình được, tốc độ điều khiển nhanh, sử dụng đơn giản,… Mặt khác kỹ thuật số, vi xử lý, vi điều khiển là lĩnh vực đang phát triển mạnh mẽ và cĩ ứng dụng trong rất nhiều ngành sản xuất. Vì vậy, ta sẽ thiết kế một hệ thống điều khiển giao thơng đơn giản, chỉ sử dụng bộ vi điều khiển. Tất cả các tín hiệu điều khiển đều được đưa đến khối hiển thị trực tiếp từ các cổng của bộ vi điều khiển. Phương án này cĩ đặc điểm là mạch gọn nhẹ, khơng quá phức tạp, cách thức bố trí linh kiện dễ dàng, lập trình đơn giản, dễ chỉnh sửa. 3. Sơ đồ khối hệ thống: KHỐI VI ĐIỀU KHIỂN TRUNG TÂM AT89C51 KHỐI HIỂN THỊ THỜI GIAN KHỐI ĐÈN LED ĐƠN KHỐI NÚT NHẤN NGUỒN Hình 1: Sơ đồ khối hệ thống Đèn Giao Thơng PHẦN III. PHẦN THIẾT KẾ 1. Khối vi điều khiển: 1.1. Sơ lược về vi điều khiển: Vi điều khiển AT89C51 là một vi điều khiển thuộc họ 8051, loại CMOS,cĩ tốc độ cao và cơng suất thấp với bộ nhớ Flash cĩ thể lập trình được. Nĩ được sản xuất với cơng nghệ bộ nhớ khơng bay hơi mật độ cao của hãng Atmel. AT89C51 cĩ 40 chân, được đĩng gĩi theo tiêu chuẩn PDIP. Hình 2:Sơ đồ chân ra của vi điều khiển AT89C51. 1.2. Sơ đồ bên trong của vi điều khiển:P0 RST PSENAE\ ALE P1 P2 P3 TXD RXD Tạo Dao Động AE\ Điều khiển BUS Các Port I/0 Port nối Tiếp CPU Điều khiển ngắt Các thanh ghi khác 128 Byte RAM ROM 4k - 8051 Timer 0 Timer 1 INT*\1 INT*\0 TIMER 1 TIMER 0 PORT Nối tiếp T0* T1* Hình 3: Sơ đồ bên trong vi điều khiển. - Các đặc điểm tiêu chuẩn (của họ vi điều khiển 8051): + 4KB Flash ROM. + 128 byte RAM. + 4 cổng vào/ra song song 8 bit. + 2 bộ định thời/đếm 16 bit. + Kiến trúc 5 vectơ ngắt 2 mức (five vector two-level interruptarchitecture). + 1 cổng nối tiếp song cơng (full-duplex). + Mạch tạo dao động trên chip và mạch đồng hồ. - AT89C51 được thiết kế với logic tĩnh cho hoạt động cĩ tần số giảm xuống 0 và hỗ trợ hai chế độ tiết kiệm năng lượng được lựa chọn bằng phần mềm. Chế độ nghỉ dừng CPU trong khi vẫn cho phép RAM, các bộ định thời/đếm, cổng nối tiếp và hệ thống ngắt tiếp tục hoạt động. Chế độ nguồn giảm duy trì nội dung của RAM nhưng khơng cho mạch dao động cung cấp xung clock nhằm vơ hiệu hĩa các hoạt động khác của chip cho đến khi cĩ reset cứng tiếp theo. 1.3. Khảo sát, chức năng từng chân: 1.3.1. Nhóm chân nguờn nuơi: - nguờn nuơi +5V (chân sớ 40). - nới đất (chân sớ 20). 1.3.2. Chức năng của các chân tín hiệu:(Các cổng vào/ra song song) - 8051 cĩ 4 cổng vào/ra song song 8 bit là Port0, Port1, Port2, Port3. - Các cổng này cĩ thể sử dụng như là cổng vào hoặc cổng ra. Cổng Port 0 (các chân 32÷39): Là cổng vào/ra song song cĩ haichức năng. Trong các thiết kế cỡ nhỏ khơng dùng bộ nhớ mở rộng, nĩ cĩ chức năng như các đường vào/ra. Trong các thiết kế cỡ lớn cĩ bộ nhớ mở rộng nĩ trở thành bus địa chỉ và bus dữ liệu đa hợp. Cổng Port 1 (các chân 1÷8): Là cổng vào/ra song song. Các chân được ký hiệu P1.0, P1.1, P1.2, …cĩ thể dùng cho giao tiếp với các thiết bị ngồi nếu cần. Cổng Port1 khơng cĩ các chức năng khác, vì vậy chúng chỉ được dùng cho giao tiếp với các thiết bị ngoại vi. Cổng Port 2 (các chân 21÷28): Là một cổng vào/ra song song cĩ tác dụng kép, được dùng như các đường xuất nhập hoặc là byte của bus địa chỉ 16 bit đối với các thiết bị dùng bộ nhớ mở rộng. Cổng Port 3 (các chân 10÷17): Là cổng vào/ra song song cĩ tác dụng kép. Khi khơng hoạt động xuất nhập các chân của cổng này cĩ nhiều chức năng riêng. Bit Tên Chức năng P3.0 RXD Dữ liệu nhận cho Port nối tiếp P3.1 TXD Dữ liệu phát cho Port nối tiếp P3.2 /INT0 Ngắt ngồi 0 P3.3 /INT1 Ngắt ngồi 1 P3.4 T0 Ngõ vào Timer/Counter 0 P3.5 T1 Ngõ vào Timer/Counter 1 P3.6 /WR Xung ghi bộ nhớ dữ liệu ngồi P3.7 /RD Xung ghi đọc nhớ dữ liệu ngồi 1.3.3. Các chân tín hiệu điều khiển: - Chân cho phép bộ nhớ chương trình PSEN (Program Storage Enable): Tín hiệu PSEN là tín hiệu ra ở chân 29 cĩ tác dụng kép.Cho phép đọc bộ nhớ chương trình ngồi, thường được nối đến chân OE (Output Enable) của EPROM cho phép đọc các byte mã lệnh. Tín hiệu PSEN ở logic 0 trong thời gian vi điều khiển tìm nạp lệnh. Các mã lệnh được đọc từ EPROM qua bus dữ liệu và được chốt vào thanh ghi lệnh IR của vi điều khiển để giải mã.Khi vi điều khiển thi hành chương trình trong ROM nội PSEN sẽ ở mức logic1.Chân cho phép chốt địa chỉ ALE/PROG (Address Latch Enable): - Chân tín hiệu ALE (chân 30) đưa ra xung điều khiển cho phépchốt byte thấp của địa chỉ khi vi điều khiển truy xuất bộ nhớ ngồi.Chân này cũng là đầu vào của xung lập trình khi lập trình cho FLASH, khi đĩ chân tín hiệu ở mức 0. Khi hoạt động bình thường, tín hiệu ALE được phát ra với tần số khơng đổi bằng 1/6 tần số của bộ tạo dao động trên chip, và cĩ thể sử dụng cho mục đích định thời. Tuy nhiên, sẽ cĩ một xung ALE bị bỏ qua mỗi khi vi điều khiển truy xuất bộ nhớ ngồi. - Chân tín hiệu truy xuất ngồi EA (External Access): Tín hiệu vàoEA (chân 31) được nối với 5V (mức logic 1) hoặcvới GND (mức 0). Nếu ở mức 1, vi điều khiển thi hành chươngtrình từ ROM nội. Nếu ở mức 0, vi điều khiển sẽ thi hành chươngtrình ở bộ nhớ mở rộng. Chân EA được lấy làm chân cấp nguồn 12V khi lập trình choFLASH trong vi điều khiển.Chân thiết lập lại RST (Reset): - Chân RST (chân 9) là đường vào xĩa chính của vi điều khiển dùng để thiết lập lại hệ thống. Khi chân tín hiệu này đưa lên mức cao ít nhất là 2 chu kì máy, các thanh ghi bên trong được nạp những giá trị thích hợp để khởi động hệ thống. RST cĩ thể được kích khi cấp điện dùng một mạch R-C. Mạch này như sau: Hình 4: Mạch thiết lập lại cho 8051 - Các chân XTAL1, XTAL2: Các chân này (chân 18, 19) nối với bộ tạo dao động trên chip.Mạch tạo dao động như sau: Hình 5: Mạch tạo dao động cho bộ tạo dao động trên chip của AT89C51 Tần số của dao động thường là 12MHz. Khi đĩ tụ cĩ giá trị 33pF.Chân VCC nối đến +5V của nguồn cấp, chân GND nối đất. 1.4. Bộ nhớ trên chip: RAM trong: - Bộ vi điều khiển 8051 cĩ 128 byte RAM trong bao gồm 32 byte đầu tiên (00H đến 1FH) dành cho các thanh ghi, 16 byte tiếp theo (20H đến 2FH) là vùng RAM định địa chỉ theo bit, sau đĩ là 80 byte RAM nháp. -Vùng thanh ghi cĩ 32 byte, chia thành 4 khối (bank 0 đến bank 3),mỗi khối cĩ 8 thanh ghi (từ R0 đến R7). - Ở vùng RAM định địa chỉ theo bit, các bit được đánh địa chỉ từ 00H đến 7FH. - Các thanh ghi chuyên dụng (SFRs – Special Function Registers): - Các thanh ghi này cĩ địa chỉ từ 80H đến FFH. Chúng chứa nộidung của các thanh ghi điều khiển. ROM: - Bộ vi điều khiển AT89C51 cĩ 4KB FLASH lập trình được. - ROM luơn chiếm vùng địa chỉ thấp nhất trong bộ nhớ chương trình. 1.5. Các Bộ định thời/Bộ đếm: - Bộ vi điều khiển 8051 cĩ 2 Bộ định thời/Bộ đếm là Bộ định thời/Bộ đếm 0 và Bộ định thời/Bộ đếm 1. Chúng cĩ thể hoạt động như là bộ định thời hoặc bộ đếm. - Chế độ hoạt động của các Bộ định thời/Bộ đếm được cất trong thanh ghi TMOD: - Nếu bit GATE xĩa, các Bộ định thời/Bộ đếm được phép hoạt đơng khi bit TR# tương ứng trong thanh ghi TCON thiết lập. Ngược lại,nếu GATE thiết lập thì các Bộ định thời/Bộ đếm chỉ hoạt động khicác chân INT# tương ứng tích cực (mức thấp). - Bit C/T# dùng để lựa chọn chế độ hoạt động bộ đếm hay bộ địnhthời. Nếu được thiết lập thì nĩ hoạt đơng theo chế độ đếm sự kiện,lúc này nguồn xung cho bộ đếm là xung ngồi đưa vào từ chân T# tương ứng (chân 14, 15). Nếu bị xĩa, thì nĩ hoạt động theo chế độ định thời với nguồn xung là xung tạo ra từ bộ tạo dao đơng trên chip sau khi chia 12. - Các bit M0, M1 dùng để xác dịnh chế độ đếm cho các bộ đếm: Sự hoạt động của các Bộ định thời/Bộ đếm được điều khiển bởi thanh ghi TCON: - Các bit TR# cho phép Bộ định thời/Bộ đếm hoạt động (nếu được thiết lập) hoặc khơng cho phép chúng hoạt động (nếu bị xĩa). - Các bit TF# là các cờ tràn tương ứng với các Bộ định thời/Bộ đếm. Chúng được thiết lập khi xảy ra tràn và được xĩa bằng phần cứng nếu khi đĩ bộ xử lý rẽ nhánh đến chương trình phục vụ ngắt tương ứng. - Các bit IT# là các bit ngắt. Thiết lập IT# tạo ra chế độ ngắt cạnh, chân INT# nhận ra một ngắt khi nhận ra cĩ một sườn âm (↓) của tín hiệu vào. Xĩa IT# tạo ra chế độ ngắt mức, tức là ngắt được tạo ra khi tín hiệu vào ở mức thấp (0). Ở chế độ ngắt mức, khi tín hiệu vào cịn ở mức thấp thì ngắt được tạo ra liên tục cho đến khi tínhiệu vào chuyển lên mức cao hoặc thiết lập IT#. - Các bit IE# là các cờ ngắt cạnh, được thiết lập khi dị thấy ngắt cạnh. 1.6. Điều khiển ngắt: Bộ vi điều khiển 8051 cĩ 5 nguồn ngắt: TF0, TF1, INT0, INT1 và ngắt do cổng nối tiếp. Sự điều khiển hoạt động ngắt được cất trong 2 thanh ghi là thanh ghi cho phép ngắt IE (Interrupt Enable) và thanh ghi xác định thứ ự ưu tiên ngắt IP (Interrupt Priority).Các bit và chức năng của chúng trong thanh ghi IE như sau (thiết lập là cho phép, xĩa là cấm): 2. Khối hiển thị: - Khối hiển thị cĩ chức năng đưa ra thơng tin điều khiển giao thơng tương ứng với trạng thái hiện thời của hệ thống. Khối này gồm 2 phần: đèn điều khiển. và đồng hồ hiển thị thời gian. - Đèn điều khiển bao gồm: Đèn dành cho các phương tiện tham gia giao thơng: xanh, đỏ, vàng. Đồng hồ dùng các LED 7 thanh để tạo thành các bộ hiển thị từ 00 đến 99. Ở đây ta dùng loại anode chung), cấu trúc của nĩ như sau: 2.1. Led 7 thanh dung Anode chung: - Sơ đồ chân: Hình 6: Cấu trúc bên trong của LED 7 thanh Anode chung - Bảng hiển thị: - Vì led 7 đoạn bên trong nĩ cĩ 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. Do kết nối với nguồn 5V nên ta dung điện trở hạn dịng 330omh trước các chân tín hiệu điều khiển. - Các chân đều dùng điện trở để hạn dịng cho 7seg để đề phịng cháy. Bình thường LED hoạt động ở mức 1,8 – 3V dịng từ 10 – 20mA thì nĩ sẽ cho sáng đẹp và mạnh. - Mạch này chúng em dùng phương pháp quét: Tối thiểu là các LED hiển thị phải sáng 24 lần/giây (tiêu chuẩn của điện ảnh). Thực tế người ta thường làm cao hơn một chút, cĩ thể đến 60, 70 lần/giây. Hiển thị LED bằng phương pháp quét là phương pháp hiển thị mà tại mỗi thời điểm dữ liệu được truyền đến tất cả các LED nhưng chỉ cĩ một LED được cho phép hiển thị dữ liệu đĩ. 2.2. LED đơn hiển thị Xanh, Vàng, Đỏ: 2.3. Tính giá trị điện trở hạn dịng cho LED: Dòng qua mỗi nhánh của led khoảng 10 - 20mA Sụt áp trên mỗi nhánh của led khoảng 1,8V ¸ 3V Giá trị điện trở R nhỏ nhất: (5V – 3V)/20mA = 0.1KW = 100W Giá trị điện trở R lớn nhất: (5V – 1.8V)/10mA = 0.32KW = 320W Chọn R hạn dịng từ 100 - 320W cũng được. 3. Khối nguồn: Mạch điện gồm những phần sau : Hạ áp, chỉnh lưu, lọc, biến đổi (7805). Nguồn điện xoạy chiều 220VAC-50Hz qua biến áp là hạ áp xuống cịn 24VAC - 1A và được qua bộ chỉnh lưu nhằm biến đổi xoay chiều thành 1 chiều. Thành phần 1 chiều này cĩ độ gợn nên phải qua bộ lọc C để san phẳng điện áp gợn đĩ cho ra điện áp 1 chiều. Sau đĩ điện áp 1 chiều này qua bộ ổn áp 7805 cho ra điện áp ổn áp 5V ổn định bởi con IC LM7805 để cung cấp cho tồn mạch. Hình 7: Hình dáng IC ổn áp 7805 Hình 8: Sơ đồ nguyên lý mạch nguồn. PHẦN IV. THIẾT KẾ VÀ THI CƠNG MẠCH 1. Sơ đồ nguyên lý tồn mạch: 2.Nguyên lý hoạt động: Cấp nguồn từ 9 – 12V qua mạch nguồn ổn áp cịn 5VDC ổn định cấp cho tồn mạch hoạt động. Các mạch hiển thị hoạt động trên nguyên tắc điều khiển bit vào/ra của các cổng trên IC 89C51. Chương trình được nạp vào IC này và cụ thể như sau: Vi điều khiển được lập trình để điều khiển 2 cơng việc chính: Chuyển mức của các đèn tín hiệu trên hai làn đường (Xanh, Đỏ, Vàng) Việc chuyển mức này sẽ được thực hiện bằng 6 bit truyền tín hiệu: Làn đường thứ nhất và làn đường thứ hai sẽ dùng P0.0 – P0.7 để hiển thị đèn Xanh, Vàng, Đỏ. Các đèn hiển thị là các LED 7 thanh nối chung nhau anốt. Đèn sáng sẽ tương ứng với mức logic thấp. Giữa các lần hiển thị sẽ kết hợp đèn của hai làn đường. Đèn xanh ở làn 1 thì tương ứng sẽ là đèn đỏ ở làn 2 và ngược lại. Và chuyển mức giữa các đèn sẽ xen kẽ những bộ đếm, kết thúc mỗi bộ đếm sẽ tương ứng thiết lập lại các bit để hiển thị các trạng thái đèn tiếp theo. Việc tạo ra số thập phân được thực hiện bằng cách ghi dãy số Hexa 21 giảm dần vào vị trí ROM nội.(Lúc này ta sử dụng chân số 31(EA/VPP) và cho nĩ mức điện áp cao(mức 1) để đọc dữ liệu từ Rom nội). Các trạng thái đèn hiển thị được điều khiển thơng qua khối nút nhấn. 3. Lưu đồ giải thuật: Begin Khởi tạo Biến mode = 0 Đọc thời gian xanh và thời gian vàng lưu vào 2 biến tgx, tgv Tg1: = tgx Tg2: = tgx + tgv X1 sáng, Đ2 sáng Giải mã Hiển thị Mode =0 Mode1 =0 Chỉnh tgx, tgv Đ SA Tg = 1s 1 Tg1:= tg1 – 1 Tg2:= tg2 - 1 Tg1 = 0 2 SA SA SA SA Đ 2 Chỉnh giờ, phút 3 Chỉnh giờ, phút Đ 1 2 Tg1 = 0 X1 tắt, v1 sáng Tg1:= tgv SA Đ Đ Đ sáng, x2 sáng Giải mã Hiển thị Mode = 0 Mode1 = 0 T =1s Tg:= tg1 -1 Tg:= tg2 -1 Chỉnh tgx, tgv Đ SA SA Đ Tg1:= tgx + tgv Tg2:= tgx Tg2 =0 T1 =0 end V2 sáng, Đ1 sáng Tg2:= tgV SA Đ SA SA 3 4. Chương trình điều khiển: ;Thiet ke va lap trinh mach den giao thong voi 3 den xanh vang do. ; - Dung Port 0 de dieu khien den xanh vang do ; - Dung Port 2 de hien thi thoi gian ; - Dung port 1 de noi voi cac phim nhan dung de dieu khien va ;chinh thoi gian cua den xanh, vang va do. ;*************************************************************** X1 BIT P0.0 ; Cột 1 V1 BIT P0.1 ; Cơt 1 D1 BIT P0.2 ; Cơt 1 X2 BIT P0.3 ; Cơt 2 V2 BIT P0.4 ; Cơt 2 D2 BIT P0.5 ; Cơt 2 MODE BIT P3.2 ; Nút nhấn ;*************************************************************** BO_DEM1 EQU 31H BO_DEM2 EQU 32H BO_DEM3 EQU 33H BO_DEM4 EQU 34H ;*************************************************************** LED1 EQU 41H LED2 EQU 42H LED3 EQU 43H LED4 EQU 44H ;*************************************************************** ORG 0000H MOV SP,#60H MOV BO_DEM1,#0 MOV BO_DEM2,#0 MOV BO_DEM3,#0 MOV BO_DEM4,#0 MAIN: CALL DEM_LEN CALL DEM_XUONG CALL BCD_7DOAN CALL HIEN_THI JMP MAIN ;*************************************************************** DEM_XUONG: JB P1.1,THOAT_DEM_XUONG MOV A,BO_DEM1 CJNE A,#0,DEC_BO_DEM1 MOV BO_DEM1,#9 JMP SS1 DEC_BO_DEM1: DEC BO_DEM1 JMP THOAT_DEM SS1: MOV A,BO_DEM2 CJNE A,#0,DEC_BO_DEM2 MOV BO_DEM2,#9 JMP SS2 DEC_BO_DEM2: DEC BO_DEM2 JMP THOAT_DEM SS2: MOV A,BO_DEM3 CJNE A,#0,DEC_BO_DEM3 MOV BO_DEM3,#9 JMP SS3 DEC_BO_DEM3: DEC BO_DEM3 JMP THOAT_DEM SS3: MOV A,BO_DEM4 CJNE A,#0,DEC_BO_DEM4 MOV BO_DEM4,#9 JMP THOAT_DEM DEC_BO_DEM4: DEC BO_DEM4 JMP THOAT_DEM THOAT_DEM: CALL BCD_7DOAN CALL HIEN_THI THOAT_DEM_XUONG: RET ;*************************************************************** DEM_LEN: JB P1.0,THOAT_DEM_LEN INC BO_DEM1 MOV A,BO_DEM1 CJNE A,#10,THOAT MOV BO_DEM1,#0 INC BO_DEM2 MOV A,BO_DEM2 CJNE A,#10,THOAT MOV BO_DEM2,#0 INC BO_DEM3 MOV A,BO_DEM3 CJNE A,#10,THOAT MOV BO_DEM3,#0 INC BO_DEM4 MOV A,BO_DEM4 CJNE A,#10,THOAT MOV BO_DEM4,#0 THOAT: CALL BCD_7DOAN CALL HIEN_THI THOAT_DEM_LEN: RET ;*************************************************************** DELAY: MOV R6,#0 DJNZ R6,$ RET ;************************************************************ BCD_7DOAN: MOV DPTR,#MA_LED MOV A,BO_DEM1 MOVC A,@A+DPTR MOV LED1,A MOV A,BO_DEM2 MOVC A,@A+DPTR MOV LED2,A MOV A,BO_DEM3 MOVC A,@A+DPTR MOV LED3,A MOV A,BO_DEM4 MOVC A,@A+DPTR MOV LED4,A RET HIEN_THI: MOV R7,#50 LAP: MOV P2,#0FFH MOV P2,LED1 CLR P3.0 SETB P3.2 SETB P3.1 SETB P3.3 CALL DELAY MOV P2,#0FFH MOV P2,LED2 CLR P3.1 SETB P3.0 SETB P3.2 SETB P3.3 CALL DELAY MOV P2,#0FFH MOV P2,LED3 CLR P3.2 SETB P3.0 SETB P3.1 SETB P3.3 CALL DELAY MOV P2,#0FFH MOV P2,LED4 CLR P3.3 SETB P3.2 SETB P3.1 SETB P3.0 CALL DELAY DJNZ R7,LAP RET ;************************************************************ MA_LED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END 5. Một số hình ảnh sau khi mơ phỏng trên protues: 6. Tài liệu tham khảo: - Internet. - Tài liệu Vi xử lý 8051. - HẾT -

Các file đính kèm theo tài liệu này:

  • docbao_cao_do_an_giao_thong_1__7456.doc