电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 单片机 >> 正文

单片机制作的12864数字钟

作者:佚名    文章来源:本站原创    点击数:    更新时间:2008-12-4
sp;    LCALL wdatsz
                MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV     R1,#64                 ;写入日
                LCALL wdatnyr
m0:             lcall   xszsfm   
                lcall   xsznyr
                lcall   xszxq
                lcall   zh             
                lcall   dz
                SJMP    m0
;***************************************************显示星期子程序<占用区0>
xszxq:          push    dph                    ;保护现场
                push    dpl
                push    acc
                push    psw
                clr     psw.3                  ;进入第0组工作寄存器
                clr     psw.4
                CLR CS2
                SETB CS1
                MOV 33H,#0C0H              ;设行单元初值
                MOV 34H,#0BAH              ;设页单元初值
                MOV 35H,#58H               ;设列单元初值
                MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV     A,25H
                CJNE    A,#1,LOOP16
                MOV     R1,#0
                LCALL Wxqsz
                LJMP xxxx
LOOP16:         CJNE    A,#2,LOOP17
                MOV     R1,#24
                LCALL Wxqsz
                LJMP xxxx
LOOP17:         CJNE    A,#3,LOOP18
                MOV     R1,#48
                LCALL Wxqsz
                LJMP xxxx
LOOP18:         CJNE    A,#4,LOOP19
                MOV     R1,#72
                LCALL Wxqsz
                LJMP xxxx
LOOP19:         CJNE    A,#5,LOOP20
                MOV     R1,#96
                LCALL Wxqsz
                LJMP xxxx
LOOP20:         CJNE    A,#6,LOOP21
                MOV     R1,#120
                LCALL Wxqsz
                LJMP xxxx
LOOP21:         MOV     R1,#144
                LCALL Wxqsz
xxxx:           pop     psw                    ;回复现场
                pop     acc
                pop     dph
                pop     dpl
                RET
;***************************************************显示月日子程序<占用区0>
xsznyr:         push    dph                    ;保护现场
                push    dpl
                push    acc
                push    psw
                clr     psw.3                  ;进入第0组工作寄存器
                clr     psw.4
                CLR CS1
                SETB CS2
                MOV 33H,#0C0H              ;设行单元初值
                MOV 34H,#0B8H              ;设页单元初值
                MOV 35H,#78H               ;设列单元初值
                MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV A,27H
                ANL     A,#0F0h
                CJNE    A,#0,LOOP10
                MOV     R1,#0A0H
                LCALL WDATSZ
                SJMP    LOOP11                 ;月十位为0时消隐
LOOP10:         MOV     R1,A                   ;否则月十位输出数字
                LCALL WDATSZ              
LOOP11:         CLR CS2
                SETB CS1
                MOV 33H,#0C0H              ;设行单元初值
                MOV 34H,#0B8H              ;设页单元初值
                MOV 35H,#40H               ;设列单元初值
                MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV A,27H
                ANL     A,#0Fh
                SWAP    A
                MOV     R1,A                   ;写月个位
                LCALL WDATSZ
                MOV 33H,#0C0H              ;设行单元初值
                MOV 34H,#0B8H              ;设页单元初值
                MOV 35H,#58H               ;设列单元初值
                MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV A,26H
                ANL     A,#0F0h
                CJNE    A,#0,LOOP12
                MOV     R1,#0A0H
                LCALL WDATSZ
                SJMP    LOOP13                 ;日十位为0时消隐
LOOP12:         MOV     R1,A                   ;否则日十位输出数字
                LCALL WDATSZ              
LOOP13:         MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV A,26H
                ANL     A,#0Fh
                SWAP    A
                MOV     R1,A                   ;写日个位
                LCALL WDATSZ
                pop     psw                    ;回复现场
                pop     acc
                pop     dph
                pop     dpl
                RET
;***************************************************显示时分秒子程序<占用区0>
xszsfm:         push    dph                    ;保护现场
                push    dpl
                push    acc
                push    psw
                clr     psw.3                  ;进入第0组工作寄存器
                clr     psw.4
                CLR CS1
                SETB CS2
                MOV 33H,#0C0H              ;设行单元初值
                MOV 34H,#0BCH              ;设页单元初值
                MOV 35H,#60H               ;设列单元初值
                MOV     com,33H                ;设置起始为第1行
                LCALL Wcom
                MOV     com,34H                ;设置第1行0页
                LCALL Wcom
                MOV     com,35H                ;设置第1行0列  
                LCALL Wcom
                MOV     A,2fh                  ;写入时十位
                swap    A
                MOV     R1,A
                LCALL WDATSZ
                MOV com,33H                ;重新设行单元
                LCALL Wcom
                MOV com,34H                ;重新设页单元
                LCALL Wcom
                MOV com,35H        &

上一页  [1] [2] [3] [4] [5] [6] 下一页

Tags:单片机数字钟,单片机,数字钟制作  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询