Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
01/30/06 12:08
Read: times


 
#108694 - pls help
Responding to: ???'s previous message
WHAT ARE PRE AND /PRE TAGS .i have written the comments to best of my ability .please try and help
after writing to the rtc how do we check whether the data we have written has been written to the rtc.
the data in rtc is read on pressing key connected to p3.0.
we have tried reading data in the rtc location 00h and outputed on port p2.but all we get on port 2 is ffh
pls verify our code

ds=p3.6
rw=p3.7
cs=p3.5
as=p3.4
p1=ad0 to ad7
P3.3=IRQ

ORG 0000H
LJMP START
ORG 0500H
START: MOV SP,#065H
MOV PCON,#000H
MOV PSW,#000H
MOV IE,#000H
MOV P0,#00H
MOV P1,#00H
MOV P2,#000H
MOV P3,#009H
MOV R0,#000H
MOV R1,#000H
MOV R2,#000H
MOV R3,#000H
MOV R4,#000H
MOV R5,#000H
MOV R6,#000H
MOV R7,#000H
MOV TMOD,#01H
MOV TCON,#00H
SETB P3.3
SETB P3.4
CLR P3.5
SETB P3.6
SETB P3.7

LCALL REGB ;INITIALISE REG B update ended interrupt enabled and 24hrs mode set
;bcd mode selected
LCALL DEL1
LCALL REGA ;INITIALISE REG A ;oscillator on
LCALL DEL1
LCALL REGB1 ;INIT REG B update cycle inhibited for witing data to ram location
LCALL DEL1
LCALL WRITE ;WRITE DATA TO RTC
LCALL REGB ;start update cycle after data is written
LCALL DEL1
HERE: JB P3.0,HERE ;CHECK IF KEY IS PRESSED
LCALL REGB1 ;IF PRESSED inhibit update cycle
LCALL DEL1
LCALL READ ;READ DATA
LCALL DEL1
LCALL REGB ;start update again
MOV P2,R4 ;OP DATA IN R4 TO P2
LJMP HERE
;----------------------------------------------------------------
REGB: MOV R0,#0BH ;ADD OF REGB
MOV R1,#012H ;update ended interrupt enabled and 24hrs mode set
;bcd mode selected and update cycle on
LCALL WRITERTC
RET
REGA: MOV R0,#0AH ;ADD OF REGA
MOV R1,#020H ;DATA OF REG A
LCALL WRITERTC
RET
REGB1: MOV R0,#0BH ;ADD OF REG B
MOV R1,#092H ;update cycle disabled for data read and write
LCALL WRITERTC
RET
;-------------------------------------------------------
WRITE: MOV R0,#00H ;SECS ADDRESS
MOV R1,#30H ;DATA IN SECS PLACE
LCALL WRITERTC
WRITE1: JB P3.3,WRITE1 ;IF UPDATE IS COMPLETE
SETB P0.0 ;P0.0=1 FOR TESTING WHETHER INTERRUPT OCCURED
MOV R0,#02H ;MIN ADDRESS
MOV R1,#30H ;MIN DATA
LCALL WRITERTC
WRITE2: JB P3.3,WRITE2
SETB P0.2
MOV R0,#04H ;HR ADD
MOV R1,#03H ;HR DATA
LCALL WRITERTC
WRITE3: JB P3.3,WRITE3
SETB P0.4
RET
;-----------------------------------------------------------
WRITERTC:
SETB P3.5 ;CS=1 DISABLE CHIP
CLR P3.4 ;AS=0 LATCH ADDRESS
CLR P3.6 ;DS=0
CLR P3.7 ;RW=0
LCALL DEL1

SETB P3.4 ;AS=1 CLEAR ADDRESS IN RTC
SETB P3.6 ;DS=1 DISABLE RD
SETB P3.7 ;RW==1 DISABLE WRITE
CLR P3.5 ;CS=0 ENABLE RTC

LCALL DEL1
MOV P1,R0 ;MOVE ADDRESS IN R0 TO P1
CLR P3.4 ;AS=0 LATCH ADDRESS IN RTC
CLR P3.7 ;RW=0 ENABLE WRITE IN RTC

MOV P1,R1 ;MOVE DATA IN R1 TO P1
LCALL DEL1
SETB P3.4 ;AS=1 CLEAR ADDRESS
SETB P3.5 ;CS=1 DISABLE RTC
SETB P3.7 ;RW=1 DISABLE WRITE TO RTC
RET

;------------------------------------------------------------
DEL1:
DEL1_0: MOV TH0,#0FCH ;DELAY FOR 1MS
MOV TL0,#017H
SETB TCON.4
DEL2: JNB TCON.5, DEL2
CLR TCON.4
CLR TCON.5
RET
;-------------------------------------------------------------
READ: MOV R0,#00H
LCALL READDAT
RET
READDAT: SETB P3.5 ;CS=1 DISABLE RTC
CLR P3.4 ;AS=0 LATCH ADDRESS
CLR P3.6 ;DS=0 DISABLE READ
CLR P3.7 ;RW=0 DISABLE WRITE
LCALL DEL1

SETB P3.6 ;DS=1 DIS
SETB P3.7 ;RW=1
SETB P3.4 ;AS=1
CLR P3.5 ;SELECT CHIP CS=0

LCALL DEL1
MOV P1,R0 ;PUT ADDRESS IN R0 TO P1
CLR P3.4 ;AS=0 LATCH ADDRESS
CLR P3.6 ;DS=0 ENABLE READ FOR RTC
LCALL DEL1
MOV P1,#0FFH ;SET PORT P1 AS I/P PORT
LCALL DEL1

MOV R4,P1 ;MOV DATA ON P1 TO R4
LCALL DEL1
SETB P3.6 ;DS=1
SETB P3.5 ;CS=1
SETB P3.4 ;AS=1
RET




List of 28 messages in thread
TopicAuthorDate
help            01/01/70 00:00      
   Get ready for Thrashing.            01/01/70 00:00      
      Clickable Link            01/01/70 00:00      
   Not exactly a newbie            01/01/70 00:00      
      Help ive fallen down a well            01/01/70 00:00      
      after your first post Kalpak posted            01/01/70 00:00      
   rtc code PLS HELP            01/01/70 00:00      
      Your code            01/01/70 00:00      
      PLS help            01/01/70 00:00      
         Commented code            01/01/70 00:00      
            Comments            01/01/70 00:00      
               pls help            01/01/70 00:00      
                  use gvim            01/01/70 00:00      
                  Pretty Print            01/01/70 00:00      
               a CAPITAL sin            01/01/70 00:00      
         rtc code            01/01/70 00:00      
            RTC code            01/01/70 00:00      
      Your code            01/01/70 00:00      
   pls help            01/01/70 00:00      
      How to post your code            01/01/70 00:00      
   code for rtc            01/01/70 00:00      
      Here is the code you require            01/01/70 00:00      
         andy            01/01/70 00:00      
            The details you require            01/01/70 00:00      
   2 accounts?            01/01/70 00:00      
      Yes!            01/01/70 00:00      
   ds            01/01/70 00:00      
      already said!            01/01/70 00:00      

Back to Subject List