Anh chị nào biết lập trình ngắt để cài đặt giờ phút giây cho DS1307 xin chỉ giúp em với, có code hay giải thuật như thế nào xin cho em vài ý kiến
Thông báo
Collapse
No announcement yet.
lập trình ngắt để cài đặt giờ cho DS1307
Collapse
X
-
àh em tính dùng ngắt ngoài để cài đặt giờ cho 1307 đó anh, 1 nút chọn chế độ(chọn cài đặt giờ, phút hay là giây) 2 nút :tăng và giảm, tại vì đâu phải gắn vô là con 1307 chạy đúng giờ như cái đồng hồ nhà mình đâu, nó chạy theo thời gian mà mình đã thiết lập cho nó mà phải ko ạ, nên phải chỉnh lại thời gian
Comment
-
Nguyên văn bởi ylotus Xem bài viếtAnh chị nào biết lập trình ngắt để cài đặt giờ phút giây cho DS1307 xin chỉ giúp em với, có code hay giải thuật như thế nào xin cho em vài ý kiến
http://www.mediafire.com/?1yqdq1rih5q6app
Chúc vuiMạch nạp Pickit 2 SE ---> 170k BH 1 năm
Pic 18F2550 PDIP Thailand bao test 60K/1c
Comment
-
em cám ơn anh đã giúp đỡ nhưng mà em đang lập trình bằng asm anh ơi, C thì em bó tay, mấy anh có biết đồng hồ mà chạy chậm quá thì nguyên nhân là do đâu ko, anh nào rảnh coi giúp em đoạn code này, em làm cho 1con led giây thôi mà sao nó chạy chậm lắm mà sai nữa, ai biết sửa giúp em
;KHAI BAO
GIAY DATA 60H
DONVI_GIAY DATA 63H
CHUC_GIAY DATA 64H
LED_GIAY BIT P2.0
LED_C_GIAY BIT P2.1
;--------I2C-------
SCL BIT P3.0
SDA BIT P3.1
LED_DATA EQU P0
BYTE_W EQU 11010000B
BYTE_R EQU 11010001B
ADD_REG EQU 20H
DATA_RTC EQU 21H
ORG 0000H
MAIN:
MOV GIAY,#0
MOV TMOD,#10H
MOV ADD_REG,#0
MOV DATA_RTC,#0
MOV A,#00H
MOV LED_DATA,#00H
;**********WRITE_CLOCK**********
WRITE_CLOCK:
SETB SCL ;KIEM TRA BUS ROI
SETB SDA
CALL START_CLOCK
MOV A,#BYTE_W
CALL TACH_BYTE
CLR SCL ;4 HANG KT ACK
SETB SCL
JB SDA,$
CLR SCL
MOV A,ADD_REG
CALL TACH_BYTE
CLR SCL ;4 HANG KT ACK
SETB SCL
JB SDA,$
CLR SCL
MOV A,DATA_RTC
CALL TACH_BYTE
CLR SCL ;4 HANG KT ACK
SETB SCL
JB SDA,$
CLR SCL
CALL STOP_CLOCK
;********CHUONG TRINH NHAN DU LIEU VA HIEN THI***********
RECEIVE_DATA:
;========READS SECONDS=============
READ_SEC:
MOV ADD_REG,#00H
LCALL READ_RTC
MOV GIAY,DATA_RTC
LCALL STOP_CLOCK
CALL HIENTHI_S
LJMP RECEIVE_DATA
;*****CHUONG TRINH DOC DU LIEU TU 1307*****
READ_RTC:
SETB SCL ;KIEM TRA BUS ROI
SETB SDA
CALL START_CLOCK
MOV A,#BYTE_W
CALL TACH_BYTE
CLR SCL ;4 HANG ACK
SETB SCL
JB SDA,$
CLR SCL
MOV A,ADD_REG
CALL TACH_BYTE
CLR SCL ;4 HANG ACK
SETB SCL
JB SDA,$
CLR SCL
CALL STOP_CLOCK
SETB SCL ;KIEM TRA BUS ROI
SETB SDA
CALL START_CLOCK
MOV A,#BYTE_R
CALL TACH_BYTE
CLR SCL ;4 HANG ACK
SETB SCL
JB SDA,$
CLR SCL
CALL SEND_DATA
SETB SCL ;NOT ACK
SETB SDA
CALL STOP_CLOCK
RET
;--------------HIENTHI_RTC---------------
;**********************************
HIENTHI_S:
CALL BINBCD_GIAY
MOV DPTR,#MALED
MOV A,DONVI_GIAY
MOVC A,@A+DPTR
MOV LED_DATA,A
SETB LED_GIAY
CLR LED_C_GIAY
CALL DELAY
CLR LED_GIAY
MOV DPTR,#MALED
MOV A,CHUC_GIAY
MOVC A,@A+DPTR
MOV LED_DATA,A
SETB LED_C_GIAY
CALL DELAY
CLR LED_C_GIAY
RET
;**********CHUONG TRINH TACH BYTE***********
TACH_BYTE:
MOV R7,#8
GG: RLC A
MOV SDA,C
SETB SCL
CLR SCL
DJNZ R7,GG
RET
;----------DUA DU LIEU RA MANG I2C--------------
SEND_DATA:
MOV R7,#8
CLR SCL
DG: MOV C,SDA
SETB SCL
CLR SCL
RLC A
DJNZ R7,DG
MOV DATA_RTC,A
RET
;---------START-------------
START_CLOCK:
SETB SCL ;trong khi SCL=1
NOP
SETB SDA ;SDA tu 1
NOP
CLR SDA ;xuong 0
NOP
CLR SCL
RET
;---------STOP-----------
STOP_CLOCK:
SETB SCL ;trong khi SCL=1
NOP
CLR SDA ;SDA tu 0
NOP
SETB SDA ; len 1
NOP
CLR SCL
RET
;**********CHUONG TRINH DOI SANG MA BCD************
BINBCD_GIAY:
MOV A,GIAY
MOV B,#10
DIV AB
MOV CHUC_GIAY,A
MOV DONVI_GIAY,B
RET
DELAY:
clr tr1
mov th1,#high(-500)
mov tl1,#low(-500)
setb tr1
jnb tf1,$
clr tf1
ret
MALED:
DB 03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,09H
END
Comment
-
- Code bạn có vấn đề
- chạy nhanh hay châm thường là do Ds1307Last edited by vidieukhien1; 09-03-2011, 14:48.Mạch nạp Pickit 2 SE ---> 170k BH 1 năm
Pic 18F2550 PDIP Thailand bao test 60K/1c
Comment
-
Minh thì chưa từng làm con 1307 bao giờ cả, nên không giúp dc bạn.
Nếu bạn chịu khó bỏ thêm mấy chục ngàn mua con DS12C887 thì mình sẽ giúp bạn từ A -> Z
Con 12C887 mình mua 60k, chạy rất tốt, không cần nguồn nuôi, bản thân nó có nguồn nuôi bên trong.
Mình làm 4 cái rồi, cũng mới hơn 1 năm thôi, chưa thấy vấn đề gì xảy ra cả.
Nếu bạn cần thì email cho mình qua: long.nguyenvansc@gmail.com nhé!
Chúc bạn vui!Không biết ngày mai sẽ ra sao?
Mà có ra sao cũng chẳng sao.
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Hỏi về bơm màng bldcbởi vi van phamPhải xem cơ cấu bơm, chứ xem cơ cấu rotor, thì chỉ làm thầy bói xem voi.
-
Channel: Điện tử dành cho người mới bắt đầu
hôm nay, 08:19 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11vg, cám ơn bác...........
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 14:37 -
-
bởi khoine9899
Em chào các anh và mọi người.
Hiện em đang có 1 con bơm màng trong thiết bị y tế đang gặp tình trạng yếu dần hoặc ngừng hoạt động sau thời gian sử dụng
Sau khi tìm hiểu về thông tin của bơm trên mạng thì em được biết...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 11:22 -
-
Trả lời cho Cần mọi người giúp mạch tạo sóng siêu âm máy rửabởi bqviet
-
Channel: Điện tử công suất
27-11-2024, 20:26 -
-
bởi Minhdai95Em chào mọi người, e đang sửa mạch tạo sóng siêu âm cho máy rửa mà chưa có tài liệu để tham khảo sửa, mọi người cho e xin tài liệu ạ...
-
Channel: Điện tử công suất
27-11-2024, 11:37 -
-
bởi pia2k1Cùng câu hỏi và cần được giải đáp thêm ạ...
-
Channel: Hướng dẫn sử dụng diễn đàn
27-11-2024, 11:28 -
-
Trả lời cho Công thức điện tửbởi mèomướpDạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
-
Channel: Tâm tình dân kỹ thuật
26-11-2024, 21:21 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi mèomướpDạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
-
Channel: Thiết bị điện tử cá nhân
26-11-2024, 20:31 -
-
Trả lời cho Xin hỏi về màn hình laptopbởi yname11Ok , thanks bác đã chỉ...
-
Channel: Thiết bị điện tử cá nhân
26-11-2024, 15:06 -
-
bởi nguyendinhvanSau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !
Chập thì thay. Cháy thì tháo
Làm thì láo. Báo thì hay
May thì khoe. Rủi thì bỏ
Thành tích nhỏ. Báo thành to
Làm cho có. Báo chi li
Sai cả li. Báo...-
Channel: Tâm tình dân kỹ thuật
26-11-2024, 00:35 -
Comment