找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 7591|回复: 4
打印 上一主题 下一主题
收起左侧

电子钟~一按按键数码管就闪,帮忙看下程序,先谢了

[复制链接]
跳转到指定楼层
楼主
ID:15225 发表于 2009-7-12 18:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

 SHI_J BIT P1.4
 FEN_J BIT P1.5
 MIAO_J BIT P1.6
 SHI_1 EQU 30H;2是各位,1是十位
 SHI_2 EQU 31H
 FEN_1 EQU 32H
 FEN_2 EQU 33H
 MIAO_1 EQU 34H
 MIAO_2 EQU 35H
 YIWEI EQU 36H
 JIANPAN EQU 37H

 ORG 0000H
 AJMP MAIN
 ORG 000BH
 AJMP T0M2
 ORG 0100H

MAIN: 
 MOV SP,#60H
 MOV TMOD,#01H
 MOV TL0,#LOW(65536-49900)
 MOV TH0,#HIGH(65536-49900)
 MOV IE,#82H;SETB EA SETB ET0
 SETB TR0
 LCALL CHUSHI
XUNHUAN:
 LCALL XIAN
 LCALL JIAN
 LCALL ZHI
 LCALL XIAN
 SJMP XUNHUAN
;********************************中断计时***************************
T0M2:
 MOV A,MIAO_2
 CJNE A,#9,MIAO_2_AA
 JMP MIAO_2_BB
MIAO_2_AA:
 INC R0
 CJNE R0,#20,WEIDAO
 INC MIAO_2
 MOV R0,#0
 JMP WEIDAO
MIAO_2_BB:
 INC MIAO_2
WEIDAO:
 MOV TL0,#LOW(65536-49900)
 MOV TH0,#HIGH(65536-49900)
 CLR TF0
 RETI 
;***********************************初始化*************************
CHUSHI:
 MOV SHI_1,#1
 MOV SHI_2,#2
 MOV FEN_1,#0
 MOV FEN_2,#0
 MOV MIAO_1,#0
 MOV MIAO_2,#0
 RET
;***********************************键盘*************************
JIAN:
 MOV P1,#0FFH
 MOV A,P1
 CJNE A,#0FFH,JIXU
 RET
JIXU:
 LCALL DELAY_JIAN
 CJNE A,#0FFH,PANJIAN
 RET
PANJIAN:
 JNB SHI_J,SHI
 JNB FEN_J,FEN
 JNB MIAO_J,MIAO
 RET
SHI: 
 INC SHI_2
 RET
FEN:
 INC FEN_2 
 RET
MIAO:
 MOV MIAO_1,#0
 MOV MIAO_2,#0
 RET
;*******************************显示赋值**************************
ZHI:
 MOV R1,#35H
 CJNE @R1,#11,MIAO_2_P
 MOV MIAO_2,#0
 INC MIAO_1
MIAO_2_P: 
 DEC R1
 CJNE @R1,#6,FEN_1_P
 MOV MIAO_1,#0
 INC FEN_2
FEN_1_P:
 DEC R1
 CJNE @R1,#10,FEN_2_P
 MOV FEN_2,#0
 INC FEN_1
FEN_2_P:
 DEC R1
 CJNE @R1,#6,SHI_1_P
 MOV FEN_1,#0
 INC SHI_2
SHI_1_P:
 DEC R1
 DEC R1
 CJNE @R1,#2,SHI_1_1
 INC R1
 CJNE @R1,#4,JIESHU
 MOV SHI_1,#0
 MOV SHI_2,#0
 SJMP JIESHU
SHI_1_1:
 INC R1
 CJNE @R1,#10,JIESHU
 MOV SHI_2,#0
 INC SHI_1
JIESHU:
 RET
;*************************显示***********************
XIAN:
 MOV R1,#30H
 MOV R7,#6
 MOV YIWEI,#0FEH 
 MOV DPTR,#TABLE
XIAN_1:
 MOV A,@R1
 MOVC A,@A+DPTR
 MOV P0,A
 MOV P2,YIWEI
 LCALL DELAY_XIAN
 MOV P0,#0FFH
 INC R1
 MOV A,YIWEI
 RL A
 MOV YIWEI,A
 DJNZ R7,XIAN_1
 RET
;*****************************************************
DELAY_JIAN:
 MOV R6,#10
DEL_JIAN_1:
 MOV R5,#248
 DJNZ R5,$
 DJNZ R6,DEL_JIAN_1
 RET


DELAY_XIAN:
 MOV R6,#7
DEL_XIAN_1:
 MOV R5,#170
 DJNZ R5,$
 DJNZ R6,DEL_XIAN_1
 RET


TABLE: 
 DB 0C0H,0F9H,0A4H,0B0H,099H,092H,082H,0F8H,080H,090H,090H

 END

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:3271 发表于 2009-7-15 10:35 | 只看该作者
当然会闪咯,延时程序改用显示程序,多调用几次,就达到了延时,同时数码管是不会闪烁的,刚学的时候碰到过,后来想了几下就想出来了
回复

使用道具 举报

板凳
ID:15225 发表于 2009-7-19 19:16 | 只看该作者
谢了
版主
看来哦的思维太狭隘了
回复

使用道具 举报

地板
ID:10806 发表于 2009-7-22 08:21 | 只看该作者
楼主:
MOV TL0,#LOW(65536-49900)
 MOV TH0,#HIGH(65536-49900)
这是什么意思,可以这样书写么?
我还看到过一些其他类似的 MOV  TH0, #(65536-2000)/10
MOV TL0, #(65536-2000) MOD 10
我刚学汇编,这些表示方面没见过,不知道是什么意思?

回复

使用道具 举报

5#
ID:15225 发表于 2009-7-27 09:28 | 只看该作者
彼此彼此  我也刚学的

MOV  TL0,#LOW(65535-49900)
就是把差值的低位送到TL0,这样写比较方便

下面那个我也不大懂
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表