专业课程设计宠物自动喂食机设计_第1页
专业课程设计宠物自动喂食机设计_第2页
专业课程设计宠物自动喂食机设计_第3页
专业课程设计宠物自动喂食机设计_第4页
专业课程设计宠物自动喂食机设计_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要.................................................................I

LI主轴材料的选择:.................................................1

L2主轴加工方法的选择:.............................................1

2主轴参数计算:......................................................2

2.1主轴尺寸的确定:................................................2

2.1.1估取主轴的长度和直径:.......................................2

2.L2根据轴向定位的要求确定轴的各段长度.........................2

2.2轴上力的校合....................................................3

2.3精确校核轴的疲劳强度...........................................3

2.3.1判断危险截面................................................3

2.3.2IV・•,•・・・・•••♦•・・・・♦•••・・・•••••・・・・•♦•••・・・・♦.♦3

3行程开关旋转件的设计...............................................5

4减速电动机的选择:.................................................5

5控制系统设计........................................................6

5.1系统方案设计构成................................................6

5.2单片机的选用....................................................6

5.2.1I/O口线....................................................6

5.2.2控制口线...................................................7

5.2.3电源和时钟.................................................7

6程序编写............................................................8

6.1连线图:........................................................8

6.2程序设计:.....................................................8

7设计心得...........................................................28

参考文献.............................................................29

1主轴的设计

在宠物自动喂食机上采用直接由电机带动主轴旋转,控制料口的开启和关

闭,由于电机选用的是具有自锁功能的直流减速电机,中间不采用减速装置,

简化结构设计,使系统的结构尽量的紧凑。所以直接用电机驱动主轴,省去中

间的减速环节。

L1主轴材料的选择:

主轴的选用45钢,45钢的加工性能较为理想,材料的价格比较低廉,但是

这是一种中碳钢,淬火性能并不好,45号钢可以淬硬至HRC42~46。所以如果

需要表面硬度,又希望发挥45钢优越的机械性能,常将45钢表面渗碳淬火,

这样就能得到需要的表面硬度。调质处理后零件具有良好的综合机械性能,广

泛应用于各种重要的结构零件,特别是那些在交变负荷下工作的连杆、螺栓、

齿轮及轴类等。

1.2主轴加工方法的选择:

由于主轴是间歇回转类零件,不需要长时间的连续运转,所以加工的精度

不需要很高,在普通的车床上既可以加工。又因为主轴的外形相对简单,不需

要经常的换刀,所以加工的时间教短。在加工主轴时,需要注意的是径向尺寸

的控制,不过通过合理的安排加工工艺可以解决。最后的端部的钻孔是需要控

制空之间的距离,所以在单件试制的时候可以不用专用的夹具,在大量生产的

时候需要安排专用的夹具,提高生产效率。尤其需要注意的是孔中心的确定,

因为是后续安装旋转件的,所以要控制中心的偏差。

2主轴参数计算:

2.1主轴尺寸的确定:

由设计题目中要求可知:下料口的孔直径为5mm.由《机械设计手册》表6.2-3

取主轴的直径为5mm;

2.1.1估取主轴的长度和直径:

56

图2-1轴的长度和直径

1)1-2段轴用于安装联轴器,故取直径为5mm。

2)2-3段安装活动挡片,直径5mm。

3)3-4段分隔段,直径为5nm1。

4)4-5段为过度段,直径为16mm。

5)5-6段安装旋转件,直径为40mm。

2.1.2根据轴向定位的要求确定轴的各段长度

1)1-2段为安装联轴器为30mm

2)2-3段为安装活动挡片长度为60mm。

3)3-4段为为分隔长度为10mm

4)4-5段用于安装旋转件长度为6mmo

5)5-6段安装旋转件长度为10

2

2.2轴上力的校合

207.5

1

热加删III唧伽腼丽2

/■■口―H~nTilhTrTm?Trr_

图2.2轴上力的校合

2.3精确校核轴的疲劳强度

2.3.1判断危险截面

由于截面IV处受的载荷较大,直径较小,所以判断为危险截面

2.3.2截面IV右侧的

M

cr,,二口二17.5MPa

截面上的转切应力为%=,3=7.64A行.

WT

Th=T『"==7.99MPa

b22

由于轴选用40cr,调质处理,所以

(yR=735MPa9=386Mpa,g=260MPa。

([2]P355表15・1)

综合系数的计算

由三=2=0.045,2=1.6经直线插入,知道因轴肩而形成

d55d

的理论应力集中为a,=2.23,%=1.81,

(|2]P38附表3-2经直线插入)

轴的材料敏感系数为%=0.85,缶=0.87,

([2]P37附图3・1)

故有效应力集中系数为

k。=l+q“(4-D=2.05

kT=1+%(%-1)=1.70

查得尺寸系数为£。=0.72,扭转尺寸系数为邑=0.76,

([2]P37附图3・2)([2]P39附图3・3)

轴采用磨削加工,表面质量系数为乩=凡=0.92,

([2]P40附图3-4)

轴表面未经强化处理,即凡=I则综合系数值为

Ka=-^+—-1=2.93

%Pa

ki

K.=」+——1=2.11

Jfir

a)碳钢系数的确定

碳钢的特性系数取为%=0.1,匕=0.05

b)安全系数的计算

轴的疲劳安全系数为

S。=------------------=6.92

KQa+WQm

=24.66

沁=6.66>1.5=5

故轴的选用安全。

5

3行程开关旋转件的设计

图3-1行程开关旋转件

由示意图可知,两旋转件在旋转时有一个90度角的角度差,通过行程开关

输出的信号的不同来分辨料口的开合处于什么样的状态,然后通过单片机系统

的处理,输出相应的信号,带动电机的旋转,来控制料口的开合。料口的状态

有完全关闭和完全打开两种状态,(1)两行程开关都输出信号时,料口处于关

闭状态,(2)两行程开关有一个闭合输出信号时,料口处于完全打开状态。

4减速电动机的选择:

直流齿轮减速电动机由于其结构简单,性能可靠,故选择直流齿轮减速电

动机。

ZGA25R-310式直流齿轮减速电动机产品数据:

ZGA25R-310使用电压:DC-6V

转速:2Orpm

外径:25mm

总长:51mm

伸出轴长:10mm

扭力:1-3KG

5

5控制系统设计

5.1系统方案设计构成

本系统包括机械部分和伺服电机控制两部分。根据所给的要求,拟用开环控制

结构设计方案,其开环系统结构原理如下:

图5-1开环系统结构原理图

具体原理:编写单片机指令,通过扫描键盘输入的数字记录需要转动的角度,

然后计算需要输出的脉冲,用软件的方法实现脉冲的输出,然后由光电耦合电

路减小外部的干扰,由功率放大电路实现功率的放大,然后接减速电动机,通

过联轴器把力矩传到主轴。带动料口的开关。

5.2单片机的选用

本设计选用ATS9s51芯片,片内无ROM或者EPROM,使用时必须配置外部的

程序存储器EPROM。本设计选用了2764扩展其空间,8031的引脚分3大功能:

5.2.1I/O口线

PO,P1,P2,P3共4个八位口。

6

5.2.2控制口线

PSEN(片外取指控制)、ALE(地址锁存控制)、EA(片外存储器选择)、RESET

(复位控制)。

5.2.3电源和时钟

ATS9s51最小应用系统。ATS9s51内部不带ROM,需要外接EPROM作为外部

程序存储器。又因为8031在外接程序存储器或数据存储器时地址的低8位信息

和数据信息分时送出,故还需要采用一片74LS373来锁存低8为地址信息。这

样,一片2764EPR0M和一片74LS373组成了一个最小的计算机应用系统。如图

MCS-51的程序存储器空间与数据存储器空间是相互独立的。用户可最多扩

展到64kb的程序存储器几64kb的数据存储器,编址为OOOOH~FFFFH。片内8kb

单元地址要求地址线13根(A0~A12)。

它由P0和P2.0~P2.4组成。地址锁存器的锁存信号为ALE。程序存储器的

取地址消耗为PSEN。由于程序存储器芯片只有一片,所以其片选端(31)直接

接地。

8031芯片本身的连接31必须接地来表明选择外部存储器外,还必须有复位

和时钟电路。在此系统中有Pl、P3口作为用户I/O口使用;74LS373为地址锁

存器,他是一片三态输出8D触发器,当0E=l时三态门导通,输出线上为8为

锁存器的状态。当0E=l时输出为高住抗转台。G为锁存信号输入线,G=1时锁

存器输出等于D端输入,G输入短跳变将输入信息锁存到8为锁存器中。

当8031在访问外部程序存储器时,P2口输入高8为地址:P6口分时传送

底8为地址和指令字节。在ALE为高电平时,P0口输出的地址有效,并由ALE

的下降沿锁存到地址锁存器中,此时外部程序存储器宣统信号线PSEN出现低电

平,选通相应的外部。EPROM存储器;相应的指令字节出现在EPROM的数据线

(00~07)上,输入到POD,CPU将指令字节读入指令寄存器。

7

6程序编写

6.1连线图:

£R

M

rc

暴NlI

t

l

黑c

i

t

&M

n

n

n

”ra

FS

皿n

k

=

*nki

m

H

-L.8

下才近g

93

m

图6-1连线图

6.2程序设计:

单片机:AT89S51,F=6MHz,影响第0组的RI,R2,R3,R4,R5,R6,R7,

20H,21H,30H,31H,32H,35H,36H,37H,38H,39H,3AH,3BH,3CH,3DH,3EH。

ORGOOH;程序从这里开始

SJMPMAIN;主程序

ORGOBH;定时器0中断入口

LJMPGOTO

ORG40H;初始化

MAIN:MOVSP,#5FH;设堆栈

MOV30H,#12H;存放小时,设初值

MOV31H,#00H;存放分钟,设初值

MOV32H,#00H;存放秒,设初值

MOV35H,#06H;第一个闹钟的小时位,设初值

MOV36H,#30H;第一个闹钟的分钟位,设初值

MOV37H,#09H;第二个闹钟的小时位,设初值

MOV38H,#00H;第二个闹钟的分钟位,设初值

MOV39H,#06H;存放年

MOV3AH,#11H;存放月

MOV3BH,#05H;存放日

8

MOV3CH,#OOH;显示缓存,第1,2位

MOV3DH,#OOH;显示缓存,第3,4位

MOV3EH,#OOH;显示缓存,第5,6位

CLROOH;秒闪烁暂存20H.0

SETBO1H;闹钟1输出位20H.1

SETB02H;闹钟2输出位20H.2

CLR03H;按键2是否有效标致位20H.3

CLR04H;按键3是否有效标致位20H.4

CLR05H;按键2是否有效标致位20H.5

CLR06H;闹钟开关标致20H.6〃0"为开"1"为关

SETB07H;显示缓存,小数点1

SETB08H;显示缓存,小数点2

SETB09H;时钟加减标致位〃0"为小时,〃1〃为分钟

SETBOAH;闹钟1加减标致位"0”为小时,〃1”为分钟

SETBOBH;闹钟2加减标致位”0〃为小时,"1〃为分钟

MOVR2,#2;设定时次数

MOVR3,#50

MOVR4,#25

MOVTMOD,#02H;设定时器0工作方式为方式2

MOVTHO,#56;设初始值

MOVTLO,#56

SETBTRO;启动定时器和中断

SETBETO

SETBEA

主程序

MMAIN:JNBP2.0,MMAIN;时钟主程序

MMAIN2:LCALLXIAN;显示

LCALLCS;按键秒清零

LCALLDAT;是否显示年月日

LCALLDSQ;定时器

LCALLT1T2;闹钟开关

CLRP2.6;按键有效

JNBP2.0,MENU1

9

SJMPMMAIN2

MENU1:JNBP2.0,$;时钟调整

SETBP1.0

MOV3CH,30H;将暂存的数转成字形显示30H

MOV3DH,31H;将暂存的数转成字形显示31H

MOV3EH,#0ABH;将暂存的数转成字形显示〃t〃

CLR07H;显示小数点1

SETB08H;不显示小数点2

LCALLMXIAN;显示菜单1

LCALLADDM1;按键加一分钟

LCALLADDH1;按键加一小时

LCALLDECMH;减一分钟/一小时

CLRP2.6

JNBP2.0,MENU2

SJMPMENU1

MENU2:JNBP2.0,$;日期调整

SETBP1.0

MOV3CH,39H;将暂存的数转成字形显示39H

MOV3DH,3AH;将暂存的数转成字形显示3AH

MOV3EH,3BH;将暂存的数转成字形显示3BH

CLR07H;显示小数点1

CLR08H;显示小数点2

LCALLMXIAN;显示菜单2

LCALLDATEN;年份+1

LCALLDATEM;月份+1

LCALLDATED;+1日

CLRP2.6

JNBP2.0,MENU3

SJMPMENU2

MENU3:JNBP2.0,$;闹钟1

SETBP1.0

MOV3CH,35H;将暂存的数转成字形显示35H

MOV3DH,36H;将暂存的数转成字形显示36H

MOV3EH,#OA1H;将暂存的数转成字形显示〃r

CLR07H;显示小数点1

SETB08H;不显示小数点2

LCALLMXIAN;显示菜单3

LCALLT1M1;闹钟1分钟+1

LCALLT1H1;闹钟1小时+1

LCALLDECT1;闹钟1减1小时/I分钟

CLRP2.6

JNBP2.0,MENU4

SJMPMENU3

MENU4:JNBP2.0,$;闹钟2

SETBP1.0

MOV3CH,37H;将暂存的数转成字形显示37H

MOV3DH,38H;将暂存的数转成字形显示38H

MOV3EH,#0A2H;将暂存的数转成字形显示〃2〃

CLR07H;显示小数点1

SETB08H;不显示小数点2

LCALLMXIAN;显示菜单4

LCALLT2M1;闹钟2分钟+1

LCALLT2H1;闹钟2小时+1

LCALLDECT2;闹钟减2小时/I分钟

CLRP2.6

JNBP2.0,MENU5

SJMPMENU4

MENU5:LJMPMMAIN

中断处理

GOTO:PUSHA;保护现场

DJNZR3,G0T01

MOVR3,#50

DJNZR4,G0T01

MOVR4,#25

CPLOOH;2OH.O用于秒闪烁

11

DJNZR2,GOTO1

MOVR2,#02H;配合定时器定时一秒

MOVA,32H;秒位是否为59秒,是:秒清零,分钟+1,判

断分钟

CJNEA,#59H,Ml;否:跳转到秒+1

MOV32H,#00H

MOVA,31H;分钟位同上

CJNEA,#59H,M2

MOV31H,#00H

MOVA,30H;小时位同上

CJNEA,#23H,M3

MOV30H,#00H

LCALLADDD

SJMPGOTOl

Ml:ADDA,#01;秒+1

DAA

MOV32H,A

SJMPGOTOl

M2:ADDA,#01;分钟+1

DAA

MOV31H,A

SJMPGOTOl

M3:ADDA,#01;小时+1

DAA

MOV30H,A

SJMPGOTOl

GOTO1:POPA;恢复现场

RETI

时钟显示专用子程序

XIAN:MOVA,32H;将暂存的数转成字形

SWAPA

MOVB,#10H

DIVAB

LCALLZH

MOVPO,A;LED显示秒位

12

MOVP2,#OFEH

LCALLDELAY

MOVA,B

LCALLZH

MOVPO,A

MOVP2,#0FDH

LCALLDELAY

MOVA,31H;将暂存的数转成字形

SWAPA

MOVB,#1OH

DIVAB

LCALLZH

MOVPO,A;LED显示分钟位

MOVC,OOH

MOVPO.7,C;秒闪烁

MOVP2,#OFBH

LCALLDELAY

SETBPO.7;取消显示小数点

MOVA,B

LCALLZH

MOVPO,A

MOVP2,#0F7H

LCALLDELAY

MOVA,30H;将暂存的数转成字形

SWAPA

MOVB,#1OH

DIVAB

LCALLZH

MOVPO,A;LED显示小时位

CLRPO.7;显示小数点

MOVP2,#OEFH

LCALLDELAY

SETBPO.7;取消显示小数点

MOVA,B

LCALLZH

13

MOVPO,A

MOVP2,#0DFH

LCALLDELAY

RET

DELAY:MOVR5,#OAH;延时lmS(6MHz)

LI:MOVR6,#19H

L2:DJNZR6,L2

DJNZR5,LI

RET

ZH:MOVDPTR,#TAB;字形转换

MOVCA,@A+DPTR

MOVP2,#0FFH;消影

RET

TAB:DBOCOH,0F9H,0A4H,OBOH,99H,92H,82H,0F8H,80H,90H;字形

0~9

DBOFFH,87H,0C8H,OA1H,86H,8EH;字形A="

”,C="n",F="F〃,-hsz

TAB2:DB30H,31H,28H,31H,30H,31H,30H,31H,31H,30H,31H,30H,31H;

每个月的天数,平年

TAB3:DB30H,31H,29H,31H,30H,31H,30H,31H,31H,30H,31H,30H,31H;

每个月的天数,闰年

显示子程序结束

菜单显示子程序

MXIAN:MOVA,3EH;将暂存的数转成字形

SWAPA

MOVB,#10H

DIVAB

LCALLZH

MOVPO,A;LED显示5,6位

MOVP2,#OFEH

LCALLDELAY

MOVA,B

LCALLZH

MOVPO,A

14

MOVP2,#OFDH

LCALLDELAY

MOVA,3DH;将暂存的数转成字形

SWAPA

MOVB,#1OH

DIVAB

LCALLZH

MOVPO,A;LED显示3,4位

MOVC,O8H

MOVPO.7,C;是否显示小数点2

MOVP2,#OFBH

LCALLDELAY

SETBPO.7;取消显示小数点

MOVA,B

LCALLZH

MOVPO,A

MOVP2,#0F7H

LCALLDELAY

MOVA,3CH;将暂存的数转成字形

SWAPA

MOVB,#1OH

DIVAB

LCALLZH

MOVPO,A;LED显示1,2位

MOVC,O7H

MOVPO.7,C;是否显示小数点1

MOVP2,#OEFH

LCALLDELAY

SETBPO.7;取消显示小数点

MOVA,B

LCALLZH

MOVPO,A

MOVP2,#ODFH

LCALLDELAY

RET

15

按键子程序开始

CS:MOVPO,#0FFH;秒清零

MOVP2,#101111118

JBP2.1,CS1

MOV32H,#00H

CS1:SETBP2.6

RET

ADDM1:MOVPO,#0FFH;加一分钟

MOVP2,#10111111B

JNBP2.2,ADDM11

CLR03H;按键2是否有效

ADDM11:JB03H,ADDM12

JBP2.2,ADDM12

LCALLMXIAN;这四个为去抖动

MOVP0,#OFFH

MOVP2,#101111UB

JBP2.2,ADDM12

SETB03H;按键2是否有效

SETB09H;时钟加减标致位

MOVA,31H;分钟+1

CJNEA,#59H,M21

MOV31H,#00H

SJMPADDM12

M21:ADDA,#01

DAA

MOV31H,A

SJMPADDM12

ADDM12:SETBP2.6

RET

ADDH1:MOVP0,#OFFH;力口一小时

MOVP2,#10111111B

JNBP2.3,ADDH11

16

CLR04H;按键3是否有效

ADDH11:JB04H,ADDH12

JBP2.3,ADDH12

LCALLMXIAN;这四个为去抖动

MOVPO,#0FFH

MOVP2,#1O1U111B

JBP2.3,ADDH12

SETB04H;按键3是否有效

CLR09H;时钟加减标致位

MOVA,30H;小时+1

CJNEA,#23H,H31

MOV30H,#00H

SJMPADDH12

H31:ADDA,#01

DAA

MOV30H,A

ADDH12:SETBP2.6

RET

DECMH:MOVPO,#0FFH;减一分钟/一小时

MOVP2,#10111111B

JNBP2.1,DECM11

CLR05H;按键1是否有效

DECM11:JB05H,DECM12

JBP2.1,DECM12

LCALLMXIAN;这四个为去抖动

MOVP0,#0FFH

MOVP2,#10111111B

JBP2.1,DECM12

SETB05H;按键1是否有效

JNB09H,DECMH3

MOVA,31H;分钟-1

CJNEA,#00H,DECMH4

MOV31H,#59H

SJMPDECM12

17

DECMH4:LCALLDECA

MOV31H,A

SJMPDECM12

DECMH3:MOVA,30H;小时-1

CJNEA,#00H,DECMH5

MOV30H,#23H

SJMPDECM12

DECMH5:LCALLDECA

MOV3OH,A

DECM12:SETBP2.6

RET

十进制减法子程序

DECA:CJNEA,#10H,DECAI;运算范围为l~50

MOVA,#09H

RET

DECA1:CJNEA,#20H,DECA2

MOVA,#19H

RET

DECA2:CJNEA,#30H,DECA3

MOVA,#29H

RET

DECA3:CJNEA,#40H,DECA4

MOVA,#39H

RET

DECA4:CJNEA,#50H,DECA5

MOVA,#49H

RET

DECA5:DECA

RET

闹钟按键子程序

T1M1:MOVPO,#OFFH;闹钟1加一分钟

18

MOVP2,#10111111B

JNBP2.2,T1M11

CLR03H;按键2是否有效

T1M11:JB03H,T1M12

JBP2.2,T1M12

LCALLMXIAN;这四个为去抖动

MOVPO,#0FFH

MOVP2,#10111111B

JBP2.2,T1M12

SETB03H;按键2是否有效

SETBOAH;时钟加减标致位

MOVA,36H;分钟+1

CJNEA,#59H,T1M13

MOV36H,#OOH

SJMPT1M12

T1M13:ADDA,#01

DAA

MOV36H,A

T1M12:SETBP2.6

RET

T1H1:MOVPO,#0FFH;闹钟1加一小时

MOVP2,#10111111B

JNBP2.3,T1H11

CLR04H;按键3是否有效

T1H11:JB04H,T1H12

JBP2.3,T1H12

LCALLMXIAN;这四个为去抖动

MOVPO,#0FFH

MOV

JBP2.3,T1H12

SETB04H;按键3是否有效

CLROAH;时钟加减标致位

MOVA,35H;小时+1

CJNEA,#23H,T1H13

19

MOV35H,#00H

SJMPT1H12

T1H13:ADDA,#01

DAA

MOV35H,A

T1H12:SETBP2.6

RET

T2M1:MOVPO,#OFFH;闹钟2加一分钟

MOVP2,#101111116

JNBP2.2,T2M11

CLR03H;按键2是否有效

T2M11:JB03H,T2M12

JBP2.2,T2M12

LCALLMXIAN;这四个为去抖动

MOVP0,#OFFH

MOVP2,#10111111B

JBP2.2,T2M12

SETB03H;按键2是否有效

SETBOBH;时钟加减标致位

MOVA,38H;分钟+1

CJNEA,#59H,T2M13

MOV38H,#00H

SJMPT2M12

T2M13:ADDA,#01

DAA

MOV38H,A

T2M12:SETBP2.6

RET

T2H1:MOVPO,#OFFH;闹钟2加一小时

MOVP2,#10111111B

JNBP2.3,T2H11

CLR04H;按键3是否有效

T2H11:JB04H,T2H12

20

JBP2.3,T2H12

LCALLMXIAN;这四个为去抖动

MOVPO,#OFFH

MOVP2,#1011111IB

JBP2.3,T2H12

SETB04H;按键3是否有效

CLROBH;时钟加减标致位

MOVA,37H;小时+1

CJNEA,#23H,T2H13

MOV37H,#00H

SJMPT2H12

T2H13:ADDA,#01

DAA

MOV37H,A

T2H12:SETBP2.6

RET

IIIJJ手中1

DECT1:MOVPO,#OFFH;减一分钟/一小时

MOVP2,#10111111B

JNBP2.1,DECT11

CLR05H;按键1是否有效

DECT11:JB05H,DECT12

JBP2.1,DECT12

LCALLMXIAN;这四个为去抖动

MOVP0,#0FFH

MOVP2,#10111111B

JBP2.1,DECT12

SETB05H;按键1是否有效

JNBOAH,DECT13

MOVA,36H;分钟-1

CJNEA,#00H,DECT14

MOV36H,#59H

SJMPDECT12

DECT14:LCALLDECA

MOV36H,A

21

SJMPDECT12

DECT13:M0VA,35H;小时T

CJNEA,#OOH,DECT15

MOV35H,#23H

SJMPDECT12

DECT15:LCALLDECA

MOV35H,A

DECT12:SETBP2.6

RET

-------------闹钟2-----------

DECT2:M0VPO,#OFFH;减一分钟/一小时

MOVP2,#1OU1111B

JNBP2.1,DECT21

CLR05H;按键1是否有效

DECT21:JB05H,DECT22

JBP2.1,DECT22

LCALLMXIAN;这四个为去抖动

MOVPO,#0FFH

MOVP2,#10111111B

JBP2.1,DECT22

SETB05H;按键1是否有效

JNBOBH,DECT23

MOVA,38H;分钟-1

CJNEA,#00H,DECT24

MOV38H,#59H

SJMPDECT22

DECT24:LCALLDECA

MOV38H,A

SJMPDECT22

DECT23:MOVA,37H;小时T

CJNEA,#00H,DECT25

MOV37H,#23H

22

SJMPDECT22

DECT25:LCALLDECA

MOV37H,A

DECT22:SETBP2.6

RET

—————■~-闹钟开关-------------—

T1T2:MOVPO,#0FFH;闹钟开关

MOVP2,#10111111B

JNBP2.2,T1T21

CLR05H;按键2是否有效

T1T21:JB05H,T1T22

JBP2.2,T1T22

SETB05H;按键2是否有效

CPL06H;闹钟开关

JB06H,T1T23

MOVRI,#2

MOV3CH,#OCH;将暂存的数转成字形显示"0N〃

MOV3DH,#0AAH;将暂存的数转成字形显示〃〃

MOV3EH,#0AAH;将暂存的数转成字形显示〃〃

SETB07H;不显示小数点1

SETB08H;不显示小数点2

T1DAT3:MOVR7,#100

T1DAT2:LCALLMXIAN

DJNZR7,T1DAT2

DJNZRI,T1DAT3

SJMPT1T22

T1T23:MOVRI,#2

MOV3CH,#0FH;将暂存的数转成字形显示"0F”

MOV3DH,#0FAH;将暂存的数转成字形显示〃F”

MOV3EH,#0AAH;将暂存的数转成字形显示〃”

SETB07H;不显示小数点1

SETB08H;不显示小数点2

T2DAT3:MOVR7,#100

T2DAT2:LCALLMXIAN

DJNZR7,T2DAT2

23

DJNZRI,T2DAT3

T1T22:SETBP2.6

RET

显示年月日按键子程序

DAT:MOVPO,#OFFH

MOVP2,#1O1U111B

JBP2.3,DAT1

MOVRI,#5

MOV3CH,39H;将暂存的数转成字形显示39H

MOV3DH,3AH;将暂存的数转成字形显示3AH

MOV3EH,3BH;将暂存的数转成字形显示3BH

CLR07H;显示小数点1

CLR08H;显示小数点2

DAT3:M0VR7,#100

DAT2:LCALLMXIAN

DJNZR7,DAT2

DJNZRI,DAT3

DAT1:SETBP2.6

RET

DATEN:MOVP0,#OFFH;年份加1

MOVP2,#10111111B

JNBP2.3,DATEN1

CLR04H;按键3是否有效

DATEN1:JB04H,DATEN2

JBP2.3,DATEN2

LCALLMXIAN;这四个为去抖动

MOVP0,#0FFH

MOVP2,#10111111B

JBP2.3,DATEN2

SETB04H;按键3是否有效

ADDN:MOVA,39H;年份+1

CJNEA,#50H,DATEN3

MOV39H,#01H

24

SJMPDATEN2

DATEN3:ADDA,#01

DAA

MOV39H,A

DATEN2:SETBP2.6

RET

DATEM:MOVPO,#0FFH;月份加1

MOVP2,#101111116

JNBP2.2,DATEM1

CLR03H;按键2是否有效

DATEM1:JB03H,DATEM2

JBP2.2,DATEM2

LCALLMXIAN;这四个为去抖动

MOVPO,#0FFH

MOVP2,#10111111B

JBP2.2,DATEM2

SETB03H;按键3是否有效

ADDM:MOVA,3AH;月份+1

CJNEA,#12H,DATEM3

MOV3AH,#01H

LCALLADDN;年份+1

SJMPDATEM2

DATEM3:ADDA,#0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论