Đồng hồ số sử dụng ds1307 giao tiep 8051

56 599 4
Đồng hồ số sử dụng ds1307 giao tiep  8051

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

1 LỜI MỞ ĐẦU  Với tiến không ngừng khoa học kỹ thuật, đặc biệt ngành điện tử ứng dụng nhiều công nghiệp Trong lĩnh vực điều khiển đại có nhiều ưu điểm so với việc sử dụng mạch điều khiển lắp ráp từ linh kiện rời kích thước nhỏ gọn, giá thành rẻ, tốc độ làm việc tin cậy công suất tiêu thụ thấp Ngày lĩnh vực điều khiển ứng dụng rộng rãi thiết bị sản phẩm phục vụ cho nhu cầu sinh hoạt hàng ngày người như: máy giặt, tủ lạnh, lò vi ba nhằm giúp cho đời sống ngày đại tiện lợi Nhắc đến vi điều khiển họ 8051 có lẽ q quen thuộc người theo ngành điện tử tính hay ứng dụng thực tế Vì ứng dụng 52 người thực đề tài đem tất kiến thức khả lập trình vi điều khiển họ 8051 úng dụng vào thực tế đề tài: “Nghiên cứu thiết kế lịch vạn niên sử dụng vi điều khiển” đời Lịch vạn niên có tính hiển thị giờ, phút, giây, thứ, ngày, tháng, năm led đoạn Đề tài kết hợp vi điều khiển họ 8051 IC chuyên dụng (Real time Clock) qua giúp người thực đề tài hiểu rõ IC đồng hồ thời gian thực DS1307 Do tài liệu tham khảo tiếng Việt hạn chế, trình độ kinh nghiệm thực tế non nên đề tài nhiều thiết sót Rất mong nhận ý kiến đóng góp, giúp đỡ chân tình q báu thầy cô giáo bạn Chương Tổng quan 1.1 Dẫn nhập 1.1.1 Đặt vấn đề Ngày khoa học kỹ thuật phát triển mạnh mẽ, đặc biệt lĩnh vực điện tử góp phần nâng cao xuất lao động, giảm nhẹ sức lao động chân tay cho người góp phần nâng cao đời sống vật chất tinh thần người Từ xa xưa người biết cách đo đếm thời gian nhiều phương pháp khác như: đồng hồ cót, đồng hồ lên giây cót đến kỹ thuật điện tử đời vi điều khiển đời việc sản xuất đồng hồ trở lên dễ dàng trước nhiều đạt độ xác cao hơn, với tiện ích khác báo giờ, cho biết ngày tháng Xuất phát từ nhu cầu phục vụ đời sống người ngày tốt nên em chọn đề tài làm đồ án học phần: Thiết kế đồng hồ số ứng dụng họ vi điều khiển 8051 giao tiếp với DS1307 hiển thị giờ, phút, giây thứ, ngày, tháng, năm hiển thị led đoạn 1.1.2 Tầm quan trọng đề tài - Đồng hồ điện tử khơng vấn đề mẻ với người, với mạch điện tử thị led đoạn có vấn đề quan trọng sau: - Thời gian hiển thị led đoạn dễ quan sát - Là sở để người nghiên cứu khác vận dụng phát triển thành sản phẩm hoàn thiện có giá trị sử dụng thực tế - Đề tài sở đề người thực đồ án mơn học khố sau tham khảo phát triển thêm - Việc thực đề tài giúp người nghiên cứu nắm vững lý thuyết rèn luyện kĩ thi công mạch 1.1.3 Giới hạn đề tài Trong trình thực đề tài này, em tập trung thực giải vấn đề sau: + Khảo sát vi điều khiển AT80C51 + Khảo sát Retltime Clock DS1307 + Ứng dụng vi điều khiển led đoạn để thiết kể hiển thị giờ, phút, giây thứ, ngày, tháng, năm + Thiết kế mạch hiển thị giờ, phút, giây thứ, ngày, tháng, năm led đoạn Do hạn chế thời gian thực đề tài khó khăn việc lập giải thuật nên nhiều thiếu sót 1.2 Cơ sở lý luận 1.2.1 Mục đích nghiên cứu Đề tài: Thiết kế đồng hồ số ứng dụng họ vi điều khiển 8051 giao tiếp với DS1307 hiển thị giờ, phút, giây thứ, ngày, tháng, năm hiển thị Led đoạn Nhằm giúp người thực đề tài nắm vấn đề sau: - Thông qua việc thực đề tài giúp cho người thực đồ án ôn lại kiến thức học lĩnh hội thêm kiến thức từ thầy giáo hướng dẫn, từ bạn sinh viên khoảng thời gian rèn luyện tay nghề, từ hiểu rõ cách viết chương trình cho vi điều khiển - Qua trình thực đồ án tạo điều kiện cho em thực có ý tưởng giải vấn đề phát sinh cách có hiệu - Giúp người thực đồ án biết vận dụng việc tính tốn mạch điện lý thuyết thực tế, cho mạch hoạt động ổn định, kết cấu đơn giản chi phí thấp - Do điều kiện khách quan chủ quan mà sản phẩm làm chưa có tính thực tiễn cao nghiên cứu sâu ứng dụng vào thực tế 1.2.2 Đối tượng nghiên cứu - Vi điều khiển 80C51 - Ứng dụng IC Realtime Clock DS1307 - Mạch hiển thị Led đoạn 1.2.3 Dàn ý nghiên cứu - Nghiên cứu vi điều khiển 80C51 - Nghiên cứu việc giao tiếp vi điểu khiển Led đoạn - Nghiên cứu IC Retltime Clock DS1307 - Lập trình phần mềm cho vi điều khiển 1.2.4 Phương án thực Dùng vi mạch điều khiển Realtime Clock DS1307 có nguồn dự phòng phương pháp có đặc điểm: * Ưu điểm: - Mạch điện thiết kế đơn giản, độ xác cao, giá thành thấp - Tiêu thụ lượng thấp dùng phương pháp quét - Chương trình thời gian lịch có sẵn Realtime DS107 - Khơng phải cài đặt lại thời gian nguồn * Nhược điểm: Người thiết kế phải biết vi điều khiển 1.2.5 Phương tiện nghiên cứu - Máy tính cá nhân - Bộ thí nghiệm vi điều khiển (board nạp VĐK board hiển thị) - Các linh kiện điện tử liên quan đến đề tài 1.2.6 Kết luận chương Xuất phát từ nhu cầu thực tiễn người ưu điểm DS1307 giao tiếp với 8051chúng em tiến hành nghiên cứu Đề tài: Thiết kế đồng hồ số ứng dụng họ vi điều khiển 8051 giao tiếp với DS1307 hiển thị giờ, phút, giây thứ, ngày, tháng, năm hiển thị Led đoạn, để nghiên cứu đề tài chúng em tìm sở lý thuyết để thực đề tài Chương CƠ SỞ LÝ THUYẾT 2.1 Họ vi điều khiển 8051 2.1.1 Tổng quan vi điều khiển * đồ khối VĐK 8051 Các vi mạch VĐK 8051 đồ khối tổng quát hình 2.1 Ngắt ngồi Ram ON - CHIP ETC TIMER TIMER COUNTER INPUTS Điều khiển ngắt ROM ON- CHIP CHƯƠNG TRÌNH CPU osc Bus điều khiển Cổng vào / P0 P1 P2 P3 Cổng nối tiếp TXD RXD Địa / Dữ liệu Hình 2.1 đồ khối tổng quát 8051/8052 Vi điều khiên (VĐK) 8051/52 chế tạo theo cấu trúc hệ vi tính gồm khối sau: - Bộ xử lý trung tâm CPU (Central Processorr Unit): Dùng để điều khiển toàn vi mạch việc thực lệnh xử lý số học logic - Bộ nhớ liệu (RAM) bên trong: (128 byte cho 8051 256 byte cho 8052) dùng làm ghi thông dụng, ghi đặc biệt SFR xử lý bit để ghi nhớ liệu cho chương trình - Bộ nhớ chương trình (ROM) bên trong: (4 Kbyte cho 8051 Kbyte cho 8052) dùng để ghi nhớ chương trình - Cổng trao đổi tin vào liệu địa (P0 - P3): Dùng để trao đổi tin song song liệu địa - Cổng trao đổi tin nối tiếp: Dùng trao đổi tin nối tiếp nhận vào từ chân RXD đưa từ chân TXD - Khối định thời gian đếm Timer/Couter 0, 2: Dùng để định thời gian đếm xung vào chân T0, T1 T2 - Khối điều khiển ngắt: Dùng để ngắt chương trình có xung ngồi hay có đếm tràn - Khối điều khiển BUS mạch tạo xung nhịp Giao tiếp CPU với khối bên 8051 thực qua BUS nội gồm BUS liệu bít, BUS địa tín hiệu điều khiển khác - Giới thiệu số thơng số 8051 Đặc tính Số Lượng ROM chíp 4K byte RAM 128 byte Bộ định thời Các chân vào - 32 Cổng nối tiếp Nguồn ngắt Bảng 2.1 Thông số 8051 2.1.2 đồ chân chức Các thành viên họ 8051 ví dụ 8751, 89C51, DS500 có kiểu đóng vỏ khác nhau, chẳng hạn dạng hai hàng chân DIP, dạng vỏ dẹt vuông QFP dạng chân đỡ LLC, song chúng có 40 chân với chức vào I/O, đọc RD, ghi WR, địa chỉ, liệu ngắt Tuy nhiên, hầu hết nhà phát triển sử dụng chíp đóng vỏ 40 chân kiểu hai hàng chân DIP nên tập trung mô tả phiên Mơ tả chân 8051 trình bày hình 2.2 Trong số 40 chân 8051 có 32 chân dành cho cổng P0, P1, P2, P3 cổng có chân Các chân lại dành cho nguồn VCC, đất GND, chân dao động XTAL1 XTAL2 , khởi động lại RS, cho phép chốt địa ALE, truy cập địa EA, cho phép cất chương trình PSEN Trong chân chân VCC, GND, XTAL1, XTAL2, RST, EA họ 8051 8031 sử dụng.Hai chân lại PSEN ALE sử dụng chủ yếu hệ thống dựa 8051 P1.0 VC 40 C P1.1 P0.0 ( AD0 ) 39 P1.2 P0.1 ( AD1 ) 38 P1.3 P0.2 ( 37 AD2 () P1.4 P0.3 36 AD3 P1.5 P0.4 () AD4 ) 35 P0.5 ( P1.6 34 AD5 P1.7 P0.6( )AD6 33 )P0.7 ( RST 32 AD7 ) (RXD) P3.0 10 EA /CPP ALE / (TXD) P3.1 PROGG (INT0) P3.2 PSEN 20 (INT1) 13 928 P2.7 ( A15 ) P3.3 (T0) P2.6 ( A14 ) 27 14 P3.4 P3.5 15 P2.5 ( A13 (T1) 26 )P2.4 ( A12 ) ( WR ) 25 16 P3.6 ( RD) P3.7 P2.3 ( A11 ) 24 XTAL2 18 23 P2.2 ( A10 )P2.1 ( A9 XTAL1 19 22 )P2.0 (A8 GN 20 21 D ) Hình 2.2 đồ chân 8051/8052 8051 2.1.2.1 Nhóm chân nguồn, dao động điều khiển - VCC: Chân số 40 cung cấp điện áp nguồn nguồn +5V - GND: Chân số 20 chân đất (hay chân nối mass) - XTAL1 XTAL2: 8051 có dao động chíp cần có dao động đồng hồ bên ngồi để kích hoạt Bộ dao động thạch anh thường nối tới chân vào XTAL1 (chân 19) XTAL2 (chân 18) Khi mắc dao động thạch anh, phải có hai tụ điện 30pF, đầu tụ nối tới XTAL1 XTAL2, đầu nối đất hình 2.3 Dao động đồng hồ ngồi khơng thiết dao động thạch anh mà dùng dao động TTL Khi XTAL2 để hở hình 2.4 C2 XTAL2 C1 XTAL1 30pF XTAL2 NC EXTERRNAL OSCILLATAOR SIGNAL XTAL1 GND GND Hình 2.3 Nối đồng hồ thạch anh Hình 2.4 Nối đồng hồ ngồi - RST: Khởi động lại (RESET) chân vào số 9, mức tích cực cao, bình thường mức thấp Khi có xung cao đặt tới chân VĐK kết thúc hoạt động tiến hành khởi động lại Q trình xảy hồn tồn tương tự bật nguồn Khi RESET, giá trị ghi bị xóa Bảng 2.2 giới thiệu giá trị ghi thực RESET REGISTER RESET VALUE PC 0000 ACC 0000 B 0000 PSW 0000 DPTR 0007 Bảng 2.2 Giá trị số ghi sau RESET Như RESET giá trị đếm chương trình PC 0, CPU nhận mã lệnh địa 0000h nhớ ROM Do đó, địa phải có lệnh chương trình nguồn ROM Hình 2.5 hình 2.6 trình bày hai cách nối chân mạch RESET Vcc + 10F 8.2K 30F 30F Vcc 31 EA/Vpp X1 19 11.0592 MHz 18 X2 RST 10F 31 8.2K EA/Vpp X1 X2 RST Hình 2.5 Mạch nối chân RST Hình 2.6 Mạch RESET với phím khởi động lại Để RESET có hiệu chân RST cần trì trạng thái tích cực (mức cao) tối thiểu hai chu kì máy Ở 8051 chu kỳ máy 12 chu kì dao động đồng hồ - EA: Truy cập nhớ chân vào số 31 vỏ kiểu DIP Đối với thành viên họ 8051 có ROM chương trình chíp chân EA nối tới nguồn VCC - PSEN: Là chân có chức cho phép cất chương trình - ALE: Cho phép chốt địa chỉ, chân có mức tích cực cao 2.1.2.2 Nhóm chân cổng vào Bốn cổng P0, P1, P2 P3 có chân tạo thành cổng bít Tất cổng RESET cấu hình làm cổng Để làm đầu vào cần lập trình - Cổng P0: Cổng P0 có chân (từ chân 32 đến chân 39) Bình thường cổng Để vừa làm đầu vừa làm đầu vào chân phải nối tới điện trở kéo 10K bên ngồi Sở dĩ cổng P0 có dạng cực máng hở điểm khác với cổng P1, P2, P3 Với điện trở kéo ngồi, khởi động lại, cổng P0 cấu hình làm cổng ra, hình 2.7 thể mắc điện trở kéo cổng P0 VCC 8051 P0.0 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 Hình 2.7 Mắc điện trở kéo cổng P0 P0 làm cổng vào: Khi có điện trở nối tới cổng P0 để tạo thành cổng vào cần phải lập trình cách ghi tới tất bít cổng 10 - Cổng P1: Cổng P1 có chân từ chân đến chân sử dụng làm đầu vào Khác với cổng P0, cổng P1 không cần đến điện trở kéo có điện trở kéo bên Khi RESET cổng P1 cấu hình làm cổng Cổng P1 làm đầu vào: Để chuyển cổng P1 làm đầu vào cần lập trình cách ghi đến tất bít cổng - Cổng P2: Cổng P2 có chân từ chân 21 đến chân 28 sử dụng làm đầu vào Cũng giống cổng P1, cổng P2 khơng cần đến điện trở kéo có điện trở kéo bên Khi RESET cổng P2 cấu hình làm cổng Để cổng P2 làm đầu vào cần lập trình cách ghi đến tất bít cổng - Cổng P3: Cổng P3 chiếm chân từ chân 10 đến chân 17 sử dụng làm đầu vào Cũng giống cổng P1và P2, cổng P3 không cần đến điện trở kéo Khi RESET cổng P3 cấu hình làm cổng Tuy nhiên ứng dụng chủ yếu Cổng P3 có thêm chức quan trọng khác cung cấp số tín hiệu đặc biệt, chẳng hạn ngắt Để cổng P3 làm đầu vào cần lập trình cách ghi đến tất bít cổng Bit Tên Số chân Chức P3.0 RXD 10 Chân nhận liệu truyền thông nối tiếp P3.1 TXD 11 Chân truyền liệu truyền thông nối tiếp P3.2 INT0 12 Ngõ vào ngắt P3.3 INT1 13 Ngõ vào ngắt P3.4 T0 14 Ngõ vào counter (đếm kiện 0) P3.5 T1 15 Ngõ vào counter (đếm kiện 1) P3.6 WR 16 Điều khiển ghi nhớ liệu P3.7 RD 17 Điều khiển đọc nhớ liệu Bảng 2.3 Giới thiệu chức khác cổng P3 42 TÀI LIỆU THAM KHẢO Điện tử công suất - Tác giả: NGUYỄN BÍNH - Nhà xuất Khoa học Kỹ thuật Cấu trúc lập trình họ vi điều khiển 8051 – Tác giả: NGUYỄN TĂNG CƯỜNG - Nhà xuất Khoa học Kỹ thuật Kỹ thuật mạch điện tử- Tác giả: PHẠM MINH HÀ- Nhà xuất Khoa học Kỹ thuật Giáo trình kỹ thuật xung - số - Tác giả: LƯƠNG NGỌC HẢI - Nhà xuất Giáo Dục Dụng cụ bán dẫn vi mạch - Tác giả: LÊ XUÂN THÊ - Nhà xuất Giáo Dục Kỹ thuật vi xử lý lập trình ASSEMBLY cho hệ vi điều khiển: Đỗ Xuân Tiến – Nhà xuất Khoa học Kỹ thuật Họ 8051 – Tác giả: TỐNG VĂN ON - Nhà xuất KHKT Giáo trình vi mạch số – Nguyễn Hữu Phước Website: http://www.alldatasheet.com 10 Website: http://www.loadcellsystems.co.za 43 Chuong trinh SDA BIT P1.6 ; BIT DATA SCL BIT P1.5 ; XUNG CLOCK RESET BIT P1.0 UP BIT P1.1 DOW BIT P1.2 MODE BIT P1.3 ORG 0000H MAIN: CALL KHOI_TAO_DS1307 MAIN1: CALL READ_DATA_DS1307 CALL HIEN_THI CALL CHINH_GIO_PHUT JMP MAIN1 ;*************************************************************** KHOI_TAO_DS1307: MOV A,#0D0H LCALL START LCALL GUI ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC MOV A,#00H LCALL GUI MOV A,#30H LCALL GUI MOV A,#30H LCALL GUI MOV A,#07H LCALL GUI MOV A,#07H LCALL GUI MOV A,#09H LCALL GUI MOV A,#10H LCALL GUI MOV A,#10H ;DIA CHI CUA MINUTES TRONG RTC1307 44 LCALL GUI LCALL STOP RET ;************************************************************** READ_DATA_DS1307: MOV A,#0D0H ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC LCALL START LCALL GUI MOV A,#00H LCALL GUI LCALL STOP ;DIA CHI CUA SECONDS TRONG RTC1307 MOV A,#0D1H ;NHAN DATA SECONDS TU RTC1307 LCALL START LCALL GUI LCALL NHAN LCALL STOP MOV A,R6 LCALL CHUYEN_GIAY LCALL HIEN_THI ;************************************************************ A,#0D0H ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC LCALL START LCALL GUI MOV A,#01H LCALL GUI LCALL STOP MOV A,#0D1H LCALL START LCALL GUI LCALL NHAN LCALL STOP ;DIA CHI CUA MINUTES TRONG RTC1307 ;NHAN DATA MINUTES TU RTC1307 MOV A,R6 LCALL CHUYEN_PHUT LCALL HIEN_THI ;*************************************************************** MOV 45 MOV A,#0D0H LCALL START LCALL GUI MOV A,#02H ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC ;DIA CHI CUA HOURS TRONG RTC1307 LCALL GUI LCALL STOP MOV A,#0D1H LCALL START LCALL GUI ;NHAN DATA HOURS TU RTC1307 CALL NHAN LCALL STOP MOV A,R6 LCALL CHUYEN_GIO LCALL HIEN_THI ;**********nhan thu******************************** MOV A,#0D0H LCALL START LCALL GUI MOV A,#03H ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC ;DIA CHI CUA THU TRONG RTC1307 LCALL GUI LCALL STOP MOV A,#0D1H LCALL START LCALL GUI LCALL NHAN LCALL STOP ;NHAN DATA THU TU RTC1307 MOV A,R6 LCALL CHUYEN_THU LCALL HIEN_THI ;**********nhan NGAY******************************** MOV A,#0D0H LCALL START LCALL GUI MOV A,#04H LCALL GUI ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC ;DIA CHI CUA NGAY TRONG RTC1307 46 LCALL STOP MOV A,#0D1H LCALL START LCALL GUI LCALL NHAN LCALL STOP ;NHAN DATA NGAY TU RTC1307 MOV A,R6 LCALL CHUYEN_NGAY LCALL HIEN_THI ;********************************************* MOV A,#0D0H LCALL START LCALL GUI MOV A,#05H LCALL GUI LCALL STOP MOV A,#0D1H LCALL START LCALL GUI LCALL NHAN LCALL STOP ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC ;DIA CHI CUA MINUTES TRONG RTC1307 ;NHAN DATA MINUTES TU RTC1307 MOV A,R6 LCALL CHUYEN_THANG LCALL HIEN_THI ;************************************************************ MOV A,#0D0H LCALL START LCALL GUI MOV A,#06H LCALL GUI LCALL STOP MOV A,#0D1H LCALL START LCALL GUI LCALL NHAN ;DIA CHI CUA RTC1307, D0 = GHI, D1 = DOC ;DIA CHI CUA MINUTES TRONG RTC1307 ;NHAN DATA MINUTES TU RTC1307 47 LCALL STOP MOV A,R6 LCALL CHUYEN_NAM LCALL HIEN_THI RET ;*************************************************************** CHUYEN_GIAY: PUSH ACC MOV 40H,R6 MOV A,R6 SWAP A MOV 41H,A POP ACC RET CHUYEN_PHUT: PUSH ACC MOV 42H,R6 MOV A,R6 SWAP A MOV 43H,A POP ACC RET CHUYEN_GIO: PUSH ACC MOV 44H,R6 MOV A,R6 SWAP A MOV 45H,A POP ACC RET CHUYEN_THU: PUSH ACC MOV 46H,R6 POP RET ACC 48 CHUYEN_NGAY: PUSH ACC MOV 47H,R6 MOV A,R6 SWAP A MOV 48H,A POP ACC RET CHUYEN_THANG: PUSH ACC MOV 49H,R6 MOV A,R6 SWAP A MOV 4AH,A POP ACC RET CHUYEN_NAM: PUSH ACC MOV 4bH,R6 MOV A,R6 SWAP A MOV 4cH,A POP ACC RET START: CLR SCL SETB SDA NOP NOP NOP SETB SCL CLR NOP NOP NOP SDA 49 RET STOP: NOP NOP NOP CLR SDA SETB SCL NOP SETB SDA NOP NOP NOP CLR SCL GUI: MOV R7,#8 BACK_GUI: CLR SCL NOP NOP NOP RLC A MOV SDA,C SETB SCL NOP NOP NOP CLR SCL NOP NOP NOP DJNZ R7,BACK_GUI SETB SDA NOP NOP NOP 50 SETB SCL NOP NOP NOP CLR SCL NOP NOP NOP RET NHAN: MOV R7,#08 BACK_NHAN: SETB SCL NOP NOP NOP MOV C,SDA NOP NOP NOP CLR SCL NOP NOP NOP MOV A,R6 RLC A MOV R6,A DJNZ R7,BACK_NHAN SETB SDA NOP NOP NOP SETB SCL NOP NOP 51 NOP CLR SCL NOP NOP NOP RET ;= =============== HIEN_THI: MOV P0,#0FEH ;quet giay MOV P3,#0FFH MOV P2,40H ACALL DELAYLED MOV P0,#0FDH MOV P3,#0FFH MOV P2,41H ACALL DELAYLED ;************************************ MOV P0,#0FBH ;quet phut MOV P3,#0FFH MOV P2,42H ACALL DELAYLED MOV P0,#0F7H MOV P3,#0FFH MOV P2,43H ACALL DELAYLED ;********************************8 MOV P0,#0EFH MOV P3,#0FFH MOV P2,44H ACALL DELAYLED MOV P0,#0DFH MOV P3,#0FFH MOV P2,45H ACALL DELAYLED ;quet gio 52 ;******************************* MOV P3,#0BFH ;quet thu MOV P0,#0FFH MOV P2,46H ACALL DELAYLED ;******************************* MOV P3,#0FEH ;quet MOV P0,#0FFH MOV P2,47H ACALL DELAYLED MOV P3,#0FDH MOV P0,#0FFH MOV P2,48H ACALL DELAYLED ;************************** MOV P3,#0FBH ;quet thang MOV P0,#0FFH MOV P2,49H ACALL DELAYLED MOV P3,#0F7H MOV P0,#0FFH MOV P2,4AH ACALL DELAYLED ;************************** MOV P3,#0EFH ;quet nam MOV P0,#0FFH MOV P2,4bH ACALL DELAYLED MOV P3,#0DFH MOV P0,#0FFH MOV P2,4cH ACALL DELAYLED RET ;************************************************************** CHINH_GIO_PHUT: 53 L1: JB P1.1, N2 JNB P1.1, L1 JB P1.1, $ INC 42H ; CHINH PHUT MOV A, 42H CJNE A, #0AH, min1 ; SO SANH VOI 10 MOV 42H, #10h min1: CJNE A, #1AH, min2 ; SO SANH VOI 20 MOV 42H, #20H min2: CJNE A, #2AH, min3 ; SO SANH VOI 30 MOV 42H, #30H min3: CJNE A, #3AH, min4 ; SO SANH VOI 40 MOV 42H, #40H min4: CJNE A, #4AH, min5 ; SO SANH VOI 50 MOV 42H, #50H min5: CJNE A, #5AH, N1 MOV ; SO SANH VOI 60 42H, #00H INC 44H CALL START MOV A,#0D0H CALL GUI MOV A, #02H CALL GUI MOV A, 44H CALL CALL N1: GUI STOP CALL START MOV A,#0D0H CALL GUI MOV A, #01H CALL GUI MOV A, 42H CALL GUI CALL STOP N2: JB P1.2, N4 ; CHỈNH GIỜ 54 L2: JNB P1.2, L2 JB P1.2, $ INC 44H MOV A, 44H CJNE A, #0AH, hour1 ; SO SÁNH VỚI CON SỐ 10 MOV 44H, #10h hour1: CJNE A, #1AH, hour ; SO SÁNH VỚI CON SỐ 20 MOV 44H, #20H hour2: CJNE A, #24H, N3 ; SO SÁNH VỚI CON SỐ 24 MOV 44H, #00H N3: CALL START MOV A,#0D0H CALL GUI MOV A, #02H CALL GUI MOV A, 44H N4: CALL GUI CALL STOP RET ;*************************************************************** DELAYLED: PUSH 00H PUSH 01H MOV R1,#5 DEL: MOV R0,#200 DJNZ R0,$ DJNZ R1,DEL POP 01H POP 00H RET END ;DELAY 2.5MS 55 Hình 2.1 đồ khối tổng quát 8051/8052 Hình 2.2 đồ chân 8051/8052 Hình 2.3 Nối đồng hồ thạch anh Hình 2.4 Nối đồng hồ ngồi Hình 2.5 Mạch nối chân RST Hình 2.6 Mạch RESET với phím khởi động lại Hình 2.7 Mắc điện trở kéo cổng P0 Hình 2.8 Lệnh quay phải Hình 2.9 Lệnh quay trái Hình 2.10 Lệnh quay phải ghi A có nhớ Hình 2.11 Lệnh quay trái ghi A có nhớ Hình 2.12 Mạng TWI (I2C) với nhiều thiết bị điện trở kéo lên cho SDA, SCL Hình 2.13 Cấu tạo DS1307 Hình 2.14 Mạch ứng dụng đơn giản DS1307 Hình 2.15 Cấu trúc DS1307 Hình 2.16 Tổ chức nhớ DS1307 Hình 2.17 Tổ chức ghi thời gian Hình 3.1 đồ khối tồn mạch Hình 3.2 đồ ngun lý nguồn Hình 3.3 Mạch chỉnh lưu cầu Hình 3.4 Mạch lọc tụ điện Hình 3.5a Giản đồ thời gian mạch lọc tụ Hình 3.5b Giản đồ thời gian mạch lọc tụ Hình 3.6 đồ nguyên lý khối dao động Hình 3.7 đồ khối bàn phím Hình 3.8 đồ khối mạch Realtime Clock DS1307 Hình 3.9 đồ nguyên lý mạch DS1307 AT 89C51 Hình 3.10 đồ khối hiển thị Hình 3.11 đồ khối khối giải mã 56 Hình 3.12 đồ ngun lý tồn mạch Hình 3.13 đồ bố trí linh kiện phía hiển thị 13 led Hình 3.14 đồ bố trí linh kiện phía hiển thị 13 led Hình 3.15 đồ bố trí linh kiện phía điều khiển Hình 3.16 đồ mạch in mặt điều khiển Hình 3.17 Lưu đồ thuật giải Hình 3.18 Lưu đồ giải thuật thiết lập thời gian chíp thực Hình 3.19 Lưu đồ giải thuật kiểm tra phím bấm Hình 3.20 Lưu đồ giải thuật chương trình chỉnh Calendar Bảng 2.1 Thơng số 8051 Bảng 2.2 Giá trị số ghi sau RESET Bảng 2.3 Giới thiệu chức khác cổng P3 Bảng 2.4 Tóm tắt phép nhân hai số khơng dấu (MULAB) Bảng 2.5 Tóm tắt phép chia khơng dấu Bảng 2.6 Lệnh ANL Bảng 2.7 Lệnh OR Bảng 2.8 Lệnh XOR Bảng 2.9 Bảng mã IC 74LS247 ... nhu cầu thực tiễn người ưu điểm DS1307 giao tiếp với 8051chúng em tiến hành nghiên cứu Đề tài: Thiết kế đồng hồ số ứng dụng họ vi điều khiển 8051 giao tiếp với DS1307 hiển thị giờ, phút, giây... phần: Thiết kế đồng hồ số ứng dụng họ vi điều khiển 8051 giao tiếp với DS1307 hiển thị giờ, phút, giây thứ, ngày, tháng, năm hiển thị led đoạn 1.1.2 Tầm quan trọng đề tài - Đồng hồ điện tử không... thiếu sót 1.2 Cơ sở lý luận 1.2.1 Mục đích nghiên cứu Đề tài: Thiết kế đồng hồ số ứng dụng họ vi điều khiển 8051 giao tiếp với DS1307 hiển thị giờ, phút, giây thứ, ngày, tháng, năm hiển thị Led đoạn

Ngày đăng: 29/06/2018, 13:29

Tài liệu cùng người dùng

Tài liệu liên quan