TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ VIỄN THÔNG BÁO CÁO BÀI TẬP LỚN KỸ THUẬT VI XỬ LÝ Đề tài THIẾT KẾ ĐÈN GIAO THÔNG Nhóm sinh viên thực hiện Đồng Văn Duy 20182461 Nguyễn Thành Đạt 20182416 Phạm Quốc Khánh 20182604 Giảng viên hướng dẫn TS Nguyễn Huy Hoàng Hà Nội, 2 2022 LỜI NÓI ĐẦU Trong thời đại ngày nay khi nhân loại đang trải qua những bước tiến vượt bậc về khoa học công nghệ, thì ngành điện tử cũng có những bước tiến quan trọng đặc biệt là trong lĩnh vực vi điều khiển Các bộ vi xử lý.
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG BÁO CÁO BÀI TẬP LỚN KỸ THUẬT VI XỬ LÝ Đề tài THIẾT KẾ ĐÈN GIAO THÔNG Nhóm sinh viên thực hiện: Giảng viên hướng dẫn Đồng Văn Duy 20182461 Nguyễn Thành Đạt 20182416 Phạm Quốc Khánh 20182604 TS Nguyễn Huy Hồng Hà Nội, 2-2022 LỜI NĨI ĐẦU Trong thời đại ngày nhân loại trải qua bước tiến vượt bậc khoa học cơng nghệ, ngành điện tử có bước tiến quan trọng đặc biệt lĩnh vực vi điều khiển Các vi xử lý ngày phát triển hoàn thiện hơn, sử dụng hầu hết hệ thống điều khiển tự động công nghiệp, khoa học kĩ thuật, thiết bị dân dụng Chính nhờ vai trị, chức vi xử lý đem lại nhiều ưu điểm, nhiều tính đặc biệt cho hệ thống điều khiển thay người cơng việc địi hỏi phức tạp yêu cầu kỹ thuật cao Áp dụng tính đặc biệt vi xử lý vào thực tiễn để học tập, tìm hiểu, nhóm sinh viên chúng em gồm thành viên: Đồng Văn Duy Nguyễn Thành Đạt Phạm Quốc Khánh Dưới hướng dẫn nhiệt tình thầy Nguyễn Huy Hồng, nhóm chúng em tiến hành nghiên cứu hồn thành tập lớn với đề tài: Thiết Kế Mạch Đèn Giao Thông Sử Dụng Vi Điều Khiển 8051 Trong hệ thống nhóm em sử dụng AT89C51 IC Ngồi việc sử dụng AT89C51 chúng em cịn sử dụng số linh kiện phụ trợ khác Chúng em chân thành cảm ơn thầy nhiệt tình giúp đỡ nhóm em thời gian hoàn thành tập lớn MỤC LỤC DANH MỤC HÌNH VẼ iii DANH MỤC BẢNG BIỂU iv CHƯƠNG TỔNG QUAN VỀ ĐỀ TÀI 1.1 Thành phần hệ thống đèn giao thông dung vi điều khiển 8051 1.2 Nguyên lý hoạt động 1.3 Công cụ để thực lập trình mơ CHƯƠNG KHẢO SÁT VI ĐIỀU KHIỂN AT89C51 2.1 Giới thiệu 2.2 Chi tiết chân AT89C51 2.2.1 Vcc 2.2.2 GND 2.2.3 Các Port 2.2.4 PSEN 2.2.5 ALE/PROG 2.2.6 EA/Vpp 2.2.7 RESET (RST) 2.2.8 XTAL1 & XTAL2 2.3 Tổ chức nhớ 2.3.1 Vùng RAM đa mục đích 2.3.2 Vùng RAM định địa bit 2.3.3 Các dãy ghi 2.4 Bộ nhớ 2.4.1 Truy xuất nhớ chương trình ngồi 2.4.2 Truy xuất nhớ liệu 2.4.3 Giải mã địa 2.5 Giao tiếp ngoại vi 2.5.1 Led i 2.6 Thanh ghi điều khiển định thời/bộ đếm TCON ( Timer/Counter Control Register) 2.7 Thanh ghi TMOD( Timer/Counter Mode Control Register) 2.8 Hệ ghi phục vụ định thời 10 CHƯƠNG PHÂN TÍCH THIẾT KẾ HỆ THỐNG ĐÈN GIAO THƠNG 13 3.1 Sơ đồ khối 13 3.2 Thiết kế phần cứng 13 3.2.1 Mạch dao động Reset 13 3.2.2 Mạch hiển thị đếm ngược LED đoạn 15 3.2.3 Mạch hiển thị LED đơn 16 3.2.4 Sơ đồ nguyên lý 17 3.3 Xây dựng, thiết kế chương trình 17 3.3.1 Lưu đồ thuật toán 17 3.3.2 Chương trình Assembly cho 89C51 19 CHƯƠNG KẾT LUẬN 23 TÀI LIỆU THAM KHẢO 24 ii DANH MỤC HÌNH VẼ Hình 1.1 Sơ đồ khối hệ thống Hình 2.1 AT89C51 Microchip Hình 2.2 Sơ đồ chân AT89C51 .3 Hình 2.3 Cấu trúc nhớ RAM bên AT89C1 Hình 2.4 Dạng led anode chung Hình 3.1 Sơ đồ khối hệ thống 13 Hình 3.2 Sơ đồ nguyên lý mạch dao động reset 13 Hình 3.3 Sơ đồ nguyên lý hệ thống 17 Hình 3.4 Lưu đồ thuật tốn chương trình .18 iii DANH MỤC BẢNG BIỂU Bảng 2-1 Chức chân port Bảng 2-2 Bảng mã cho led anode chung Bảng 2-3 Tóm tắt ghi IP 11 Bảng 2-4 Tóm tắt ghi IE 12 Bảng 3-1 Trạng thái ghi reset 15 iv CHƯƠNG TỔNG QUAN VỀ ĐỀ TÀI Yêu cầu hệ thống chạy, đèn xanh, vàng đỏ sáng thời gian mặc định tương ứng 30s, 5s 25s 1.1 Thành phần hệ thống đèn giao thông dung vi điều khiển 8051 Hệ thống đèn giao thông gồm phần chủ yếu sau: − Mạch điều khiển trung tâm dùng vi điều khiển AT89C51 − Mạch dao động, reset − Mạch hiển thị thời gian, trạng thái đèn 1.2 Nguyên lý hoạt động Mạch đèn giao thơng hoạt động dựa nội dung lập trình cho AT89C51, có tác động từ nút điều khiển mạch hoạt động theo thời gian yêu cầu AT89C51 đưa liệu đến LED xanh, đỏ, vàng để điều khiển LED đóng, mở Ngồi ra, cịn xuất liệu đến BJT để điều khiển LED đoạn LED đoạn nhận liệu từ vi điều khiển trung tâm để thực việc đếm lùi thời gian Như mạch bắt đầu thực đếm lùi, trục lộ bên đèn xanh vàng sáng trục lộ bên đèn đỏ sáng ngược lại AT89C51 xuất cổng I/O xung mức cao mức thấp để điều khiển BJT từ điều khiển đèn hiển thị Hình 1.1 Sơ đồ khối hệ thống 1.3 Công cụ để thực lập trình mơ Sử dụng ngơn ngữ lập trình Assembly phần mềm Keil C Sử dụng Proteus 8.8 để mô hệ thống CHƯƠNG KHẢO SÁT VI ĐIỀU KHIỂN AT89C51 2.1 Giới thiệu Hình 2.1 AT89C51 Microchip AT89C51 hệ vi tính bit đơn chip CMOS có hiệu suất cao, cơng suất nguồn tiêu thụ thấp có 4KB nhớ ROM Flash xóa được/lập trình Chip sản xuất dựa vào công nghệ nhớ không nội dung có độ tích hợp cao Atmel Chip AT89C51 tương thích với tập lệnh chân chuẩn công nghiệp MCS-51 Flash chip cho phép nhớ chương trình lập trình lại hệ thống Kết hợp CPU linh hoạt bit với Flash chip đơn thể, Atmel 89C51 hệ vi tính bit đơn chip mạnh cho ta giải pháp có hiệu chi phí linh hoạt ứng dụng điều khiển AT89C51 có đặc trưng chuẩn sau: 4KN Flash, 128 byte RAM, 32 đường xuất nhập, định thời/đếm 16 bit, cấu trúc ngắt hai mức ưu tiên nguyên nhân ngắt, port nối tiếp song công, mạch dao động tạo xung clock chip Ngoài AT89C51 thiết kế với logic tĩnh cho hoạt động có tần số giảm xuống hỗ trợ hai chế độ tiết kiệm lượng lựa chọn phần mềm Chế độ nghỉ dừng CPU cho phép RAM, định thời/đếm, port nối tiếp hệ thống ngắt tiếp tục hoạt động Cấu hình chân AT89C51: Hình 2.2 Sơ đồ chân AT89C51 AT89C51 có tất 40 chân Mỗi chân có chức đường I/O (xuất/nhập), 24 chân có cơng dụng kép: đường hoạt động đường I/O đường điều khiển thành phần bus địa bus liệu 2.2 Chi tiết chân AT89C51 Như ta thấy hình 2.2, 32 số 40 chân 89C51 có cơng dụng xuất/nhập, nhiên 24 32 đường có mục đích (cơng dụng) Mỗi đường hoạt động xuất/nhập hoạt động đường điều khiển hoạt động đường địa chỉ/dữ liệu bus địa chỉ/dữ liệu đa hợp 32 chân nêu hình thành port bit Với thiết kế yêu cầu mức tối thiểu nhớ thành phần bên ngồi khác, ta sử dụng port làm nhiệm vụ xuất/nhập đường cho port xử lý đơn vị giao tiếp với thiết bị song song máy in, biến đổi D-A, v.v… đường hoạt động độc lập giao tiếp với thiết bị đơn bit chuyển mạch, LED, BJT, động cơ, loa, v.v… 2.2.1 Vcc Chân cung cấp điện (5V) 2.2.2 GND Chân nối đất (0V) 2.2.3 Các Port 2.2.3.1 Port Port (các chân từ 32 đến 39 89C51) có hai cơng dụng Trong thiết kế có tối thiểu thành phần, port sử dụng làm nhiệm vụ xuất/nhập Trong thiết kế lớn có nhớ ngoài, port trở thành bus địa bus liệu đa hợp 2.2.3.2 Port Port có cơng dụng xuất/nhập (các chân từ đến 89C51) Các chân port ký hiệu P1.0, P1.1, … , P1.7 dùng để giao tiếp với thiết bị bên có u cầu Khơng có chức khác gán cho chân port 1, nghĩa chúng sử dụng để giao tiếp với thiết bị ngoại vi 2.2.3.3 Port Port (các chân từ 21 đến 28 89C51) có hai cơng dụng, làm nhiệm vụ xuất/nhập byte địa 16 bit cho thiết kế có nhớ chương trình ngồi thiết kế có nhiều 256 byte nhớ liệu 2.2.3.4 Port Port (các chân từ 10 đến 17 89C51) có hai công dụng Khi không hoạt động xuất/nhập, chân port có nhiều chức riêng (mỗi chân có chức riêng liên quan đến đặc trưng cụ thể 89C51) Chân Port Chức P3.0 RxD( ngõ vào port nối tiếp P3.1 TxD( ngõ port nối tiếp) P3.2 INT0( ngõ vào ngắt 0) P3.3 INT( ngõ vào ngắt 1) P3.4 T0(ngõ vào bên định thời 0) P3.5 T1( ngõ vào bên định thời 1) P3.6 WR( điều khiển ghi nhớ liệu ngoài) P3.7 RD( điều khiển đọc nhớ liệu ngoài) Bảng 2-1 Chức chân port 2.8 Hệ ghi phục vụ định thời Hệ ghi gồm ghi cho phép lập trình viên nạp giá trị cho định thời Thực tế ghi 16 bit cắt đơi thành ghi bit Trong phục vụ cho Timer phục vụ cho Timer Bộ Timer có hai ghi TH0 TL0, hai ghi không định địa bit Thanh ghi bit TH0 Thanh ghi bit TL0 Địa chỉ: 8CH Địa chỉ: 8AH Bộ Timer có hai ghi TH1 TL1, hai ghi không định địa bit Thanh ghi bit TH1 Thanh ghi bit TL1 Địa 8DH Địa 8BH Thanh ghi TIMER Vi Điều Khiển 89C51 có timer 16 bit, timer có bốn cách làm việc Người ta sử dụng timer để: o Định khoảng thời gian o Đếm kiện o Tạo tốc độ baud cho port nối tiếp o Trong ứng dụng định khoảng thời gian, người ta lập trình timer khoảng đặn đặt cờ tràn timer Cờ dùng để đồng hóa chương trình để thực tác động kiểm tra trạng thái ngõ vào gửi kiện ngõ Các ứng dụng khác sử dụng việc tạo xung nhịp đặn timer để đo thời gian trơi qua hai kiện (ví dụ đo độ rộng xung) Thanh ghi ngắt (INTERRUPT) o Một ngắt xảy điều kiện, kiện mà gây treo tạm thời thời chương trình điều kiện phục vụ chương trình khác o Các ngắt đóng vai trị quan trọng thiết kế cài đặt ứng dụng vi điều khiển Chúng cho phép hệ thống đáp ứng bất đồng với kiện giải kiện chương trình khác thực thi 10 o - Tổ chức ngắt 89C51: o Có nguồn ngắt 89C51: ngắt ngoài, ngắt từ timer ngắt port nối tiếp Tất ngắt theo bị cấm sau reset hệ thống cho phép phần mềm Mức độ ưu tiên ngắt lưu ghi IP (Interrupt Priority) hay nói cách khác ghi IP cho phép chọn mức ưu tiên cho ngắt (giá trị ghi IP reset 00h) Địa bit Mô tả Bit Ký hiệu IP.7 - - Không mô tả IP.6 - - Không mô tả IP.5 ET2 BDH Chọn mức ưu tiên cao (=1) hay thấp (=0) cổng timer IP.4 ES BCH Chọn mức ưu tiên cao (=1) hay thấp (=0) cổng nối tiếp IP.3 ET1 BBH Chọn mức ưu tiên cao (=1) hay thấp (=0) timer IP.2 EX1 BAH Chọn mức ưu tiên cao( =1) hay thấp (=0) ngắt IP.1 ET0 B9H Chọn mức ưu tiên cao(=1) hay thấp (=0) timer IP.0 EX0 B8H Chọn mức ưu tiên cao( =1) hay thấp (=0) ngắt Tóm tắt ghi IP Bảng 2-3 Tóm tắt ghi IP Nếu ngắt xảy đồng thời ngắt có có mức ưu tiên cao phục vụ trước Nếu ngắt xảy đồng thời có mức ưu tiên thứ tự ưu tiên thực từ cao đến thấp sau: ngắt – timer – ngắt – timer – cổng nối tiếp – timer 11 Nếu chương trình ngắt có mức ưu tiên thấp chạy mà có ngắt xảy với mức ưu tiên cao chương trình tạm dừng để chạy chương trình khác có mức ưu tiên cao Cho phép cấm ngắt: o Mỗi nguồn ngắt cho phép cấm ngắt qua ghi chức đặt biệt có định địa bit IE (Interrupt Enable: cho phép ngắt) địa A8H Bit Ký hiệu Địa bit Mơ tả IE.7 EA AFH Cho phép/ Cấm tồn IE.6 - AEH Không mô tả IE.5 ET2 ADH Cho phép ngắt từ Timer 2(8052) IE.4 ES ACH Cho phép ngắt port nối tiếp IE.3 ET1 ABH Cho phép ngắt từ Timer IE.2 EX1 AAH Cho phép ngắt IE.1 ET0 A9H Cho phép ngắt từ Timer IE.0 Bảng 2-4 Tóm tắt ghi IE 12 CHƯƠNG PHÂN TÍCH THIẾT KẾ HỆ THỐNG ĐÈN GIAO THƠNG 3.1 Sơ đồ khối Hình 3.1 Sơ đồ khối hệ thống 3.2 Thiết kế phần cứng 3.2.1 Mạch dao động Reset Hình 3.2 Sơ đồ nguyên lý mạch dao động reset 13 3.2.1.1 Mạch dao động Tinh thể thạch anh (Quartz Crytal) loại đá mờ thiên nhiên, dioxyt silicium (SiO2) Tinh thể thạch anh dùng mạch dao động lát mỏng cắt từ tinh thể Tùy theo mặt cắt mà lát thạch anh có đặc tính khác Lát thạch anh có diện tích từ nhỏ 1cm2 đến vài cm2 mài mỏng, phẳng (vài vài mm) mặt thật song song với Hai mặt mạ kim loại nối chân ngồi để dễ sử dụng Ðặc tính tinh thể thạch anh tính áp điện (Piezoelectric Effect) theo ta áp lực vào mặt lát thạch anh (nén kéo dãn) xuất điện xoay chiều mặt Ngược lại tác dụng điện xoay chiều, lát thạch anh rung tần số không đổi tạo điện xoay chiều có tần số khơng đổi Tần số rung động lát thạch anh tùy thuộc vào kích thước đặc biệt độ dày mặt cắt Khi nhiệt độ thay đổi, tần số rung động thạch anh thay đổi theo có độ ổn định tốt nhiều so với mạch dao động không dùng thạch anh (tần số dao động gần tùy thuộc vào thạch anh mà không lệ thuộc mạch ngoài) 3.2.1.2 Mạch Reset Chân Reset (chân 9) có tác dụng reset chip AT89C51, mức tích cực chân mức 1, để reset ta phải đưa mức 1(5V) đến chân với thời gian tối thiếu chu kỳ máy (tương đương S – thạch anh 12MHz) Tần số làm việc AT89C51 𝑓 = 𝑓𝑇𝐴 12 Chu kỳ máy = thời gian sử lý lệnh: T = 1/f Khi reset trạng thái RAM nội không thay đổi Thanh ghi Nội dung Bộ đếm chương trình PC 0000H Thanh ghi tích lũy A 00H Thanh ghi B 00H Từ trạng thái chương trình PSW 00H Con trỏ stack SP 07H Con trỏ liệu DPTR 0000H Port -3 FFH 14 Thanh ghi ưu tiên ngắt IP xxx00000B(8031/8051) xx000000B(8032/8052) Thanh ghi cho phép ngắt IE 0xx00000B(8031/8051) 0x000000B(8032/8052) Các ghi định thời 00H Thanh ghi điều khiển nối tiếp SCON 00H Bộ đệm liệu nối tiếp SBUF 00H Thanh ghi điều khiển nguồn PCON( HMOS)(CMOS) 0xxxxxxxB 0xxx0000B Bảng 3-1 Trạng thái ghi reset 3.2.2 Mạch hiển thị đếm ngược LED đoạn Khối hiển thị đếm ngược led đoạn: hiển thị thời gian chế độ thời gian, hiển thị led đoạn, chân led nối thông qua điện trở để nối với vi điều khiển Việc giải mã nhị phân sang led đoạn điều thực vi điều khiển Led đoạn nối theo kiểu anode chung, mạch này: chân Anode chung led điều khiên gián tiếp từ chân P1.0 đến P1.3 thông qua Trasistor H1061 (loại NPN) Led hoạt động với dòng từ 10mA đến 20mA Sử dụng port (P0): P2.0, P2.1, P2.2, P2.3, P2.4, P2.5, P2.6, P2.7, để điều khiển chân Cathode Với chân Anode chung điều khiển thông qua transistor H1061, điều khiển hoạt động chế độ bão hòa cung cấp dòng cho LED sáng Transistor H1061 nối với port (P1): P1.0, P1.1, P1.2, P1.3 vi điều khiển có chức khuyếch đại dịng cho led đoạn hoạt động bình thường Các chân từ P0.0 đến P0.5 dùng để điều khiển thời gian sáng tối đèn báo xanh đỏ vàng hai đường Cụ thể bảng địa sau mưc điều khiển Led đoạn sau a Địa điều khiển chân Cathode Led đoạn: • P2.0: Thanh A led đoạn • P2.1: Thanh B led đoạn • P2.2: Thanh C led đoạn • P2.3: Thanh D led đoạn 15 • P2.4: Thanh E led đoạn • P2.5: Thanh F led đoạn • P2.6: Thanh G led đoạn b Mức điều khiển: Các led đoạn A nốt chung tương ứng từ A tới G sáng chân Cathode mức thấp chân Anode chung mức cao Vì led sáng chân tương ứng từ P2.0 đến P2.6 mức thấp, chân Anode chung mức cao, hay chân điều khiển cực B Transistor NPN tương ứng (Q1 đến Q4, loại NPN) phải mức cao Các led tương ứng tắt thiếu hai điều kiện, hai điều kiện c Địa điều khiển chân Anode chung led đoạn: • P1.0: chân A nốt chung (LED hàng đơn vị) đường • P1.1: chân A nốt chung (LED hàng chục) đường • P1.2: chân A nốt chung (LED hàng đơn vị) đường • P1.3: chân A nốt chung (LED hàng chục) đường 3.2.3 Mạch hiển thị LED đơn * Địa chỉ: -P0.0: Nối với đèn đỏ đường -P0.1: Nối với đèn vàng đường -P0.2: Nối với đèn xanh đường -P0.3: Nối với đèn đỏ đường -P0.4: Nối với đèn vàng đường -P0.5: Nối với đèn xanh đường Sử dụng led đơn nối cathode chung Cịn chân anode nối vào điện trở R Và điều khiển chân P0.0 đến P0.5 Vì LED đơn có dịng hoạt động khoảng 10mA trở lên nên ta chọn điện trở R cho phù hợp Nguồn cấp: Vcc = +5V Điện áp phân cực thuận LED: -Led xanh: Vx = 2V - 2.8V 16 -Led vàng : Vv = 2V - 2.5V -Led đỏ : Vd = 1.4V - 1.8V * Mức điểu khiển đền báo vàng xanh đỏ - Mức 1: Đèn sáng - Mức 0: Đèn tắt 3.2.4 Sơ đồ nguyên lý Hình 3.3 Sơ đồ nguyên lý hệ thống 3.3 Xây dựng, thiết kế chương trình Sử dụng ngơn ngữ lập trình Assembly phần mềm Keil C để thiết kế chương trình cho hệ thống 3.3.1 Lưu đồ thuật tốn 17 Hình 3.4 Lưu đồ thuật tốn chương trình 18 3.3.2 Chương trình Assembly cho 89C51 /********************************************************************/ ORG 000H MAIN: MOV 40H,#15 ; O NHO 40H CHUA THOI GIAN DEN DO MOV 41H,#10 ; O NHO 40H CHUA THOI GIAN DEN XANH MOV 42H,#05 ; O NHO 40H CHUA THOI GIAN DEN VANG MOV DPTR,#LED7DOAN ; LAY MA LED DOAN DE HIEN THI TIEP: //// DO1 - XANH2 SANG //// MOV R6,40H ; R6 LAY 30S CHO DEN DO MOV R7,41H ; R7 LAY 25S CHO DEN XANH MOV R1,#125 ; DEM S MOV P0,#0H SETB P0.0 ; BAT LED DON DO SETB P0.5 ; BAT LED DON XANH LOOP1: LCALL CHIA DEC R6 DEC R7 LAP1: LCALL HIENTHI DJNZ R1,LAP1 MOV R1,#125 CJNE R7,#0H,LOOP1 //// DO1 - VANG2 SANG //// CLR P0.5 SETB P0.4 MOV R6,42H MOV R7,42H LOOP2: LCALL CHIA DEC R6 DEC R7 LAP2: LCALL HIENTHI DJNZ R1,LAP2 MOV R1,#125 19 CJNE R7,#0H,LOOP2 //// XANH1 - DO2 SANG //// CLR P0.0 CLR P0.4 SETB P0.2 SETB P0.3 MOV R6,41H MOV R7,40H LOOP3: LCALL CHIA DEC R6 DEC R7 LAP3: LCALL HIENTHI DJNZ R1,LAP3 MOV R1,#125 CJNE R6,#0H,LOOP3 //// VANG1 - DO2 SANG //// MOV R6,42H MOV R7,42H CLR P0.2 SETB P0.1 LOOP4: LCALL CHIA DEC R6 DEC R7 LAP4: LCALL HIENTHI DJNZ R1,LAP4 MOV R1,#125 CJNE R7,#0H,LOOP4 LJMP TIEP HIENTHI: ;///// QUET MÃ LED DOAN ////// MOV A,31H MOVC A,@A+DPTR MOV P2,A SETB P1.0 LCALL DELAY_2MS CLR P1.0 20 MOV A,32H MOVC A,@A+DPTR MOV P2,A SETB P1.1 LCALL DELAY_2MS CLR P1.1 MOV A,33H MOVC A,@A+DPTR MOV P2,A SETB P1.2 LCALL DELAY_2MS CLR P1.2 MOV A,34H MOVC A,@A+DPTR MOV P2,A SETB P1.3 LCALL DELAY_2MS CLR P1.3 RET DELAY_2MS: MOV R2,#4 CONT: MOV R3,#250 DJNZ R3,$ DJNZ R2,CONT RET CHIA: ;///// BIN TO BCD ////// MOV A,R6 MOV B,#10 DIV AB MOV 31H,B MOV 32H,A MOV A,R7 MOV B,#10 DIV AB MOV 33H,B MOV 34H,A RET LED7DOAN: 21 DB 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h,80h,90h RETI END /*************************************************************************/ 22 CHƯƠNG KẾT LUẬN Thơng qua q trình phân tích thiết kế , tìm hiểu nội dung giảng internet chúng em xây dựng hoàn thành hệ thống điều khiển đèn giao thơng Sau hồn thành đề tài này, giúp chúng em hiểu nguyên lý, hoạt động hệ thống vi điều khiển, cụ thể AT89C51 biết cách lập trình cho vi điều khiển ngơn ngữ lập trình Assembly 23 TÀI LIỆU THAM KHẢO Bài giảng môn Vi Xử Lý, thầy Nguyễn Huy Hoàng Slide bảng Vi Xử Lý, thầy Nguyễn Huy Hoàng Họ Vi Điều Khiển 8051, Tống Văn On https://www.alldatasheet.com/datasheet-pdf/pdf/56215/ATMEL/AT89C51.html 24 ... chạy, đèn xanh, vàng đỏ sáng thời gian mặc định tư? ?ng ứng 30s, 5s 25s 1.1 Thành phần hệ thống đèn giao thông dung vi điều khiển 8051 Hệ thống đèn giao thông gồm phần chủ yếu sau: − Mạch điều khiển. .. thống điều khiển đèn giao thông Sau hoàn thành đề tài này, giúp chúng em hiểu nguyên lý, hoạt động hệ thống vi điều khiển, cụ thể AT89C51 biết cách lập trình cho vi điều khiển ngơn ngữ lập trình Assembly. .. chung mức cao, hay chân điều khiển cực B Transistor NPN tư? ?ng ứng (Q1 đến Q4, loại NPN) phải mức cao Các led tư? ?ng ứng tắt thiếu hai điều kiện, hai điều kiện c Địa điều khiển chân Anode chung