原创 1302的汇编子程序

2006-10-31 16:04 7987 10 11 分类: MCU/ 嵌入式

1302的汇编子程序,是从网上找到的,有点儿灌水嫌疑,呵呵,icon


;*********************************************************************/
T_CLK Bit P2.5                         ;实时时钟时钟线引脚
T_IO  Bit P2.4                         ;实时时钟数据线引脚
T_RST Bit P2.7                         ;实时时钟复位线引脚


Second data 60h
Minute data 61h
Hour data 62h
Day data 63h
Month data 64h
Week data 65h
Year data 66h


org 0000h
ljmp main
org 0100h


main:
 mov r7, #7
 mov r1, #60h
 mov a, #00h
lop: mov @r1, a
 inc  r1
 djnz r7, lop
 
 lcall Set1302
lcall dly
;lcall dly
;lcall dly 
 ;clr P1.0
 ;mov c, P0.0
 lcall Get1302


 mov r3, 60h
 clr P1.1
 mov c, P0.1
 jnc main
 
dly: mov r6,#0ffh
dly1: mov r5,#0ffh
dly2: mov r4,#10h
dly3: djnz r4,dly3
 djnz r5,dly2
 djnz r6,dly1
 ret 


 


 


;**********************************************************
;子程序名:Set1302
;功    能:设置DS1302 初始时间,并启动计时。
;说    明:
;调    用:RTInputByte
;入口参数:初始时间在:Second,Minute,Hour,Day,Month,Week.YearL(地址连续)
;出口参数:无
;影响资源:A B R0 R1 R4 R7
;**********************************************************
Set1302:
          CLR    T_RST
          CLR    T_CLK
          SETB   T_RST
          MOV    B,     #8EH        ;控制寄存器
          LCALL  RTInputByte 
          MOV    B,     #00H        ;写操作前WP="0"
          LCALL  RTInputByte 
          SETB   T_CLK
          CLR    T_RST


          MOV    R0,    #Second;
          MOV    R7,    #7        ;秒 分 时 日 月 星期 年
          MOV    R1,    #80H      ;秒写地址
S13021:   CLR    T_RST
          CLR    T_CLK
          SETB   T_RST
          MOV    B,     R1        ;写秒 分 时 日 月 星期 年 地址
          LCALL  RTInputByte 
          MOV    A,     @R0       ;写秒数据
          MOV    B,     A
          LCALL  RTInputByte 
          INC    R0
          INC    R1
          INC    R1
          SETB   T_CLK
          CLR    T_RST
          DJNZ   R7,    S13021
          CLR    T_RST
          CLR    T_CLK
          SETB   T_RST
          MOV    B,     #8EH        ;控制寄存器
          LCALL  RTInputByte 
          MOV    B,     #80H        ;控制,WP="1",写保护
          LCALL  RTInputByte 
          SETB   T_CLK
          CLR    T_RST
          RET
;**********************************************************
;子程序名:Get1302
;功    能:从DS1302 读时间
;说    明:
;调    用:RTInputByte,RTOutputByte
;入口参数:时间保存在:Second,Minute,Hour,Day,Month,Week.YearL
;出口参数:无
;影响资源:A B R0 R1 R4 R7
;设    计:net                  日    期:2002-03-19
;修    改:                     日    期: 
;**********************************************************
Get1302:     
          MOV    R0,    #Second;
          MOV    R7,    #7
          MOV    R1,    #81H       ;秒地址
G13021:   CLR    T_RST
          CLR    T_CLK
          SETB   T_RST
          MOV    B,     R1        ;秒 分 时 日 月 星期 年 地址
          LCALL  RTInputByte 
          LCALL  RTOutputByte
          MOV    @R0,   A         ;秒
          INC    R0
          INC    R1
          INC    R1
          SETB   T_CLK
          CLR    T_RST
          DJNZ   R7,    G13021
          RET
;**********************************************************
;功    能:写1302一字节  (内部子程序)
;**********************************************************
RTInputByte: 
          MOV    R4,    #8
Inbit1:   MOV    A,     B
   RRC    A
          MOV    B,     A
   nop
   nop
   nop 
          MOV    T_IO,  C
          SETB   T_CLK
   nop
   nop
          CLR    T_CLK
          DJNZ   R4,   Inbit1
          RET
;**********************************************************
;功    能:读1302一字节  (内部子程序)
;**********************************************************
RTOutputByte:
          MOV    R4,    #8
Outbit1:  MOV    C,     T_IO
          RRC    A
          SETB   T_CLK
          nop
   CLR    T_CLK
          nop
   DJNZ   R4,    Outbit1
          nop
   RET
;***************************************************
end

文章评论1条评论)

登录后参与讨论

用户16356 2007-2-18 04:07

Help me please I want to find my friends
相关推荐阅读
用户62860 2008-07-01 11:19
给同学们的实验报告模板
报告模板,请参考。...
用户62860 2008-05-28 08:24
MCS-51的一些汇编语言子程序
虽然比较老,但是还能用得上。...
用户62860 2008-03-02 12:00
开学了,本文送给我的学生们共勉。
“没来大学,精神准备;来到大学,白白浪费;吹牛派对,作弊劝退……”象牙塔内,天之骄子,怎能过得如此狼狈?           “学生在增多,学校规模也在扩大,但是如何培养更多的杰出人才?”毕业即失业!...
用户62860 2008-03-02 11:18
如果使用超星不方便,就用PDG阅览器
很多超星图书馆的文件看不了,如果不方便,就用PDG阅览器试一下。...
用户62860 2008-01-17 21:06
其实我们很幸福
幸福是一种心灵的振颤。它像会倾听音乐的耳朵一样,需要不断地训练。幸福常常是朦胧的,很有节制地向我们喷洒甘霖。你不要总希冀轰轰烈烈的幸福,它多半只是悄悄地扑面而来。你也不要企图把水龙头拧得更大,使幸福很...
用户62860 2007-06-30 18:13
如果这样就结婚吧。
第一;你们彼此都是对方最好的朋友,不带任何条件的,喜欢与对方在一起. 第二;彼此很容易沟通,互相可以很敞开地坦白任何事情,而不必担心被对方怀疑或轻视. 第三;两个人在心灵上有共同的价值观和理念,并且对...
EE直播间
更多
我要评论
1
10
关闭 站长推荐上一条 /3 下一条