电子表.docx
- 文档编号:8359432
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:23
- 大小:141.56KB
电子表.docx
《电子表.docx》由会员分享,可在线阅读,更多相关《电子表.docx(23页珍藏版)》请在冰豆网上搜索。
电子表
项目十电子表
一项目描述
1.用6位的7段显示器显示时,分,秒,以24小时方式工作
2.用开关可以控制显示器的显示与关闭,可以调整时间值
3.可以设置闹钟
4.在显示时间之前显示当前日期和设计者的班级学号
二项目目的
按开始按钮开始仿真,显示时间,调节开关可以控制时间。
三系统设计
1.框图设计
2.电路原理图
3.元件清单
名称
数量
参数
标号
电阻
8
10k
R1~R5
电阻
6
600
R6~R14
电容
2
30pF
C2~C3
极性电容
1
10uF
C1
开关
5
AT89C51
1
U1
74LS04
6
U2:
A~U2:
F
晶振
1
12MHz
X1
四软件设计
1.程序流程图
2.程序清单
DISBEGEQU30H
CALBEQUP1.7
TIMCONEQU2FH
ORG0000H
LJMPMAIN
ORG0003H
RETI
ORG000BH
LJMPINTT0
ORG0013H
RETI
ORG001BH
LJMPINTT1
ORG0023H
RETI
TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,88H,0BFH;
共阳段码表"0""1""2""3""4""5""6""7""8""9""不亮""A""-"
I_TAB:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,0FFH,0C6H,0BFH,88H
STAB:
DB0AH,0AH,0AH,0AH,0AH,0AH,03H,01H,0CH,03H,0CH,03H,00H,0DH,0AH,0AH
DB05H,00H,0CH,06H,00H,0CH,00H,01H,00H,02H,0AH,0AH,0AH,0AH,0AH,0AH
DLY1M:
MOVR6,#14H
DL_LOOP:
MOVR7,#19H
DL_LOOP1:
DJNZR7,DL_LOOP1
DJNZR6,DL_LOOP
RET
DLY20M:
CLRCALB
LCALLD_II_PLAY
LCALLD_II_PLAY
LCALLD_II_PLAY
SETBCALB
RET
DL_LOOPS:
LCALLDL05S
LCALLDL05S
RET
DL05S:
MOVR3,#20H
DL05S1:
LCALLD_II_PLAY
DJNZR3,DL05S1
RET
CTIME:
MOVA,#10H
MOVB,79H
MULAB
ADDA,78H
MOVTIMCON,A
CLOOP:
LCALLDLY20M
LCALLDL_LOOPS
LCALLDL_LOOPS
LCALLDL_LOOPS
DJNZTIMCON,CLOOP
CLR08H
AJMPMLOOP1
MAIN:
LCALLST
MOVR0,#00H
MOVR7,#80H
MLOOP:
MOV@R0,#00H
INCR0
DJNZR7,MLOOP
MOV20H,#00H
MOV7AH,#0AH
MOVTMOD,#11H
MOVTL0,#0B0H
MOVTH0,#3CH
MOVTL1,#0B0H
MOVTH1,#3CH
SETBEA
SETBET0
SETBTR0
MOVR4,#14H
MOVDISBEG,#70H
MLOOP1:
LCALLD_II_PLAY
JNBP1.0,T_SETSC
JNBP1.1,DLY5
JNBP1.2,FUNBT
JNBP1.3,TSET
JB08H,CTIME
AJMPMLOOP1
FUNBT:
LJMPDLY6
TSET:
LCALLDLY20M
JBP1.3,MLOOP1;
TS_LOOP:
JNBP1.3,TS_LOOP
JB05H,CLRBELL
MOVDISBEG,#50H
MOV50H,#0CH
MOV51H,#0AH
MINCHG:
SETBEA
LCALLD_II_PLAY
JNBP1.2,DLY1
JNBP1.0,DLY3
JNBP1.3,DLY
AJMPMINCHG
CLRBELL:
CLR05H
CLRCALB
AJMPMLOOP1
DLY:
LCALLDLY20M
JBP1.3,MINCHG
LJMPDLY8
T_SETSC:
LJMPR_SETTIM
DLY1:
LCALLDLY20M
JBP1.2,MINCHG
DLY2:
LCALLD_II_PLAY
JNBP1.2,DLY2
CLREA
MOVR0,#53H;
LCALLADD_1
MOVA,R3
CLRC
CJNEA,#60H,ADD_M
ADD_M:
JCMINCHG;小于60分时返回
ACALLCLR_H
AJMPMINCHG
DLY3:
LCALLDLY20M
JBP1.0,MINCHG
DLY4:
LCALLD_II_PLAY
JNBP1.0,DLY4
CLREA
MOVR0,#53H;
LCALLSUB_M
LJMPMINCHG
DLY5:
LCALLDLY20M
JBP1.1,T_MLOOP1
JNBP1.1,$
CPL03H
JNB03H,DIS_SET
MOVDISBEG,#60H
MOV60H,#00H
MOV61H,#00H
MOV62H,#00H
MOV63H,#00H
MOV64H,#00H
MOV65H,#00H
MOVTL1,#0F0H;10MS定时初值()
MOVTH1,#0D8H;10MS定时初值
SETBTR1
SETBET1
T_MLOOP1:
LJMPMLOOP1
DIS_SET:
MOVDISBEG,#70H
CLRET1
CLRTR1
T_MLOOP11:
LJMPMLOOP1
DLY6:
LCALLDLY20M
JBP1.2,T_MLOOP11
T_EST11:
JNBP1.2,T_EST11
CLRET1
CLRTR1
T_EST22:
JNBP1.1,DLY5
JBP1.2,T_EST21
LCALLDLY20M
JBP1.2,T_EST22
T_EST55:
JNBP1.2,T_EST51
MOV60H,#00H
MOV61H,#00H
MOV62H,#00H
MOV63H,#00H
MOV64H,#00H
MOV65H,#00H
T_EST33:
JNBP1.1,DLY5
JBP1.2,T_EST31
LCALLDLY20M
JBP1.2,T_EST33
T_EST44:
JNBP1.2,T_EST41
SETBET1
SETBTR1
AJMPMLOOP1
T_EST411:
LCALLD_II_PLAY
AJMPT_EST11
T_EST21:
LCALLD_II_PLAY
AJMPT_EST22
T_EST31:
LCALLD_II_PLAY
AJMPT_EST33
T_EST41:
LCALLD_II_PLAY
AJMPT_EST44
T_EST51:
LCALLD_II_PLAY
AJMPT_EST55
INTT0:
PUSHACC
PUSHPSW
CLRET0
CLRTR0
MOVA,#0B7H
ADDA,TL0
MOVTL0,A
MOVA,#3CH
ADDCA,TH0
MOVTH0,A
SETBTR0
DJNZR4,I_INT0
A_DDS:
MOVR4,#14H
CPL07H
MOVR0,#71H
ACALLADD_1
MOVA,R3
CLRC
CJNEA,#60H,A_DDM
A_DDM:
JCI_INT0
ACALLCLR_H
MOVR0,#77H
ACALLADD_1
MOVA,R3
CLRC
CJNEA,#60H,A_DDH
A_DDH:
JCI_INT0
ACALLCLR_H
LCALLDLY20M
SETB08H
MOVR0,#79H
ACALLADD_1
MOVA,R3
CLRC
CJNEA,#24H,RSTART
RSTART:
JCI_INT0
ACALLCLR_H
I_INT0:
MOV72H,76H
MOV73H,77H
MOV74H,78H
MOV75H,79H
LCALLBELL
POPPSW
POPACC
SETBET0
RETI
INTT1:
PUSHACC
PUSHPSW
JB03H,R_ADDS;=1时秒表
MOVTL1,#0B0H
MOVTH1,#3CH
DJNZR2,I_INT1
MOVR2,#06H
CPL02H
JB02H,FLASH0
MOV72H,76H
MOV73H,77H
MOV74H,78H
MOV75H,79H
I_INT1:
POPPSW
POPACC
RETI
FLASH0:
JB01H,FLASH1;01H位为1时,转小时熄灭控制
MOV72H,7AH
MOV73H,7AH
MOV74H,78H
MOV75H,79H
AJMPI_INT1
FLASH1:
MOV72H,76H
73H,77H
MOV74H,7AH
MOV75H,7AH
AJMPI_INT1
R_ADDS:
CLRTR1
MOVA,#0F7H
ADDA,TL1
MOVTL1,A
MOVA,#0D8H
ADDCA,TH1
MOVTH1,A
SETBTR1
MOVR0,#61H
ACALLADD_1
CLRC
MOVA,R3
JZR_ADDM
AJMPI_INT01
R_ADDM:
ACALLCLR_H
MOVR0,#63H
ACALLADD_1
MOVA,R3
CLRC
CJNEA,#60H,R_ADDH
R_ADDH:
JCI_INT01
LCALLCLR_H
MOVR0,#65H
ACALLADD_1
I_INT01:
POPPSW
POPACC
RETI
;加1子程序
ADD_1:
MOVA,@R0
DECR0
SWAPA
ORLA,@R0
ADDA,#01H
DAA
MOVR3,A
ANLA,#0FH
MOV@R0,A
MOVA,R3
INCR0
SWAPA
ANLA,#0FH
MOV@R0,A
RET
;分减1子程序;;
SUB_M:
MOVA,@R0
DECR0
SWAPA
ORLA,@R0
JZSUB_M1
DECA
SUB_M11:
MOV3,A
ANLA,#0FH
CLRC
SUBBA,#0AH
SUB_M111:
JCSUB_M110
MOV@R0,#09H
SUB_M10:
MOVA,R3
INCR0
SWAPA
ANLA,#0FH
MOV@R0,A
RET
SUB_M1:
MOVA,#59H
AJMPSUB_M11
SUB_M110:
MOVA,R3
ANLA,#0FH
MOV@R0,A
AJMPSUB_M10
;时减1子程序
SUB_H:
MOVA,@R0
DECR0
SWAPA
ORLA,@R0
JZSUB_H1
DECA
SUB_H11:
MOVR3,A
ANLA,#0FH
CLRC
SUBBA,#0AH
SUB_H111:
JCSUB_H110
MOV@R0,#09H
SUB_H10:
MOVA,R3
INCR0
SWAPA
ANLA,#0FH
MOV@R0,A
RET
SUB_H1:
MOVA,#23H
AJMPSUB_H11
SUB_H110:
MOVA,R3
ANLA,#0FH
MOV@R0,A
AJMPSUB_H10
;清零程序
;对计时单元复零用
CLR_H:
CLRA
MOV@R0,A
DECR0
MOV@R0,A
RET
;当调时按键按下时进入此程序
R_SETTIM:
CLRET0
CLRTR0
LCALLDL_LOOPS
LCALLDLY20M
JBP1.0,SLEEP
MOVR2,#06H
MOV70H,#00H
MOV71H,#00H
SETBET1
SETBTR1
SET_2:
JNBP1.0,SET_1
SETB00H
SET_4:
JBP1.0,SET_3
LCALLDL05S
LCALLDLY20M
JNBP1.0,R_SETHH
MOVR0,#77H
LCALLADD_1
MOVA,R3
CLRC
CJNEA,#60H,SET_LOOP
SET_LOOP:
JCSET_4
LCALLCLR_H
CLRC
AJMPSET_4
SLEEP:
SETBET0
SETBTR0
SET_LOOP1:
JBP1.0,SET_LOOP1
LCALLDLY20M
JBP1.0,SET_LOOP1
SET_LOOP2:
JNBP1.0,SET_LOOP2
LJMPMLOOP1
R_SETHH:
CLR00H
SETB01H
SET_LOOP3:
JNBP1.0,SET_5
SET_6:
JBP1.0,SET_7
LCALLDL05S
LCALLDLY20M
JNBP1.0,STOP
MOVR0,#79H
LCALLADD_1
MOVA,R3
CLRC
CJNEA,#24H,C_YHH
C_YHH:
JCSET_6
LCALLCLR_H
AJMPSET_6
STOP:
JNBP1.0,STOP1
LCALLDLY20M
JNBP1.0,STOP
CLR01H
CLR00H
CLR02H
CLRTR1
CLRET1
SETBTR0
SETBET0
LJMPMLOOP1
SET_1:
LCALLD_II_PLAY
AJMPSET_2
SET_3:
LCALLD_II_PLAY
JNBP1.1,DLY7;
AJMPSET_4
SET_5:
LCALLD_II_PLAY
AJMPSET_LOOP3
SET_7:
LCALLD_II_PLAY
JNBP1.1,DLY7B
AJMPSET_6
STOP1:
LCALLD_II_PLAY
AJMPSTOP
;DLY7,分减1程序?
DLY7:
LCALLDLY20M
JBP1.1,SET_41
DLY7_M:
JNBP1.1,DLY7_M
MOVR0,#77H
LCALLSUB_M
LJMPSET_4
SET_41:
LJMPSET_4
DLY7B:
LCALLDLY20MJB
P1.1,SET_61
DLY7_H:
JNBP1.1,DLY7_H
MOVR0,#79H
LCALLSUB_H
LJMPSET_6
SET_61:
LJMPSET_6
D_II_PLAY:
MOVR1,DISBEG
MOVR5,#0FEH
PLAY:
MOVA,R5
MOVP2,A
MOVA,@R1
MOVDPTR,#TAB
MOVCA,@A+DPTR
MOVP0,A
MOVA,R5
JBACC.2,D_LOOP
CLRP0.7;
D_LOOP:
JBACC.4,D_LOOP1
CLRP0.7;
D_LOOP1:
LCALLDLY1M
INCR1
MOVA,R5
JNBACC.5,CLOSE
RLA
MOVR5,A
MOVP0,#0FFH
AJMPPLAY
CLOSE:
MOVP2,#0FFH
MOVP0,#0FFH
RET
SD_II_PLAY:
MOVR1,DISBEG
MOVR5,#0FEH
I_PLAY:
MOVA,R5
MOVP2,A
MOVA,@R1
MOVDPTR,#I_TAB
MOVCA,@A+DPTR
MOVP0,A
MOVA,R5
LCALLDLY1M
INCR1
MOVA,R5
JNBACC.5,FLSH
RLA
MOVR5,A
AJMPI_PLAY
FLSH:
MOVP2,#0FFH
MOVP0,#0FFH
RET
ST:
MOVR0,#40H
MOVR2,#20H
MOVR3,#00H
CLRA
MOVDPTR,#STAB
S_LOOP:
MOVCA,@A+DPTR
MOV@R0,A
MOVA,R3
INCA
MOVR3,A
INCR0
DJNZR2,S_LOOP
MOVDISBEG,#40H
SS_LOOP:
MOVR2,#50
SS_LOOP1:
LCALLSD_II_PLAY
DJNZR2,SS_LOOP1
INCDISBEG
MOVA,DISBEG
CJNEA,#5AH,SS_LOOP
MOVDISBEG,#5AH
MOVR3,#1BH
SS_LOOP2:
MOVR2,#32H
SS_LOOP12:
LCALLSD_II_PLAY
DJNZR2,SS_LOOP12
DECDISBEG
DJNZR3,SS_LOOP2
RET
DLY8:
LCALLD_II_PLAY
JNBP1.3,DLY8
MOV50H,#0AH
MOV51H,#0CH
R_BTIM:
SETBEA
LCALLD_II_PLAY
JNBP1.2,DLY12
JNBP1.0,DLY14
JNBP1.3,DLY9
JNBP1.1,DLY10
AJMPR_BTIM
DLY9:
LCALLDLY20M
JBP1.3,R_BTIM
DLY8M:
LCALLD_II_PLAY
JNBP1.3,DLY8M
MOVDISBEG,#70H
LJMPMLOOP1
DLY10:
LCALLDLY20M
JBP1.1,R_BTIM
DLY11:
LCALLD_II_PLAY
JNBP1.1,DLY11
CPL05H
JNB05H,R_BTIM11
MOV50H,#00H
AJMPR_BTIM
R_BTIM11:
MOV50H,#0AH
AJMPR_BTIM
DLY12:
LCALLDLY20M
JBP1.2,R_BTIM
DLY13:
LCALLD_II_PLAY
JNBP1.2,DLY13
CLREA
MOVR0,#55H
LCALLADD_1
MOVA,R3
CLRC
CJNEA,#24H,A_DDH33N
A_DDH33N:
JCR_BTIM
ACALLCLR_H
AJMPR_BTIM
DLY14:
LCALLDLY20M
JBP1.0,R_BTIM
DLY15:
LCALLD_II_PLAY
JNBP1.0,DLY15
CLREA
MOVR0,#55H
LCALLSUB_H
LJMPR_BTIM
BELL:
JNB05H,BBELL
MOVA,79H
CJNEA,55H,BBELL
MOVA,78H
CLRC
BELL_1:
CJNEA,54H,BBELL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子表
![提示](https://static.bdocx.com/images/bang_tan.gif)