Thông báo

Collapse
No announcement yet.

Giúp đỡ em về đồ án môn học ds1307 & 8051

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Giúp đỡ em về đồ án môn học ds1307 & 8051

    em đang làm đề tài thiết kế mạch đồng hồ số dùng ds1307 và 8051
    phần cứng em đã thiết kế xong em con phần code asm không biết viết nhờ anh chị trong diễn đàng giúp giùm em,vì lúc học chỉ học được xuất led đơn nên hong biết làm sao nửa bối rối quá sắp bảo vệ đồ án rồi nhờ anh chị trong diễn đàng giúp em với!!!
    sơ đồ mạch :http://www.megaupload.com/?d=T8U45ORZ
    mạch hoàn chỉnh:http://www.megaupload.com/?d=X8YLA2ZU

  • #2
    HTML Code:
    		$INCLUDE(REG51.INC)
    ;============I2C COMMUNICATE====================
    ;== DS1307 ======= Add 0d0h===========
    ; == 24c08 ======== Add 050h===========
    ; ==============================================
    ; Write : start -> A=0d0H -> send-> A=address -> send
    ;-> A=value -> send -> stop 
    ; Read : start -> A=0d0h -> send-> A=address -> send 
    ;-> A=0d1h ->send -> recv -> stop 
    ; ==================================================
    		RS 			BIT P3.0
    		RW 			BIT P3.1
    		ENABLE 		BIT P3.2
    		
    		SCL      	BIT P3.3
    		SDA      	BIT P3.4
    ;======= GIO HE THONG ==============
    		BYTE_CONV	DATA 09H
    		HOUR			DATA 0AH
    		MINUTE		DATA 0BH
    		SECOND		DATA 0CH
    		ADDRESS		DATA 0DH
    ;======= VUNG NHO HIEN THU LCD =====		
    		D_SECOND_L 	DATA 0EH
    		D_SECOND_H	DATA 0FH
    		D_MINUTE_L	DATA 10H
    		D_MINUTE_H	DATA 11H
    		D_HOUR_L		DATA 12H
    		D_HOUR_H		DATA 13H
    ;===================================
    			ORG 0000H	   
    		
    MAIN:		
    	
    			MOV  SP,#30H
    			MOV  R6,#00H
    			MOV  HOUR,#00H
    			MOV  MINUTE,#00H
    			MOV  SECOND,#00H			
    			ACALL CONV
    			ACALL LCDSETUP
    LOOP:
    ;======= Doc du lieu tu ds1307 =====
    ;-DOC THOI GIAN TU DS1307----------------  
    READ_TIME: 
              MOV    ADDRESS,#00H     ; DIA CHI BYTE SECOND TRONG DS
              MOV    R0,#SECOND       ; VUNG NHO CHUA GIO,PHUT,GIAY
              MOV    BYTE_CONV,#03H	 ; DOC DU DU LIEU GIO,PHUT,GIAY
                                       
    READ_CONTINUE:  	 
    			 MOV    A,#0D0H          ; SE CHI VAO DS
              ACALL  START
              ACALL  SEND                    
              MOV    A,ADDRESS        ; DIA CHI CAN DOC 00h
              ACALL  SEND	          ; GHI VAO DIA CHI CAN DOC.
    ;READ_CONTINUE:          
              ACALL  START	          ; START DE DOC.
              MOV    A,#0D1H          ; SE DOC DU LIEU
              ACALL  SEND
              ACALL  RECV
              MOV    @R0,06H     		 ; DOC DU LIEU TU DS VE
              ACALL  STOP
              DEC    R0             
              INC    ADDRESS          ; TANG DIA CHI LEN PHUT,GIO          
              DJNZ   BYTE_CONV,READ_CONTINUE          
              
    			 CALL  CONV
    			 CALL  HIENTHI
    			 JMP	 LOOP
    			 
    ;=================================================
    ;======== Ghi du lieu vào DS1307 =================; Phan nay cac ban co the viet them vao???
    GHI_DL:
    		MOV A,#0D0H
    		LCALL START
    		LCALL SEND
    		MOV A,#00H 		; Dia chi can ghi 00h
    		LCALL SEND
    		MOV A,#5 		; ghi giá tri 5 vao ô nho 00H
    		LCALL SEND
    		LCALL STOP
    		RET
    		
    ;===============================================
    ;====Khoi tao bit Start=========================
    START:
              CLR    SCL    
              SETB   SDA
              NOP 
              SETB   SCL         ; START DUOC TAO RA KHI MA CHAN SCL DANG O MUC CAO
              CLR    SDA         ; VA CHAN SDA XUONG THAP. 
              NOP 
              RET       
                 
    ;==============================================
    ;====khoi tao bit Stop=========================         
    STOP:
              NOP 
              CLR    SDA          ; STOP DUOC TAO RA KHI MA CHAN SCL DANG O MUC CAO
              SETB   SCL          ; VA CHAN SDA TU THAP LEN CAO.
              NOP 
              SETB   SDA
              NOP 
              CLR    SCL
              RET
              
    ;==============================================      
    ;=====Doc data tu DS1307=======================
      
    RECV:       
              MOV    R7,#8
    BACK_RECV:
              SETB   SCL          ; NHAN DU LIEU KHI MA SCL DANG O MUC CAO
              NOP 
              MOV    C,SDA
              NOP 
              CLR    SCL          ; KET THUC QUA TRINH NHAN
              NOP   
              MOV    A,R6         ; CHUYEN DU LIEU RA R6
              RLC    A            ; A,R6 KHONG PHU THUOC VAO DU LIEU BAN DAU.
              MOV    R6,A
              DJNZ   R7,BACK_RECV
              
              SETB   SDA         
              NOP          
              SETB   SCL          ; TAO XUNG THU 9
              NOP                 ; DAM BAO DO RONG TOI THIEU LA 450 ns
              CLR    SCL
              NOP                 
              RET
              
    ;==============================================  
    ;=====Ghi data vao DS1307======================
         
    SEND:
              MOV    R7,#8       ; DU LIEU LA 8 BIT 
    BACK_SEND:
             							;--CHU Y QUAN TRONG LA DU LIEU CHI DUOC THAY DOI KHI SCL O MUC THAP.
              CLR    SCL         ; SAU START THI XUONG MUC THAP DE THAY DOI DU DIEU
              NOP  
              RLC    A           ; GHI TUNG BIT DU LIEU(TU BIT CO TRONG SO CAO NHAT)
              MOV    SDA,C       ; TRUYEN
              SETB   SCL         ; KET THUC QUA TRINH THAY DOI DU LIEU.
              NOP                ; DAY CHINH LA DO DAI DINH XUNG
              CLR    SCL    
              NOP 
              DJNZ   R7,BACK_SEND
              SETB   SDA          
              NOP 
              SETB   SCL          ; TAO XUNG THU 9
              NOP 
              CLR    SCL
              NOP 
              RET  
    
    ;=========================================
    ;-CHUYEN DOI MA TU BCD-->ASCII------------
    
    CONV:
              MOV    R0,#SECOND      ; BAT DAU VUNG NHO GIO,PHUT,GIAY DA LAY TU DS
              MOV    R1,#D_SECOND_L  ; BAT DAU VUNG NHO DA GIAI MA DE HIEN THI. 
              MOV    BYTE_CONV,#03H	; CHUYEN DOI DU 3 BYTE GIO,PHUT,GIAY
    CONTINUE_CONV:   
    			 MOV    A,@R0         	; GUI DU LIEU CAN CHUYEN MA VAO THANH GHI A
              MOV    R2,A          	; LUU GIA TRI THANH GHI A VAO R2 
              ANL    A,#0FH        	; CHE MAT BYTE CAO CUA ACC
              ORL    A,#30H
              MOV    @R1,A  
              INC    R1            	; TANG DIA CHI VUNG NHO THOI GIAN
              MOV    A,R2   
              SWAP   A             	; DOI BYTE CAO <-->BYTE THAP
              ANL    A,#0FH
              ORL    A,#30H
              MOV    @R1,A         
              DEC    R0            
              INC    R1
              DJNZ BYTE_CONV,CONTINUE_CONV
              RET
    		
    ;==============================================
    ;====Cai dat hien thi LCD======================
    ;====Cac ban viet lai ham nay cho don gian=====
    
    LCDSETUP:	   
    	 MOV A,#38H					; LCD 2 DONG, MA TRAN 5X7
    	 ACALL COMMAND				; XUAT LENH
    	 MOV A,#0CH					; BAT HIEN THI, TAT CON TRO
    	 ACALL COMMAND
    	 MOV A,#01H					; XOA LCD
    	 ACALL COMMAND
    	 MOV A,#06H					; DICH CON TRO SANG PHAI
    	 ACALL COMMAND
    HIENTHI:
    	 
    	 MOV A,#02H					; DUA CON TRO VE DAU DONG
    	 ACALL COMMAND
    	 MOV A,#06H					; DICH CON TRO SANG PHAI
    	 ACALL COMMAND	
    	 MOV A,#'T'
    	 ACALL DISPLAY
    	 MOV A,#'I'
    	 ACALL DISPLAY	
    	 MOV A,#'M'
    	 ACALL DISPLAY
    	 MOV A,#'E'
    	 ACALL DISPLAY
    	 MOV A,#'R'
    	 ACALL DISPLAY	 
    	 MOV A,#':'
    	 ACALL DISPLAY	
    	 MOV A,D_HOUR_H		 	; GIO
    	 ACALL DISPLAY
    	 MOV A,D_HOUR_L
    	 ACALL DISPLAY
    	 MOV A,#':'
    	 ACALL DISPLAY	
    	 MOV A,D_MINUTE_H			; PHUT
    	 ACALL DISPLAY
    	 MOV A,D_MINUTE_L
    	 ACALL DISPLAY
    	 MOV A,#':'
    	 ACALL DISPLAY	
    	 MOV A,D_SECOND_H			; GIAY
    	 ACALL DISPLAY
    	 MOV A,D_SECOND_L
    	 ACALL DISPLAY 	 
    	 RET	
    	 
    ;================================================
    ;====Xuat lenh va hien thi LCD ==================
    
    COMMAND:
       	ACALL READY
    		MOV P2,A
       	CLR RS
       	CLR RW
       	SETB ENABLE
       	CLR ENABLE
       	RET
    DISPLAY:
       	ACALL READY
    		MOV P2,A
       	SETB RS
       	CLR RW
       	SETB ENABLE
       	CLR ENABLE
       	RET
    READY:
    		SETB P2.7
       	CLR RS
       	SETB RW
    KT:	CLR ENABLE
       	SETB ENABLE
    		JB P2.7,KT
       	RET
    
    	END
    bạn tham khảo code này nhé! good luck!!!!!!!!
    Attached Files

    Comment


    • #3
      Ban viet quá Good roi , minh chi gop y nhỏ thôi . Do con DS1307 co san ram roi .Minh khong can phai gang them EERom cho ton tien va phuc tap mach
      web:
      tel : 0903728070
      Bán cáp lập trình S7-200 : 250.000 đ/sợi ( cổng com )
      Bán cáp lập trình Mishu : 200.000 đ/sợi
      Bảo hành 01 năm.

      Comment


      • #4
        Chào bạn,mình đang làm mạch đồng hồ số có hẹn giờ.nhưng mình chưa rành cái này lắm,thấy trên diễn đàn bạn đã làm cái này.nếu Bạn có đồ án hay tài liệu về cái này thì gửi cho mình tham khảo với nhe!
        giao tiếp của con DS1307 - 8051-HIỂN THỊ LED 7 ĐOẠN + HẸN GIỜ
        vẽ và chạy mô phỏng trên protues,lập trình bang ngôn ngữ ASM
        gmail:thoisinhvienqnu@gmail.com

        Comment


        • #5
          Chào bạn,mình đang làm mạch đồng hồ số có hẹn giờ.nhưng mình chưa rành cái này lắm,thấy trên diễn đàn bạn đã làm cái này.nếu Bạn có đồ án hay tài liệu về cái này thì gửi cho mình tham khảo với nhe!
          giao tiếp của con DS1307 - 8051-HIỂN THỊ LED 7 ĐOẠN + HẸN GIỜ
          vẽ và chạy mô phỏng trên protues,lập trình bang ngôn ngữ ASM
          gmail:thoisinhvienqnu@gmail.com

          Comment


          • #6
            Nguyên văn bởi tsvqnu Xem bài viết
            Chào bạn,mình đang làm mạch đồng hồ số có hẹn giờ.nhưng mình chưa rành cái này lắm,thấy trên diễn đàn bạn đã làm cái này.nếu Bạn có đồ án hay tài liệu về cái này thì gửi cho mình tham khảo với nhe!
            giao tiếp của con DS1307 - 8051-HIỂN THỊ LED 7 ĐOẠN + HẸN GIỜ
            vẽ và chạy mô phỏng trên protues,lập trình bang ngôn ngữ ASM
            gmail:thoisinhvienqnu@gmail.com
            bạn nên tự tham khảo thì tốt hơn, đây là 1 dạng mạch dễ nếu bạn hok tự thiết kế và viết code thì có đọc code hoàn chỉnh cũng ko thể hiểu đâu nhất là code ASM thì chỉ có người viết mới hiểu quá trình code chạy thôi (đôi khi để lâu còn quên ko nhớ nó chạy thế nào)

            Comment


            • #7
              chung ơi giup mình viết code dong ho dung DS1307 - 89c52-HIỂN THỊ LED 7 ĐOẠN
              .......SPKTNĐ////tandatvip@gmail.com...........

              Comment


              • #8
                bài viết của bác mr.ngoc thật là pro
                Abay.vn | ,

                Comment


                • #9
                  không ai giúp mình à một đoạn code asm test ds1307
                  .......SPKTNĐ////tandatvip@gmail.com...........

                  Comment

                  Về tác giả

                  Collapse

                  kimnhan179 Tìm hiểu thêm về kimnhan179

                  Bài viết mới nhất

                  Collapse

                  Đang tải...
                  X