12887的初始化程序——89C51
12887的初始化程序:
XSDATA1 DATA 30H
XSDATA2 DATA 31H ;初始定义
ORG 0000H
LJMP START
ORG 0003H
LJMP INT0
ORG 0100H
START: MOV P1,#0FFH
MOV P2,#1FH
MOV P3,#0FFH
MOV R3,#200
MOV XSDATA1,#89
MOV XSDATA2,#51 ;开始显示8951,说明显示、初始正确
BEGINK:
LCALL DIS
DJNZ R3,BEGINK
LCALL TIME
LJMP MAIN
MAIN: LCALL DIS
AJMP MAIN
TIME: MOV DPTR,#000AH ;停止12887计时
MOV A,#70H
MOVX @DPTR,A
MOV DPTR,#000BH ;禁止芯片内部更新周期
MOV A,#0A6H
MOVX @DPTR,A
MOV DPTR,#0000H ;秒时标单元及报警单元
MOV A,#06H
MOVX @DPTR,A
INC DPTR
MOV A,#0FFH
MOVX @DPTR,A
INC DPTR ;分时标单元及报警单元
MOV A,#34H
MOVX @DPTR,A
INC DPTR
MOV A,#0FFH
MOVX @DPTR,A
INC DPTR ;时时标单元及报警单元
MOV A,#09H
MOVX @DPTR,A
INC DPTR
MOV A,#0FFH
MOVX @DPTR,A
INC DPTR ;星期时标单元
MOV A,#05H
MOVX @DPTR,A
INC DPTR ;日时标单元
MOV A,#1AH
MOVX @DPTR,A
INC DPTR ;月时标单元
MOV A,#03H
MOVX @DPTR,A
INC DPTR ;年时标单元
MOV A,#04H
MOVX @DPTR,A
MOV DPTR,#000EH ;年度的高位,解决千年问题
MOV A,#14H
MOVX @DPTR,A
MOV DPTR,#000AH ;初始化寄存器单元A
MOV A,#20H
MOVX @DPTR,A
MOV DPTR,#000CH ;清状态寄存器C
MOVX A,@DPTR
MOV DPTR,#000DH ;
MOVX A,@DPTR
MOV DPTR,#000BH ;初始化寄存器单元B
MOV A,#26H
MOVX @DPTR,A
MOV IE,#81H ;8951开中断
RET
XIN: MOV DPTR,#000AH ;更新周期判断
MOVX A,@DPTR
JBC ACC.7,XIN
SETB 20H
RET
INT0: CPL P2.0
LCALL XIN
JB 20H,READ ;中断服务程序
AJMP INT0
READ: MOV DPTR,#0002H ;分单元
MOVX A,@DPTR
MOV XSDATA2,A
INC DPTR
INC DPTR
;时单元
MOVX A,@DPTR
MOV XSDATA1,A
MOV DPTR,#000CH ;清状态寄存器C
MOVX A,@DPTR
RETI
RET
DIS: MOV A,XSDATA2 ;显示子程序,将数据送显示单元,再调用
LCALL MBCD1 ;数据处理子程序
MOV A,XSDATA1
LCALL MBCD2
DIS1:
MOV DPTR,#TAB
MOV R0,#5FH
SETB P2.4
SETB P2.3
SETB P2.2
CLR P2.1
MOV A,@R0
MOVC A,@A+DPTR
MOV P1,A
INC R0
ACALL DL1MS
SETB P2.4
SETB P2.3
SETB P2.1
CLR P2.2
MOV A,@R0
MOVC A,@A+DPTR
MOV P1,A
INC R0
ACALL DL1MS
SETB P2.4
SETB P2.1
SETB P2.2
CLR P2.3
MOV A,@R0
MOVC A,@A+DPTR
MOV P1,A
INC R0
ACALL DL1MS
SETB P2.1
SETB P2.3
SETB P2.2
CLR P2.4
MOV A,@R0
MOVC A,@A+DPTR
MOV P1,A
INC R0
ACALL DL1MS
RET
TAB: DB 21H,77H,0A2H,62H,74H,68H,28H,73H
DB 20H,70H
MBCD1: MOV B,#0AH ;数据处理子程序
DIV AB
MOV 60H,A
MOV 5FH,B
RET
MBCD2: MOV B,#0AH
DIV AB
MOV 62H,A
MOV 61H,B
RET
DL1MS: MOV R2,#0AH ;延时子程序
DL2: MOV R4,#019H
DL3: DJNZ R4,DL3
DJNZ R2,DL2
RET
12887的初始化程序——89C51.rar_12887.rar_12887a_12c887_12c887 89_89c51
版权申诉
23 浏览量
2022-09-24
12:27:31
上传
评论
收藏 1KB RAR 举报
钱亚锋
- 粉丝: 88
- 资源: 1万+
最新资源
- 基于Javascript的诊所管理系统设计源码
- 人工智能在电子信息管理系统中的应用与效率优化研究
- 详解protobuf-c之在C语言中如何使用repeated生成数组和字符串(包含配置pb-callback-t)
- Python 程序语言设计模式思路-并发模式:消费者模式:协调生产者和消费者之间的数据交换
- pythonA*算法(A-star algorithm),寻路算法
- guitest.zip
- udp_echo.v
- udp_echo_server.v
- python双向广度优先搜索算法(Bidirectional Breadth-First Search, BBFS),寻路算法
- python迭代加深算法(Iterative Deepening Depth-First Search, IDDFS),寻路算法
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈