还剩31页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
机电一体化综合课程设计班级机制071(专升本)姓名董静学号307011001指导老师高俊浙江科技学院机械与汽车工程学院《机电一体化系统设计》课程设计任务书
一、课程设计的目的本次设计是机电一体化和计算机控制课程结束之后进行的一个重要的综合性、实践性教学环节,课程设计的基本目的是
1、掌握机电一体化系统的设计过程和方法,包括参数的选择、传动设计、零件计算、结构设计、计算机控制等培养系统分析及设计的能力
2、综合应用过去所学的理论知识,提高__实际和综合分析的能力,进一步巩固、加深和拓宽所学的知识
3、训练和提高设计的基本技能,如计算,绘图,运用设计资料、标准和规范,编写技术文件(说明书)等
二、设计任务及要求设计题目宠物自动喂食机的设计
1.设计内容包括总体设计,机械系统的设计与计算,计算机控制系统设计,编写设计计算说明书;
2.设计要求包括定时投放饲料,具有开机自检功能,可以设定开启关闭时间的长短,适应不同宠物食量的需要;
3.机械部分的设计零件图,装配示意图;
4.计算机控制的设计控制系统接口图一张;
5.控制装置采用直流减速电机驱动,MCS-51或单片机FX2N-PLC控制系统,软件环分,由键盘输入实现开环控制
6.编写设计计算说明书1份宠物自动喂食机的设计摘要本次设计宠物自动喂食机的基本功能和设计思路,根据给定的规定动作顺序,综合运用所学的基本理论、基本知识和相关的机械设计专业知识,完成宠物自动喂食机理论方案的创新设计,并绘制必要的零部件图,其中包括装置的原理方案构思和拟定;原理方案的实现、传动方案的设计,主要结构的设计简图;设计计算与说明宠物自动喂食机设计要求定时投放饲料,具有开机自检功能,可以设定开启关闭时间的长短,适应不同宠物食量的需要,使用电动机驱动,其电源应为安全电源宠物自动喂食机设计的主要技术关键问题为饲料的定时投放,料口的开合角度的确定,定时长短的设计,时间设定模块的组合关键字单片机设计计算定时机构目录设计任务书……………………………………………………1主轴的设计……………………………………………………2主轴材料的选择………………………………………………2主轴__方法的确定…………………………………………2主轴的参数计算………………………………………………3轴上力的校合…………………………………………………4行程开关旋转件的设计………………………………………5减速电动机的选择……………………………………………5控制系统设计…………………………………………………6程序设计………………………………………………………8设计小结………………………………………………………29参考资料目录…………………………………………………30主轴的设计在宠物自动喂食机上采用直接由电机带动主轴旋转,控制料口的开启和关闭,由于电机选用的是具有自锁功能的直流减速电机,中间不采用减速装置,简化结构设计,使系统的结构尽量的紧凑所以直接用电机驱动主轴,省去中间的减速环节
(一)、主轴材料的选择:主轴的选用45钢,45钢的__性能较为理想,材料的__比较低廉,但是这是一种中碳钢,淬火性能并不好,45号钢可以淬硬至HRC42~46所以如果需要表面硬度,又希望发挥45钢优越的机械性能,常将45钢表面渗碳淬火,这样就能得到需要的表面硬度调质处理后零件具有良好的综合机械性能,广泛应用于各种重要的结构零件,特别是那些在交变负荷下工作的连杆、螺栓、齿轮及轴类等
(二)、主轴__方法的选择:由于主轴是间歇回转类零件,不需要长时间的连续运转,所以__的精度不需要很高,在普通的车床上既可以__又因为主轴的外形相对简单,不需要经常的换刀,所以__的时间教短在__主轴时,需要注意的是径向尺寸的控制,不过通过合理的安排__工艺可以解决最后的端部的钻孔是需要控制空之间的距离,所以在单件试制的时候可以不用专用的夹具,在大量生产的时候需要安排专用的夹具,提高生产效率尤其需要注意的是孔中心的确定,因为是后续__旋转件的,所以要控制中心的偏差
(三)、主轴参数计算
1.主轴尺寸的确定由设计题目中要求可知下料口的孔直径为5mm.由《机械设计手册》表
6.2-3取主轴的直径为5mm;估取主轴的长度和直径:i.1-2段轴用于__联轴器,故取直径为5mmii.2-3段__活动挡片,外径5mmiii.3-4段分隔段,直径为5mmiv.4-5段为过度段,直径为16mmv.5-6段__旋转件,直径为40mm1)根据轴向定位的要求确定轴的各段长度
1.1-2段为__联轴器为30mm
2.2-3段为__活动挡片长度为60mm
3.3-4段为为分隔长度为10mm
4.4-5段用于__旋转件长度为6mm
5.5-6段__旋转件长度为101.轴上力的校合
66207.
563.52.精确校核轴的疲劳强度1)判断危险截面由于截面IV处受的载荷较大,直径较小,所以判断为危险截面2)截面IV右侧的截面上的转切应力为由于轴选用40cr,调质处理,所以,,(
[2]P355表15-1)a综合系数的计算由,经直线插入,知道因轴肩而形成的理论应力集中为,,(
[2]P38附表3-2经直线插入)轴的材料敏感系数为,,(
[2]P37附图3-1)故有效应力集中系数为查得尺寸系数为,扭转尺寸系数为,(
[2]P37附图3-2)(
[2]P39附图3-3)轴采用磨削__,表面质量系数为,(
[2]P40附图3-4)轴表面未经强化处理,即,则综合系数值为b碳钢系数的确定碳钢的特性系数取为,c安全系数的计算轴的疲劳安全系数为故轴的选用安全3.行程开关旋转件的设计由示意图可知,两旋转件在旋转时有一个90度角的角度差,通过行程开关输出的__的不同来分辨料口的开合处于什么样的状态,然后通过单片机系统的处理,输出相应的__,带动电机的旋转,来控制料口的开合料口的状态有完全关闭和完全打开两种状态,
(1)两行程开关都输出__时,料口处于关闭状态,
(2)两行程开关有一个闭合输出__时,料口处于完全打开状态
四、减速电动机的选择直流齿轮减速电动机由于其结构简单,性能可靠,故选择直流齿轮减速电动机ZGA25R-310式直流齿轮减速电动机产品数据ZGA25R-310使用电压:DC6V 转速20rpm外径:25mm 总长:51mm伸出轴长:10mm扭力:1-3KG
五、控制系统设计
(一)系统方案设计构成本系统包括机械部分和伺服电机控制两部分根据所给的要求,拟用开环控制结构设计方案,其开环系统结构原理如图1 单片机 光电 耦合 驱动执行 机构具体原理编写单片机指令,通过扫描键盘输入的数字记录需要转动的角度,然后计算需要输出的脉冲,用软件的方法实现脉冲的输出,然后由光电耦合电路减小外部的干扰,由功率放大电路实现功率的放大,然后接减速电动机,通过联轴器把力矩传到主轴带动料口的开关
(二)、单片机的选用本设计选用ATS9S51芯片,片内无ROM或者EPROM,使用时必须配置外部的程序存储器EPROM本设计选用了2764扩展其空间,8031的引脚分3大功能
(1)I/O口线P0P1P2P3共4个八位口
(2)控制口线PSEN片外取指控制、ALE(地址锁存控制)、EA(片外存储器选择)、RESET(复位控制)
(3)电源和时钟ATS9S51最小应用系统ATS9S51内部不带ROM,需要外接EPROM作为外部程序存储器又因为8031在外接程序存储器或数据存储器时地址的低8位信息和数据信息分时送出,故还需要采用一片74LS373来锁存低8为地址信息这样,一片2764EPROM和一片74LS373组成了一个最小的计算机应用系统如图MCS-51的程序存储器空间与数据存储器空间是相互__的用户可最多扩展到64kb的程序存储器几64kb的数据存储器,编址为0000H~FFFFH片内8kb单元地址要求地址线13根(A0~A12)它由P0和P
2.0~P
2.4组成地址锁存器的锁存__为ALE程序存储器的取地址消耗为PSEN由于程序存储器芯片只有一片,所以其片选端
(31)直接接地8031芯片本身的连接31必须接地来表明选择外部存储器外,还必须有复位和时钟电路在此系统中有P
1、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出现低电平,选通相应的外部EPROM存储器;相应的指令字节出现在EPROM的数据线(O0~O7)上,输入到P0口,CPU将指令字节读入指令寄存器(
六、程序编写连线图 程序设计AT__S51F=6MHz影响第0组的R1R2R3R4R5R6R720H21H30H31H32H35H36H37H38H39H3AH__H3CH3DH3EH;;ORG00H;程序从这里开始SJMP__IN;主程序ORG0BH;定时器0中断入口LJMPGOTOORG40H;初始化__IN:MOVSP#5FH;设堆栈MOV30H#12H;存放小时设初值MOV31H#00H;存放分钟设初值MOV32H#00H;存放秒设初值MOV35H#06H;第一个闹钟的小时位设初值MOV36H#30H;第一个闹钟的分钟位设初值MOV37H#09H;第二个闹钟的小时位设初值MOV38H#00H;第二个闹钟的分钟位设初值MOV39H#06H;存放年MOV3AH#11H;存放月MOV__H#05H;存放日MOV3CH#00H;显示缓存第1,2位MOV3DH#00H;显示缓存第3,4位MOV3EH#00H;显示缓存第5,6位CLR00H;秒闪烁暂存20H.0SETB01H;闹钟1输出位20H.1SETB02H;闹钟2输出位20H.2CLR03H;按键2是否有效标致位20H.3CLR04H;按键3是否有效标致位20H.4CLR05H;按键2是否有效标致位20H.5CLR06H;闹钟开关标致20H.60为开1为关SETB07H;显示缓存小数点1SETB08H;显示缓存小数点2SETB09H;时钟加减标致位0为小时1为分钟SETB0AH;闹钟1加减标致位0为小时1为分钟SETB0BH;闹钟2加减标致位0为小时1为分钟MOVR2#2;设定时次数MOVR3#50MOVR4#25MOVTMOD#02H;设定时器0工作方式为方式2MOVTH0#56;设初始值MOVTL0#56SETBTR0;启动定时器和中断SETBET0SETBEA主程序M__IN:JNBP
2.0M__IN;时钟主程序M__IN2:LCALLXIAN;显示LCALLCS;按键秒清零LCALLDAT;是否显示年月日LCALLDSQ;定时器LCALLT1T2;闹钟开关CLRP
2.6;按键有效JNBP
2.0MENU1SJMPM__IN2MENU1:JNBP
2.0$;时钟调整SETBP
1.0MOV3CH30H;将暂存的数转成字形显示30HMOV3DH31H;将暂存的数转成字形显示31HMOV3EH#0ABH;将暂存的数转成字形显示tCLR07H;显示小数点1SETB08H;不显示小数点2LCALLMXIAN;显示菜单1LCALLADDM1;按键加一分钟LCALLADDH1;按键加一小时LCALLDECMH;减一分钟/一小时CLRP
2.6JNBP
2.0MENU2SJMPMENU1MENU2:JNBP
2.0$;日期调整SETBP
1.0MOV3CH39H;将暂存的数转成字形显示39HMOV3DH3AH;将暂存的数转成字形显示3AHMOV3EH__H;将暂存的数转成字形显示__HCLR07H;显示小数点1CLR08H;显示小数点2LCALLMXIAN;显示菜单2LCALLDATEN;年份+1LCALLDATEM;月份+1LCALLDATED;+1日CLRP
2.6JNBP
2.0MENU3SJMPMENU2MENU3:JNBP
2.0$;闹钟1SETBP
1.0MOV3CH35H;将暂存的数转成字形显示35HMOV3DH36H;将暂存的数转成字形显示36HMOV3EH#0A1H;将暂存的数转成字形显示1CLR07H;显示小数点1SETB08H;不显示小数点2LCALLMXIAN;显示菜单3LCALLT1M1;闹钟1分钟+1LCALLT1H1;闹钟1小时+1LCALLDECT1;闹钟1减1小时/1分钟CLRP
2.6JNBP
2.0MENU4SJMPMENU3MENU4:JNBP
2.0$;闹钟2SETBP
1.0MOV3CH37H;将暂存的数转成字形显示37HMOV3DH38H;将暂存的数转成字形显示38HMOV3EH#0A2H;将暂存的数转成字形显示2CLR07H;显示小数点1SETB08H;不显示小数点2LCALLMXIAN;显示菜单4LCALLT2M1;闹钟2分钟+1LCALLT2H1;闹钟2小时+1LCALLDECT2;闹钟减2小时/1分钟CLRP
2.6JNBP
2.0MENU5SJMPMENU4MENU5:LJMPM__IN中断处理GOTO:PUSHA;保护现场DJNZR3GOTO1MOVR3#50DJNZR4GOTO1MOVR4#25CPL00H;20H.0用于秒闪烁DJNZR2GOTO1MOVR2#02H;配合定时器定时一秒MOVA32H;秒位是否为59秒,是秒清零,分钟+1,判断分钟...CJNEA#59HM1;否跳转到秒+1MOV32H#00HMOVA31H;分钟位同上CJNEA#59HM2MOV31H#00HMOVA30H;小时位同上CJNEA#23HM3MOV30H#00HLCALLADDDSJMPGOTO1M1:ADDA#01;秒+1DAAMOV32HASJMPGOTO1M2:ADDA#01;分钟+1DAAMOV31HASJMPGOTO1M3:ADDA#01;小时+1DAAMOV30HASJMPGOTO1GOTO1:POPA;恢复现场RETI时钟显示专用子程序XIAN:MOVA32H;将暂存的数转成字形SWAPAMOVB#10HDIVABLCALLZHMOVP0A;LED显示秒位MOVP2#0FEHLCALLDELAYMOVABLCALLZHMOVP0AMOVP2#0FDHLCALLDELAYMOVA31H;将暂存的数转成字形SWAPAMOVB#10HDIVABLCALLZHMOVP0A;LED显示分钟位MOVC00HMOVP
0.7C;秒闪烁MOVP2#0FBHLCALLDELAYSETBP
0.7;取消显示小数点MOVABLCALLZHMOVP0AMOVP2#0F7HLCALLDELAYMOVA30H;将暂存的数转成字形SWAPAMOVB#10HDIVABLCALLZHMOVP0A;LED显示小时位CLRP
0.7;显示小数点MOVP2#0EFHLCALLDELAYSETBP
0.7;取消显示小数点MOVABLCALLZHMOVP0AMOVP2#0DFHLCALLDELAYRETDELAY:MOVR5#0AH;延时1mS6MHzL1:MOVR6#19HL2:DJNZR6L2DJNZR5L1RETZH:MOVDPTR#TAB;字形转换MOVCA@A+DPTRMOVP2#0FFH;消影RETTAB:DB0C0H0F9H0A4H0B0H99H92H82H0F8H80H90H;字形0~9DB0FFH87H0C8H0A1H86H8EH;字形A=B=tC=nF=F-hszTAB2:DB30H31H28H31H30H31H30H31H31H30H31H30H31H;每个月的天数平年TAB3:DB30H31H29H31H30H31H30H31H31H30H31H30H31H;每个月的天数闰年显示子程序结束菜单显示子程序MXIAN:MOVA3EH;将暂存的数转成字形SWAPAMOVB#10HDIVABLCALLZHMOVP0A;LED显示56位MOVP2#0FEHLCALLDELAYMOVABLCALLZHMOVP0AMOVP2#0FDHLCALLDELAYMOVA3DH;将暂存的数转成字形SWAPAMOVB#10HDIVABLCALLZHMOVP0A;LED显示34位MOVC08HMOVP
0.7C;是否显示小数点2MOVP2#0FBHLCALLDELAYSETBP
0.7;取消显示小数点MOVABLCALLZHMOVP0AMOVP2#0F7HLCALLDELAYMOVA3CH;将暂存的数转成字形SWAPAMOVB#10HDIVABLCALLZHMOVP0A;LED显示12位MOVC07HMOVP
0.7C;是否显示小数点1MOVP2#0EFHLCALLDELAYSETBP
0.7;取消显示小数点MOVABLCALLZHMOVP0AMOVP2#0DFHLCALLDELAYRET按键子程序开始CS:MOVP0#0FFH;秒清零MOVP2#10111111BJBP
2.1CS1MOV32H#00HCS1:SETBP
2.6RET;-------------------------------------------------------------------ADDM1:MOVP0#0FFH;加一分钟MOVP2#10111111BJNBP
2.2ADDM11CLR03H;按键2是否有效ADDM11:JB03HADDM12JBP
2.2ADDM12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.2ADDM12SETB03H;按键2是否有效SETB09H;时钟加减标致位MOVA31H;分钟+1CJNEA#59HM21MOV31H#00HSJMPADDM12M21:ADDA#01DAAMOV31HASJMPADDM12ADDM12:SETBP
2.6RET;-------------------------------------------------------------------ADDH1:MOVP0#0FFH;加一小时MOVP2#10111111BJNBP
2.3ADDH11CLR04H;按键3是否有效ADDH11:JB04HADDH12JBP
2.3ADDH12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.3ADDH12SETB04H;按键3是否有效CLR09H;时钟加减标致位MOVA30H;小时+1CJNEA#23HH31MOV30H#00HSJMPADDH12H31:ADDA#01DAAMOV30HAADDH12:SETBP
2.6RET;-------------------------------------------------------------------DECMH:MOVP0#0FFH;减一分钟/一小时MOVP2#10111111BJNBP
2.1DECM11CLR05H;按键1是否有效DECM11:JB05HDECM12JBP
2.1DECM12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.1DECM12SETB05H;按键1是否有效JNB09HDECMH3MOVA31H;分钟-1CJNEA#00HDECMH4MOV31H#59HSJMPDECM12DECMH4:LCALLDECAMOV31HASJMPDECM12DECMH3:MOVA30H;小时-1CJNEA#00HDECMH5MOV30H#23HSJMPDECM12DECMH5:LCALLDECAMOV30HADECM12:SETBP
2.6RET十进制减法子程序DECA:CJNEA#10HDECA1;运算范围为1~50MOVA#09HRETDECA1:CJNEA#20HDECA2MOVA#19HRETDECA2:CJNEA#30HDECA3MOVA#29HRETDECA3:CJNEA#40HDECA4MOVA#39HRETDECA4:CJNEA#50HDECA5MOVA#49HRETDECA5:DECARET闹钟按键子程序T1M1:MOVP0#0FFH;闹钟1加一分钟MOVP2#10111111BJNBP
2.2T1M11CLR03H;按键2是否有效T1M11:JB03HT1M12JBP
2.2T1M12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.2T1M12SETB03H;按键2是否有效SETB0AH;时钟加减标致位MOVA36H;分钟+1CJNEA#59HT1M13MOV36H#00HSJMPT1M12T1M13:ADDA#01DAAMOV36HAT1M12:SETBP
2.6RET;---------------------------------------------------------T1H1:MOVP0#0FFH;闹钟1加一小时MOVP2#10111111BJNBP
2.3T1H11CLR04H;按键3是否有效T1H11:JB04HT1H12JBP
2.3T1H12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.3T1H12SETB04H;按键3是否有效CLR0AH;时钟加减标致位MOVA35H;小时+1CJNEA#23HT1H13MOV35H#00HSJMPT1H12T1H13:ADDA#01DAAMOV35HAT1H12:SETBP
2.6RET;---------------------------------------------------------T2M1:MOVP0#0FFH;闹钟2加一分钟MOVP2#10111111BJNBP
2.2T2M11CLR03H;按键2是否有效T2M11:JB03HT2M12JBP
2.2T2M12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.2T2M12SETB03H;按键2是否有效SETB0BH;时钟加减标致位MOVA38H;分钟+1CJNEA#59HT2M13MOV38H#00HSJMPT2M12T2M13:ADDA#01DAAMOV38HAT2M12:SETBP
2.6RET;---------------------------------------------------------T2H1:MOVP0#0FFH;闹钟2加一小时MOVP2#10111111BJNBP
2.3T2H11CLR04H;按键3是否有效T2H11:JB04HT2H12JBP
2.3T2H12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.3T2H12SETB04H;按键3是否有效CLR0BH;时钟加减标致位MOVA37H;小时+1CJNEA#23HT2H13MOV37H#00HSJMPT2H12T2H13:ADDA#01DAAMOV37HAT2H12:SETBP
2.6RET;------------------------------闹钟1------------------------------DECT1:MOVP0#0FFH;减一分钟/一小时MOVP2#10111111BJNBP
2.1DECT11CLR05H;按键1是否有效DECT11:JB05HDECT12JBP
2.1DECT12LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.1DECT12SETB05H;按键1是否有效JNB0AHDECT13MOVA36H;分钟-1CJNEA#00HDECT14MOV36H#59HSJMPDECT12DECT14:LCALLDECAMOV36HASJMPDECT12DECT13:MOVA35H;小时-1CJNEA#00HDECT15MOV35H#23HSJMPDECT12DECT15:LCALLDECAMOV35HADECT12:SETBP
2.6RET;------------------------------闹钟2---------------------------------DECT2:MOVP0#0FFH;减一分钟/一小时MOVP2#10111111BJNBP
2.1DECT21CLR05H;按键1是否有效DECT21:JB05HDECT22JBP
2.1DECT22LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.1DECT22SETB05H;按键1是否有效JNB0BHDECT23MOVA38H;分钟-1CJNEA#00HDECT24MOV38H#59HSJMPDECT22DECT24:LCALLDECAMOV38HASJMPDECT22DECT23:MOVA37H;小时-1CJNEA#00HDECT25MOV37H#23HSJMPDECT22DECT25:LCALLDECAMOV37HADECT22:SETBP
2.6RET;------------------------闹钟开关-------------------------T1T2:MOVP0#0FFH;闹钟开关MOVP2#10111111BJNBP
2.2T1T21CLR05H;按键2是否有效T1T21:JB05HT1T22JBP
2.2T1T22SETB05H;按键2是否有效CPL06H;闹钟开关JB06HT1T23MOVR1#2MOV3CH#0CH;将暂存的数转成字形显示0NMOV3DH#0AAH;将暂存的数转成字形显示MOV3EH#0AAH;将暂存的数转成字形显示SETB07H;不显示小数点1SETB08H;不显示小数点2T1DAT3:MOVR7#100T1DAT2:LCALLMXIANDJNZR7T1DAT2DJNZR1T1DAT3SJMPT1T22T1T23:MOVR1#2MOV3CH#0FH;将暂存的数转成字形显示OFMOV3DH#0FAH;将暂存的数转成字形显示FMOV3EH#0AAH;将暂存的数转成字形显示SETB07H;不显示小数点1SETB08H;不显示小数点2T2DAT3:MOVR7#100T2DAT2:LCALLMXIANDJNZR7T2DAT2DJNZR1T2DAT3T1T22:SETBP
2.6RET显示年月日按键子程序DAT:MOVP0#0FFHMOVP2#10111111BJBP
2.3DAT1MOVR1#5MOV3CH39H;将暂存的数转成字形显示39HMOV3DH3AH;将暂存的数转成字形显示3AHMOV3EH__H;将暂存的数转成字形显示__HCLR07H;显示小数点1CLR08H;显示小数点2DAT3:MOVR7#100DAT2:LCALLMXIANDJNZR7DAT2DJNZR1DAT3DAT1:SETBP
2.6RET;---------------------------------------------------------DATEN:MOVP0#0FFH;年份加1MOVP2#10111111BJNBP
2.3DATEN1CLR04H;按键3是否有效DATEN1:JB04HDATEN2JBP
2.3DATEN2LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.3DATEN2SETB04H;按键3是否有效ADDN:MOVA39H;年份+1CJNEA#50HDATEN3MOV39H#01HSJMPDATEN2DATEN3:ADDA#01DAAMOV39HADATEN2:SETBP
2.6RET;---------------------------------------------------------DATEM:MOVP0#0FFH;月份加1MOVP2#10111111BJNBP
2.2DATEM1CLR03H;按键2是否有效DATEM1:JB03HDATEM2JBP
2.2DATEM2LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.2DATEM2SETB03H;按键3是否有效ADDM:MOVA3AH;月份+1CJNEA#12HDATEM3MOV3AH#01HLCALLADDN;年份+1SJMPDATEM2DATEM3:ADDA#01DAAMOV3AHADATEM2:SETBP
2.6RET;---------------------------------------------------------DATED:MOVP0#0FFH;加1日MOVP2#10111111BJNBP
2.1DATED1CLR05H;按键1是否有效DATED1:JB05HDATED2JBP
2.1DATED2LCALLMXIAN;这四个为去抖动MOVP0#0FFHMOVP2#10111111BJBP
2.1DATED2SETB05H;按键3是否有效ADDD:MOVA39H;判断是否是闰年MOVB#04HDIVABMOVABJZDATED4MOVDPTR#TAB2;平年SJMPDATED5DATED4:MOVDPTR#TAB3;闰年DATED5:MOVA3AH;用月份查表MOVCA@A+DPTRMOVBAMOVA__H;+1日CJNEABDATED3MOV__H#01HLCALLADDM;月份+1SJMPDATED2DATED3:CJNEA#32HDATED6MOV__H#01HSJMPDATED2DATED6:ADDA#01DAAMOV__HADATED2:SETBP
2.6RET闹钟子程序DSQ:MOVA35H;判断30H单元和35H单元是否相等CJNEA30HDSQ1;是:判断31H单元和36H单元是否相等MOVA36H;否:判断另一个闹钟时间CJNEA31HDSQ1CLR01H;另一个相等,闹钟清标致位SJMPDSQ2DSQ1:SETB01H;不等,标致位置位DSQ2:MOVA37H;同上CJNEA30HDSQ3MOVA38HCJNEA31HDSQ3CLR02HSJMPDSQ4DSQ3:SETB02HDSQ4:MOVC01H;将两个闹钟合并在同一个端口输出ANLC02HORLC06H;闹钟输出总开关MOVP
1.0C;闹钟输出在P
1.0口RETEND;程序结束 设计心得为期二个星期的课程设计转瞬即逝,通过紧张的计算和设计,我圆满的完成了此次机电一体化系统设计的课程设计《机电一体化系统设计》是一门综合性课程,它是一门机械技术与微电子技术的交叉学科随着机械技术、微电子技术的飞速发展,机械技术与微电子技术的相互渗透越来越快本次设计的数控回转工作台就是机电有机结合的产品在设计过程阶段,遇到了许多困难在老师和同学的帮助下,最终把问题一一解决了在做控制系统设计时遇到了较大的难题由于以前对微机计算机控制部分知识没有掌握扎实,所以在控制程序设计也比较困难通过本次课程设计之后也使自己更深一步的了解程序编写通过本次课程设计之后,使自己对课本上的东西有更加深刻的的认识由于自己的能力有限,设计中难免也存在不少细节上的错误,希望老师指出改正,并感谢老师您对我们的教育! ____
[5]齿轮手册编委会编.齿轮手册(上).机械工业出版社,
1990.
[8]房小翠等主编.单片微型计算机与机电接口技术.国防工业出版社,
2001. 。