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

下载本文档

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

文档简介

1、摘摘 要要 本次设计宠物自动喂食机的基本功能和设计思路,根据给定的规定动作顺 序,综合运用所学的基本理论、基本知识和相关的机械设计专业知识,完成宠 物自动喂食机理论方案的创新设计,并绘制必要的零部件图,其中包括装置的 原理方案构思和拟定;原理方案的实现、传动方案的设计,主要结构的设计简 图;设计计算与说明。 宠物自动喂食机设计要求:定时投放饲料,具有开机自检功能,可以设定 开启关闭时间的长短,适应不同宠物食量的需要,使用电动机驱动,其电源应 为安全电源。 宠物自动喂食机设计的主要技术关键问题为:饲料的定时投放,料口的开 合角度的确定,定时长短的设计,时间设定模块的组合。 关键字:单片机 设计计

2、算 定时 机构 摘摘 要要.I 1 1 主轴的设计主轴的设计 .1 1.1 主轴材料的选择: .1 1.2 主轴加工方法的选择: .1 2 2 主轴参数计算:主轴参数计算:.2 2.1 主轴尺寸的确定: .2 2.1.1 估取主轴的长度和直径:.2 2.1.2 根据轴向定位的要求确定轴的各段长度.2 2.2 轴上力的校合.3 2.3 精确校核轴的疲劳强度 .3 2.3.1 判断危险截面.3 2.3.2 截面IV右侧的.3 3 3 行程开关旋转件的设计行程开关旋转件的设计.5 4 4 减速电动机的选择:减速电动机的选择:.5 5 5 控制系统设计控制系统设计.6 5.1 系统方案设计构成 .6

3、5.2 单片机的选用.6 5.2.1 I/O 口线.6 5.2.2 控制口线.7 5.2.3 电源和时钟.7 6 6 程序编写程序编写.8 6.1 连线图:.8 6.2 程序设计:.8 7 7 设计心得设计心得 .28 参考文献参考文献.29 1 1 主轴的设计主轴的设计 在宠物自动喂食机上采用直接由电机带动主轴旋转,控制料口的开启和关 闭,由于电机选用的是具有自锁功能的直流减速电机,中间不采用减速装置, 简化结构设计,使系统的结构尽量的紧凑。所以直接用电机驱动主轴,省去中 间的减速环节。 1.1 主轴材料的选择: 主轴的选用 45 钢,45 钢的加工性能较为理想,材料的价格比较低廉,但 是这

4、是一种中碳钢,淬火性能并不好, 45 号钢可以淬硬至 HRC4246。所以如 果需要表面硬度,又希望发挥 45 钢优越的机械性能,常将 45 钢表面渗碳淬火, 这样就能得到需要的表面硬度。调质处理后零件具有良好的综合机械性能,广 泛应用于各种重要的结构零件,特别是那些在交变负荷下工作的连杆、螺栓、 齿轮及轴类等。 1.2 主轴加工方法的选择: 由于主轴是间歇回转类零件,不需要长时间的连续运转,所以加工的精度 不需要很高,在普通的车床上既可以加工。又因为主轴的外形相对简单,不需 要经常的换刀,所以加工的时间教短。在加工主轴时,需要注意的是径向尺寸 的控制,不过通过合理的安排加工工艺可以解决。最后

5、的端部的钻孔是需要控 制空之间的距离,所以在单件试制的时候可以不用专用的夹具,在大量生产的 时候需要安排专用的夹具,提高生产效率。尤其需要注意的是孔中心的确定, 因为是后续安装旋转件的,所以要控制中心的偏差。 2 2 主轴参数计算主轴参数计算: 2.1 主轴尺寸的确定: 由设计题目中要求可知:下料口的孔直径为 5mm.由机械设计手册表 6.2-3 取主轴的直径为 5mm; 2.1.1 估取主轴的长度和直径: 图 2-1 轴的长度和直径 1) 1-2 段轴用于安装联轴器,故取直径为 5mm。 2) 2-3 段安装活动挡片,直径 5mm。 3) 3-4 段分隔段,直径为 5mm。 4) 4-5 段

6、为过度段,直径为 16mm。 5) 5-6 段安装旋转件,直径为 40mm。 2.1.2 根据轴向定位的要求确定轴的各段长度 1) 1-2 段为安装联轴器为 30mm 2) 2-3 段为安装活动挡片长度为 60mm。 3) 3-4 段为为分隔长度为 10mm 4) 4-5 段用于安装旋转件长度为 6mm。 5) 5-6 段安装旋转件长度为 10 2.2 轴上力的校合 66 207.5 63.5 图 2-2 轴上力的校合 2.3 精确校核轴的疲劳强度 2.3.1 判断危险截面 由于截面 IV 处受的载荷较大,直径较小,所以判断为危险截面 2.3.2 截面 IV 右侧的 MPa W Mm b 5

7、. 17 截面上的转切应力为MPa W T T T 64 . 7 2 MPa T mb 99 . 7 2 98.15 2 由于轴选用 40cr,调质处理,所以 ,。MPa B 735MPa386 1 MPa260 1 (2P355 表 15-1) 综合系数的计算 由,经直线插入,知道因轴肩而形成的045 . 0 55 2 d r 6 . 1 d D 理论应力集中为,23 . 2 81 . 1 (2P38 附表 3-2 经直线插入) 轴的材料敏感系数为,85 . 0 q87 . 0 q (2P37 附图 3-1) 故有效应力集中系数为 05 . 2 ) 1(1 qk 70 . 1 ) 1(1 q

8、k 查得尺寸系数为,扭转尺寸系数为,72. 0 76 . 0 (2P37 附图 3-2) (2P39 附图 3-3) 轴采用磨削加工,表面质量系数为,92 . 0 (2P40 附图 3-4) 轴表面未经强化处理,即,则综合系数值为 1 q 93 . 2 1 1 k K 11 . 2 1 1 k K a) 碳钢系数的确定 碳钢的特性系数取为,1 . 0 05 . 0 b) 安全系数的计算 轴的疲劳安全系数为 92 . 6 1 ma K S 66.24 1 ma K S S SS SS Sca 5 . 166 . 6 22 故轴的选用安全。 3 3 行程开关旋转件的设计行程开关旋转件的设计 图 3

9、-1 行程开关旋转件 由示意图可知,两旋转件在旋转时有一个 90 度角的角度差,通过行程开关 输出的信号的不同来分辨料口的开合处于什么样的状态,然后通过单片机系统 的处理,输出相应的信号,带动电机的旋转,来控制料口的开合。料口的状态 有完全关闭和完全打开两种状态, (1)两行程开关都输出信号时,料口处于关 闭状态, (2)两行程开关有一个闭合输出信号时,料口处于完全打开状态。 4 4 减速电动机的选择减速电动机的选择: 直流齿轮减速电动机由于其结构简单,性能可靠,故选择直流齿轮减速电 动机。 ZGA25RZGA25R-310310 式直流齿轮减速电动机产品数据: ZGA25RZGA25R-31

10、0310 使用电压:DC-6V 转速: 20rpm 外径:25mm 总长:51mm 伸出轴长:10mm 扭力:1-3KG 5 5 控制系统设计控制系统设计 5.1 系统方案设计构成 本系统包括机械部分和伺服电机控制两部分。根据所给的要求,拟用开环控制 结构设计方案,其开环系统结构原理如下: 图 5-1 开环系统结构原理图 具体原理:编写单片机指令,通过扫描键盘输入的数字记录需要转动的角度, 然后计算需要输出的脉冲,用软件的方法实现脉冲的输出,然后由光电耦合电 路减小外部的干扰,由功率放大电路实现功率的放大,然后接减速电动机,通 过联轴器把力矩传到主轴。带动料口的开关。 5.2 单片机的选用 本

11、设计选用 ATS9S51 芯片,片内无 ROM 或者 EPROM,使用时必须配置外部 的程序存储器 EPROM。本设计选用了 2764 扩展其空间,8031 的引脚分 3 大功能: 5.2.1 I/O 口线 P0,P1,P2,P3 共 4 个八位口。 5.2.2 控制口线 PSEN(片外取指控制)、ALE(地址锁存控制)、EA(片外存储器选择)、 RESET(复位控制)。 5.2.3 电源和时钟 ATS9S51 最小应用系统。ATS9S51 内部不带 ROM,需要外接 EPROM 作为外部 程序存储器。又因为 8031 在外接程序存储器或数据存储器时地址的低 8 位信息 和数据信息分时送出,故

12、还需要采用一片 74LS373 来锁存低 8 为地址信息。这 样,一片 2764EPROM 和一片 74LS373 组成了一个最小的计算机应用系统。如图 MCS-51 的程序存储器空间与数据存储器空间是相互独立的。用户可最多扩 展到 64kb 的程序存储器几 64kb 的数据存储器,编址为 0000HFFFFH。片内 8kb 单元地址要求地址线 13 根(A0A12)。 它由 P0 和 P2.0P2.4 组成。地址锁存器的锁存信号为 ALE。程序存储器的 取地址消耗为 PSEN。由于程序存储器芯片只有一片,所以其片选端(31)直接 接地。 8031 芯片本身的连接 31 必须接地来表明选择外部

13、存储器外,还必须有复 位和时钟电路。在此系统中有 P1、P3 口作为用户 I/O 口使用;74LS373 为地址 锁存器,他是一片三态输出 8D 触发器,当 OE=1 时三态门导通,输出线上为 8 为锁存器的状态。当 OE=1 时输出为高住抗转台。G 为锁存信号输入线,G=1 时 锁存器输出等于 D 端输入,G 输入短跳变将输入信息锁存到 8 为锁存器中。 当 8031 在访问外部程序存储器时,P2 口输入高 8 为地址:P6 口分时传送 底 8 为地址和指令字节。在 ALE 为高电平时,P0 口输出的地址有效,并由 ALE 的下降沿锁存到地址锁存器中,此时外部程序存储器宣统信号线 PSEN

14、出现低电 平,选通相应的外部。EPROM 存储器;相应的指令字节出现在 EPROM 的数据线 (O0O7)上,输入到 P0 口,CPU 将指令字节读入指令寄存器。 6 6 程序编写程序编写 6.1 连线图: 图 6-1 连线图 6.2 程序设计: 单片机:AT89S51,F=6MHz,影响第 0 组的 R1,R2,R3,R4,R5,R6,R7, 20H,21H,30H,31H,32H,35H,36H,37H,38H,39H,3AH,3BH,3CH,3DH,3EH。 ORG 00H ;程序从这里开始 SJMP MAIN ;主程序 ORG 0BH ;定时器 0 中断入口 LJMP GOTO ORG

15、 40H ;初始化 MAIN:MOV SP,#5FH ;设堆栈 MOV 30H,#12H ;存放小时,设初值 MOV 31H,#00H ;存放分钟,设初值 MOV 32H,#00H ;存放秒,设初值 MOV 35H,#06H ;第一个闹钟的小时位,设初值 MOV 36H,#30H ;第一个闹钟的分钟位,设初值 MOV 37H,#09H ;第二个闹钟的小时位,设初值 MOV 38H,#00H ;第二个闹钟的分钟位,设初值 MOV 39H,#06H ;存放年 MOV 3AH,#11H ;存放月 MOV 3BH,#05H ;存放日 MOV 3CH,#00H ;显示缓存,第 1,2 位 MOV 3DH

16、,#00H ;显示缓存,第 3,4 位 MOV 3EH,#00H ;显示缓存,第 5,6 位 CLR 00H ;秒闪烁暂存 20H.0 SETB 01H ;闹钟 1 输出位 20H.1 SETB 02H ;闹钟 2 输出位 20H.2 CLR 03H ;按键 2 是否有效标致位 20H.3 CLR 04H ;按键 3 是否有效标致位 20H.4 CLR 05H ;按键 2 是否有效标致位 20H.5 CLR 06H ;闹钟开关标致 20H.6 0为开1为关 SETB 07H ;显示缓存,小数点 1 SETB 08H ;显示缓存,小数点 2 SETB 09H ;时钟加减标致位 0为小时,1为分钟

17、 SETB 0AH ;闹钟 1 加减标致位0为小时,1为分钟 SETB 0BH ;闹钟 2 加减标致位0为小时,1为分钟 MOV R2,#2 ;设定时次数 MOV R3,#50 MOV R4,#25 MOV TMOD,#02H ;设定时器 0 工作方式为方式 2 MOV TH0,#56 ;设初始值 MOV TL0,#56 SETB TR0 ;启动定时器和中断 SETB ET0 SETB EA 主程序主程序 MMAIN:JNB P2.0,MMAIN ;时钟主程序 MMAIN2:LCALL XIAN ;显示 LCALL CS ;按键秒清零 LCALL DAT ;是否显示年月日 LCALL DSQ

18、;定时器 LCALL T1T2 ;闹钟开关 CLR P2.6 ;按键有效 JNB P2.0,MENU1 SJMP MMAIN2 MENU1:JNB P2.0,$ ;时钟调整 SETB P1.0 MOV 3CH,30H ;将暂存的数转成字形 显示 30H MOV 3DH,31H ;将暂存的数转成字形 显示 31H MOV 3EH,#0ABH ;将暂存的数转成字形 显示 t CLR 07H ;显示小数点 1 SETB 08H ;不显示小数点 2 LCALL MXIAN ;显示菜单 1 LCALL ADDM1 ;按键加一分钟 LCALL ADDH1 ;按键加一小时 LCALL DECMH ;减一分钟

19、/一小时 CLR P2.6 JNB P2.0,MENU2 SJMP MENU1 MENU2:JNB P2.0,$ ;日期调整 SETB P1.0 MOV 3CH,39H ;将暂存的数转成字形 显示 39H MOV 3DH,3AH ;将暂存的数转成字形 显示 3AH MOV 3EH,3BH ;将暂存的数转成字形 显示 3BH CLR 07H ;显示小数点 1 CLR 08H ;显示小数点 2 LCALL MXIAN ;显示菜单 2 LCALL DATEN ;年份+1 LCALL DATEM ;月份+1 LCALL DATED ;+1 日 CLR P2.6 JNB P2.0,MENU3 SJMP

20、MENU2 MENU3:JNB P2.0,$ ;闹钟 1 SETB P1.0 MOV 3CH,35H ;将暂存的数转成字形 显示 35H MOV 3DH,36H ;将暂存的数转成字形 显示 36H MOV 3EH,#0A1H ;将暂存的数转成字形 显示 1 CLR 07H ;显示小数点 1 SETB 08H ;不显示小数点 2 LCALL MXIAN ;显示菜单 3 LCALL T1M1 ;闹钟 1 分钟+1 LCALL T1H1 ;闹钟 1 小时+1 LCALL DECT1 ;闹钟 1 减 1 小时/1 分钟 CLR P2.6 JNB P2.0,MENU4 SJMP MENU3 MENU4:

21、JNB P2.0,$ ;闹钟 2 SETB P1.0 MOV 3CH,37H ;将暂存的数转成字形 显示 37H MOV 3DH,38H ;将暂存的数转成字形 显示 38H MOV 3EH,#0A2H ;将暂存的数转成字形 显示 2 CLR 07H ;显示小数点 1 SETB 08H ;不显示小数点 2 LCALL MXIAN ;显示菜单 4 LCALL T2M1 ;闹钟 2 分钟+1 LCALL T2H1 ;闹钟 2 小时+1 LCALL DECT2 ;闹钟减 2 小时/1 分钟 CLR P2.6 JNB P2.0,MENU5 SJMP MENU4 MENU5:LJMP MMAIN 中断处理

22、中断处理 GOTO:PUSH A ;保护现场 DJNZ R3,GOTO1 MOV R3,#50 DJNZ R4,GOTO1 MOV R4,#25 CPL 00H ;20H.0 用于秒闪烁 DJNZ R2,GOTO1 MOV R2,#02H ;配合定时器定时一秒 MOV A,32H ;秒位是否为 59 秒,是:秒清零,分钟+1,判 断分钟 CJNE A,#59H,M1 ;否:跳转到秒+1 MOV 32H,#00H MOV A,31H ;分钟位同上 CJNE A,#59H,M2 MOV 31H,#00H MOV A,30H ; 小时位同上 CJNE A,#23H,M3 MOV 30H,#00H L

23、CALL ADDD SJMP GOTO1 M1:ADD A,#01 ;秒+1 DA A MOV 32H,A SJMP GOTO1 M2:ADD A,#01 ;分钟+1 DA A MOV 31H,A SJMP GOTO1 M3:ADD A,#01 ; 小时+1 DA A MOV 30H,A SJMP GOTO1 GOTO1:POP A ;恢复现场 RETI 时钟显示专用子程序 XIAN:MOV A,32H ;将暂存的数转成字形 SWAP A MOV B,#10H DIV AB LCALL ZH MOV P0,A ;LED 显示秒位 MOV P2,#0FEH LCALL DELAY MOV A,B

24、 LCALL ZH MOV P0,A MOV P2,#0FDH LCALL DELAY MOV A,31H ;将暂存的数转成字形 SWAP A MOV B,#10H DIV AB LCALL ZH MOV P0,A ;LED 显示分钟位 MOV C,00H MOV P0.7,C ;秒闪烁 MOV P2,#0FBH LCALL DELAY SETB P0.7 ; 取消显示小数点 MOV A,B LCALL ZH MOV P0,A MOV P2,#0F7H LCALL DELAY MOV A,30H ;将暂存的数转成字形 SWAP A MOV B,#10H DIV AB LCALL ZH MOV

25、P0,A ;LED 显示小时位 CLR P0.7 ;显示小数点 MOV P2,#0EFH LCALL DELAY SETB P0.7 ;取消显示小数点 MOV A,B LCALL ZH MOV P0,A MOV P2,#0DFH LCALL DELAY RET DELAY:MOV R5,#0AH ;延时 1mS(6MHz) L1:MOV R6,#19H L2:DJNZ R6,L2 DJNZ R5,L1 RET ZH:MOV DPTR,#TAB ;字形转换 MOVC A,A+DPTR MOV P2,#0FFH ;消影 RET TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,

26、82H,0F8H,80H,90H ;字形 09 DB 0FFH,87H,0C8H,0A1H,86H,8EH ;字形 A= ,B=t,C=n,F=F,-hsz TAB2:DB 30H,31H,28H,31H,30H,31H,30H,31H,31H,30H,31H,30H,31H ; 每个月的天数,平年 TAB3:DB 30H,31H,29H,31H,30H,31H,30H,31H,31H,30H,31H,30H,31H ; 每个月的天数,闰年 显示子程序结束 菜单显示子程序菜单显示子程序 MXIAN:MOV A,3EH ;将暂存的数转成字形 SWAP A MOV B,#10H DIV AB LC

27、ALL ZH MOV P0,A ;LED 显示 5,6 位 MOV P2,#0FEH LCALL DELAY MOV A,B LCALL ZH MOV P0,A MOV P2,#0FDH LCALL DELAY MOV A,3DH ;将暂存的数转成字形 SWAP A MOV B,#10H DIV AB LCALL ZH MOV P0,A ;LED 显示 3,4 位 MOV C,08H MOV P0.7,C ;是否显示小数点 2 MOV P2,#0FBH LCALL DELAY SETB P0.7 ; 取消显示小数点 MOV A,B LCALL ZH MOV P0,A MOV P2,#0F7H

28、LCALL DELAY MOV A,3CH ;将暂存的数转成字形 SWAP A MOV B,#10H DIV AB LCALL ZH MOV P0,A ;LED 显示 1,2 位 MOV C,07H MOV P0.7,C ;是否显示小数点 1 MOV P2,#0EFH LCALL DELAY SETB P0.7 ; 取消显示小数点 MOV A,B LCALL ZH MOV P0,A MOV P2,#0DFH LCALL DELAY RET 按键子程序开始按键子程序开始 CS:MOV P0,#0FFH ;秒清零 MOV P2,#B JB P2.1,CS1 MOV 32H,#00H CS1:SET

29、B P2.6 RET - ADDM1:MOV P0,#0FFH ;加一分钟 MOV P2,#B JNB P2.2,ADDM11 CLR 03H ;按键 2 是否有效 ADDM11:JB 03H,ADDM12 JB P2.2,ADDM12 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.2,ADDM12 SETB 03H ;按键 2 是否有效 SETB 09H ;时钟加减标致位 MOV A,31H ;分钟 +1 CJNE A,#59H,M21 MOV 31H,#00H SJMP ADDM12 M21:ADD A,#01 DA A MOV 31H

30、,A SJMP ADDM12 ADDM12:SETB P2.6 RET - ADDH1:MOV P0,#0FFH ;加一小时 MOV P2,#B JNB P2.3,ADDH11 CLR 04H ;按键 3 是否有效 ADDH11:JB 04H,ADDH12 JB P2.3,ADDH12 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.3,ADDH12 SETB 04H ;按键 3 是否有效 CLR 09H ;时钟加减标致位 MOV A,30H ; 小时 +1 CJNE A,#23H,H31 MOV 30H,#00H SJMP ADDH12 H

31、31:ADD A,#01 DA A MOV 30H,A ADDH12:SETB P2.6 RET - DECMH:MOV P0,#0FFH ;减一分钟/一小时 MOV P2,#B JNB P2.1,DECM11 CLR 05H ;按键 1 是否有效 DECM11:JB 05H,DECM12 JB P2.1,DECM12 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.1,DECM12 SETB 05H ;按键 1 是否有效 JNB 09H,DECMH3 MOV A,31H ;分钟 -1 CJNE A,#00H,DECMH4 MOV 31H,#

32、59H SJMP DECM12 DECMH4:LCALL DECA MOV 31H,A SJMP DECM12 DECMH3:MOV A,30H ;小时 -1 CJNE A,#00H,DECMH5 MOV 30H,#23H SJMP DECM12 DECMH5:LCALL DECA MOV 30H,A DECM12:SETB P2.6 RET 十进制减法子程序十进制减法子程序 DECA:CJNE A,#10H,DECA1 ;运算范围为 150 MOV A,#09H RET DECA1:CJNE A,#20H,DECA2 MOV A,#19H RET DECA2:CJNE A,#30H,DECA

33、3 MOV A,#29H RET DECA3:CJNE A,#40H,DECA4 MOV A,#39H RET DECA4:CJNE A,#50H,DECA5 MOV A,#49H RET DECA5:DEC A RET 闹钟按键子程序闹钟按键子程序 T1M1:MOV P0,#0FFH ;闹钟 1 加一分钟 MOV P2,#B JNB P2.2,T1M11 CLR 03H ;按键 2 是否有效 T1M11:JB 03H,T1M12 JB P2.2,T1M12 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.2,T1M12 SETB 03H ;

34、按键 2 是否有效 SETB 0AH ;时钟加减标致位 MOV A,36H ;分钟 +1 CJNE A,#59H,T1M13 MOV 36H,#00H SJMP T1M12 T1M13:ADD A,#01 DA A MOV 36H,A T1M12:SETB P2.6 RET - T1H1:MOV P0,#0FFH ;闹钟 1 加一小时 MOV P2,#B JNB P2.3,T1H11 CLR 04H ;按键 3 是否有效 T1H11:JB 04H,T1H12 JB P2.3,T1H12 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.3,T1

35、H12 SETB 04H ;按键 3 是否有效 CLR 0AH ;时钟加减标致位 MOV A,35H ;小时 +1 CJNE A,#23H,T1H13 MOV 35H,#00H SJMP T1H12 T1H13:ADD A,#01 DA A MOV 35H,A T1H12:SETB P2.6 RET - T2M1:MOV P0,#0FFH ;闹钟 2 加一分钟 MOV P2,#B JNB P2.2,T2M11 CLR 03H ;按键 2 是否有效 T2M11:JB 03H,T2M12 JB P2.2,T2M12 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,

36、#B JB P2.2,T2M12 SETB 03H ;按键 2 是否有效 SETB 0BH ;时钟加减标致位 MOV A,38H ;分钟 +1 CJNE A,#59H,T2M13 MOV 38H,#00H SJMP T2M12 T2M13:ADD A,#01 DA A MOV 38H,A T2M12:SETB P2.6 RET - T2H1:MOV P0,#0FFH ;闹钟 2 加一小时 MOV P2,#B JNB P2.3,T2H11 CLR 04H ;按键 3 是否有效 T2H11:JB 04H,T2H12 JB P2.3,T2H12 LCALL MXIAN ;这四个为去抖动 MOV P0

37、,#0FFH MOV P2,#B JB P2.3,T2H12 SETB 04H ;按键 3 是否有效 CLR 0BH ;时钟加减标致位 MOV A,37H ;小时 +1 CJNE A,#23H,T2H13 MOV 37H,#00H SJMP T2H12 T2H13:ADD A,#01 DA A MOV 37H,A T2H12:SETB P2.6 RET -闹钟闹钟 1 1- DECT1:MOV P0,#0FFH ;减一分钟/一小时 MOV P2,#B JNB P2.1,DECT11 CLR 05H ;按键 1 是否有效 DECT11:JB 05H,DECT12 JB P2.1,DECT12 L

38、CALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.1,DECT12 SETB 05H ;按键 1 是否有效 JNB 0AH,DECT13 MOV A,36H ;分钟 -1 CJNE A,#00H,DECT14 MOV 36H,#59H SJMP DECT12 DECT14:LCALL DECA MOV 36H,A SJMP DECT12 DECT13:MOV A,35H ;小时 -1 CJNE A,#00H,DECT15 MOV 35H,#23H SJMP DECT12 DECT15:LCALL DECA MOV 35H,A DECT12:SET

39、B P2.6 RET - 闹钟闹钟 2 2- DECT2:MOV P0,#0FFH ;减一分钟/一小时 MOV P2,#B JNB P2.1,DECT21 CLR 05H ;按键 1 是否有效 DECT21:JB 05H,DECT22 JB P2.1,DECT22 LCALL MXIAN ;这四个为去抖动 MOV P0,#0FFH MOV P2,#B JB P2.1,DECT22 SETB 05H ;按键 1 是否有效 JNB 0BH,DECT23 MOV A,38H ;分钟 -1 CJNE A,#00H,DECT24 MOV 38H,#59H SJMP DECT22 DECT24:LCALL

40、 DECA MOV 38H,A SJMP DECT22 DECT23:MOV A,37H ;小时 -1 CJNE A,#00H,DECT25 MOV 37H,#23H SJMP DECT22 DECT25:LCALL DECA MOV 37H,A DECT22:SETB P2.6 RET -闹钟开关闹钟开关- T1T2:MOV P0,#0FFH ;闹钟开关 MOV P2,#B JNB P2.2,T1T21 CLR 05H ;按键 2 是否有效 T1T21:JB 05H,T1T22 JB P2.2,T1T22 SETB 05H ;按键 2 是否有效 CPL 06H ;闹钟开关 JB 06H,T1T23

温馨提示

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

评论

0/150

提交评论