Chương2 :Các chương trình phục vụ cho RTC 1. SEND_START (Gửi điều kiện START) 2.
lượt xem 65
download

Chương2 :Các chương trình phục vụ cho RTC 1. SEND_START (Gửi điều kiện START) 2.

Tham khảo tài liệu 'chương2 :các chương trình phục vụ cho rtc 1. send_start (gửi điều kiện start) 2.', kỹ thuật - công nghệ, điện - điện tử phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Chương2 :Các chương trình phục vụ cho RTC 1. SEND_START (Gửi điều kiện START) 2.
- Chương2 :Các chương trình phục vụ cho RTC 1. SEND_START (Gửi điều kiện START) 2. SEND_STOP (Gửi điều kiện STOP) 3. SCL_HIGH (đưa SCL lên mức cao) 4. SEND_BYTE (gửi byte vào RTC) 5. READ_BYTE (đọc byte từ RTC) 6. READ_CLOCK (đọc giờ từ RTC) 7. SET_CLOCK (cài đặt giờ RTC) 8. READ_RAM (đọc 56 byte từ RTC) 9. SET_RAM (ghi 56 byte vào RTC) 10. OSC_CONTROL (Điều khiển bộ dao động trong RTC) 11. SQW_CONTROL_1HZ (xuất xung 1Hz ở chân 7 của RTC) 12. SQW_CONTROL_4KHZ(xuất xung 4.096KHz ở chân 7 của RTC) 13. SQW_CONTROL_8KHZ(xuất xung 8.192Hz ở chân 7 của RTC) 14. SQW_CONTROL_32KHZ(xuất xung 32.768Hz ở chân 7 của RTC) 15. ALARM_TEST (kiểm tra báo thức) ;START CONDITION
- SEND_START: CLR NO_START JB _2W_BUSY,SEND_START_ERROR SETB _2W_BUSY CLR ACK JNB SCL,SEND_START_ERROR JNB SDA,SEND_START_ERROR SETB SDA LCALL SCL_HIGH LCALL DELAY CLR SDA LCALL DELAY; CLR SCL RET SEND_START_ERROR: SETB NO_START RET ;=============================================== ;STOP CONDITION SEND_STOP:
- CLR SDA LCALL SCL_HIGH LCALL DELAY SETB SDA NOP JNB SDA,$ CLR _2W_BUSY RET ;================================================ ;SEND BYTE ;DUA GIA TRI TRONG THANH GHI A VAO DS1307 SEND_BYTE: MOV BITCOUNT,#8H SEND_BYTE_LOOP: JNB ACC.7,LEVEL_LOW SETB SDA AJMP SEND_BITS LEVEL_LOW: CLR SDA SEND_BITS:
- ; NOP ; NOP ; NOP LCALL SCL_HIGH LCALL DELAY CLR SCL;KET THUC 1 XUNG NHIP RL A DJNZ BITCOUNT,SEND_BYTE_LOOP SETB SDA;CAU HINH DE NHAN XUNG ACK NOP LCALL SCL_HIGH ; NOP ; NOP ; NOP CLR ACK JNB SDA,SEND_BYTE_COMPLISH SETB ACK SEND_BYTE_COMPLISH: LCALL DELAY CLR SCL LCALL DELAY RET
- ;=============================================\ ;DOC GIA TRI VAO A READ_BYTE: MOV BITCOUNT,#8H MOV A,#00H SETB SDA READ_BITS: LCALL SCL_HIGH ; NOP ; NOP ; NOP MOV C,SDA RLC A;DUA SDA VAO THANH GHI A CLR SCL ; NOP NOP ; NOP DJNZ BITCOUNT,READ_BITS JB LAST_READ,NOT_ACK;NEU LA LAN DOC CUOI CUNG THI KHONG GUI ACK
- CLR SDA;GUI ACK BIT NOT_ACK: LCALL SCL_HIGH CLR SCL RET; SCL_HIGH: SETB SCL JNB SCL,$ NOP RET READ_CLOCK: MOV R0,#25H MOV BYTECOUNT,#00 CLR LAST_READ LCALL SEND_START MOV A,#0D0H;WRITE COMMAND LCALL SEND_BYTE MOV A,#00H;DAT DIA CHI LAM VIEC LCALL SEND_BYTE LCALL SEND_STOP
- LCALL SEND_START MOV A,#0D1H;READ LCALL SEND_BYTE READ_LOOP: MOV A,BYTECOUNT CJNE A,#07H,NOTLAST SETB LAST_READ NOTLAST: LCALL READ_BYTE MOV @R0,A INC R0 INC BYTECOUNT MOV A,BYTECOUNT CJNE A,#00H,NOT_FIRST CLR OSC MOV A,@R0 JNB ACC.7,NO_OSC SETB OSC CLR ACC.7 MOV @R0,A NO_OSC: NOT_FIRST:
- CJNE A,#8H,READ_LOOP RET SQW_CONTROL_1HZ: LCALL SEND_START MOV A,#0D0H LCALL SEND_BYTE MOV A,#07H;DAT DIA CHI LAM VIEC LCALL SEND_BYTE MOV A,#80H JNB SQW,TURN_OFF_SQW1 MOV A,#90H TURN_OFF_SQW1: LCALL SEND_BYTE LCALL SEND_STOP RET SQW_CONTROL_4KHZ: LCALL SEND_START MOV A,#0D0H LCALL SEND_BYTE MOV A,#07H;DAT DIA CHI LAM VIEC
- LCALL SEND_BYTE MOV A,#81H JNB SQW,TURN_OFF_SQW2 MOV A,#91H TURN_OFF_SQW2: LCALL SEND_BYTE LCALL SEND_STOP RET SQW_CONTROL_8KHZ: LCALL SEND_START MOV A,#0D0H LCALL SEND_BYTE MOV A,#07H;DAT DIA CHI LAM VIEC LCALL SEND_BYTE MOV A,#82H JNB SQW,TURN_OFF_SQW3 MOV A,#92H TURN_OFF_SQW3: LCALL SEND_BYTE LCALL SEND_STOP RET SQW_CONTROL_32KHZ:
- LCALL SEND_START MOV A,#0D0H LCALL SEND_BYTE MOV A,#07H;DAT DIA CHI LAM VIEC LCALL SEND_BYTE MOV A,#83H JNB SQW,TURN_OFF_SQW4 MOV A,#93H TURN_OFF_SQW4: LCALL SEND_BYTE LCALL SEND_STOP RET ;*********************************** READ_RAM: MOV R0,#30H MOV BYTECOUNT,#00H CLR LAST_READ LCALL SEND_START MOV A,#0D0H;WRITE COMMAND LCALL SEND_BYTE
- MOV A,#08H LCALL SEND_BYTE;DAT DIA CHI LAM VIEC LCALL SEND_STOP LCALL SEND_START MOV A,#0D1H;READ COMMAND LCALL SEND_BYTE READ_RAM_LOOP1: MOV A,BYTECOUNT CJNE A,#55,NOT_LAST2;KHONG PHAI LAN DOC CUOI CUNG SETB LAST_READ NOT_LAST2: LCALL READ_BYTE MOV @R0,A INC R0 INC BYTECOUNT MOV A,BYTECOUNT CJNE A,#56,READ_RAM_LOOP1 LCALL SEND_STOP RET
- SET_RAM: MOV R0,#30H MOV BYTECOUNT,#00H LCALL SEND_START MOV A,#0D0H;WRITE COMMAND LCALL SEND_BYTE MOV A,#08H LCALL SEND_BYTE;DIA CHI LAM VIEC SET_RAM_LOOP: MOV A,@R0 LCALL SEND_BYTE INC R0 INC BYTECOUNT MOV A,BYTECOUNT CJNE A,#38H,SET_RAM_LOOP LCALL SEND_STOP RET OSC_CONTROL: LCALL SEND_START MOV A,#0D0H;WRITE COMMAND LCALL SEND_BYTE MOV A,#00H
- LCALL SEND_BYTE LCALL SEND_STOP LCALL SEND_START MOV A,#0D1H;READ COMMAND LCALL SEND_BYTE SETB LAST_READ LCALL READ_BYTE PUSH ACC;CAT SECOND TRONG REAL TIMER LCALL SEND_STOP LCALL SEND_START MOV A,#0D0H;WRITE COMMAND LCALL SEND_BYTE MOV A,#00H LCALL SEND_BYTE JB OSC,OSC_ON POP ACC SETB ACC.7;OSC DISABLE LJMP SET_OSC OSC_ON: POP ACC CLR ACC.7 SET_OSC:
- LCALL SEND_BYTE LCALL SEND_STOP RET ALARM_TEST: JNB ALARM,EXIT_ALARM MOV A,MINUTE CJNE A,MINUTE_ALARM,EXIT_ALARM MOV A,HOUR CJNE A,HOUR_ALARM,EXIT_ALARM CLR P3.6;BAO THUC EXIT_ALARM: SETB P3.6;TAT BAO THUC RET
CÓ THỂ BẠN MUỐN DOWNLOAD
-
đồ án: thiết kế chương trình điều khiển thang máy 4 tầng sử dụng PLC S7-200, chương 1
6 p |
570 |
371
-
đồ án: thiết kế chương trình điều khiển thang máy 4 tầng sử dụng PLC S7-200, chương 5
5 p |
499 |
317
-
viết chương trình điều khiển 8 led sáng dồn, chương 2
15 p |
492 |
242
-
viết chương trình điều khiển 8 led sáng dồn, chương 3
5 p |
353 |
172
-
CHƯƠNG VII: HƯỚNG DẪN SỬ DỤNG TÍNH NĂNG 3D
5 p |
466 |
170
-
thiết bị báo cháy tự động, chương xi
30 p |
122 |
69
-
chương3: chương trình hiện thị ra led7: 1. 2. quét giờ phút giây + thứ quét
6 p |
143 |
60
-
Xây dựng các chương trình ứng dụng cho PLD có trong phòng thí nghiệm của khoa KTĐT1
8 p |
259 |
47
-
Hướng dẫn sử dụng chương trình Microsim Eval 8.0
57 p |
120 |
36
-
Các lệnh lô - gíc và các chương trình 8051
11 p |
68 |
19
-
Các lệnh số học và các chương trình trong 8051
11 p |
57 |
15
-
Giáo án điện dân dụng THPT - ÔN TẬP CUỐI HỌC KỲ (1t)
9 p |
77 |
12
-
Giáo trình hình thành nguyên lý chung của hệ thống báo giờ tự động thông qua tần số xung clock p1
9 p |
37 |
6
-
Thiết kế bo mạch CPLD/FPGA phát triển phục vụ cho nghiên cứu - đào tạo
5 p |
13 |
6
-
Giáo trình hướng dẫn phân tích nguyên lý chung của hệ thống báo giờ tự động thông qua tần số xung clock p1
9 p |
43 |
4
-
Dạy robot thông qua lời thoại và hành động minh họa
4 p |
22 |
3
-
Nghiên cứu cải tiến máy kéo kim loại MTS tại Trung tâm thí nghiệm thực hành khoa Cơ điện và Công trình phục vụ đào tạo
6 p |
29 |
1