大学毕业论文--激光辅助治疗仪的设计_第1页
大学毕业论文--激光辅助治疗仪的设计_第2页
大学毕业论文--激光辅助治疗仪的设计_第3页
大学毕业论文--激光辅助治疗仪的设计_第4页
大学毕业论文--激光辅助治疗仪的设计_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

届毕业生毕业论文题目: 激光辅助治疗仪的设计 院系名称:电气工程学院 专业班级: 学生姓名: 学号:—指导教师: 教师职称:讲师年06月10日软件设计4.1系统软件设计语言在编写单片机程序时,可以用汇编语言编写,也可以用C高级语言来编写,还可以用两者混合编程。汇编语言采用助记符来编写程序,比起机器语言的二进制代码来说要方便一些,在一定程度上简化了编程过程。汇编语言的特点是用符号代替了机器语言,指令与代码一一对应,基本保留了机器语言的灵活性,使用汇编语言能简化程序,汇编语言占用内存小,运算速度快。但是汇编语言不容易理解,编程难度大。C语言作为高级语言,它更接近和体现人的设计思想,是目前流行的一种计算机语言,它主要用于单片机和一般微型计算机。C高级语言程序设计快、可读性好、可靠性高、可移植性好、代码转换质量高。单片机C高级语言的特点是同时兼有高级语言和汇编语言的优点,还能像汇编语言那样直接利用CPU的硬件特性进行程序设计,直接操作单片机的硬件和接口。C高级语言目标模块还可以同汇编连接组成一个完整的程序,目前在单片机应用领域,C高级语言越来越受到人们的重视。使用C高级语言的工作效率高,其生成的机器代码质量也是高水平的。因此,我们在该设计中选用C语言来编程。4.2软件程序设计激光辅助治疗仪的系统软件程序有主程序和子程序组成,主程序包含初始化参数设置、按键处理、数码管显示模块,报警模块,在设计时各个模块都采用子程序结构设计,在主程序中调用。由于定时器/计数器采用中断方式处理,因此还要编写定时器/中断服务子程序,在定时器/计数器中断服务子程序中队倒计时进行调整,对蜂鸣器报警时间和激光闪烁灯的闪烁延时时间进行调整。4.2.1主程序主程序先对显示单元和定时器/计数器初始化,然后重复调用数码管显示模块和按键处理模块以及报警模块,当有按键按下时,则调用相应的功能子程序。主程序流程图如下图4.1所示。

图4.1住程序流程图4.2.2数码管显示程序本系统用4为时间显示数码板,从右到左依次显示秒十位、秒个位、冒号、分十位和分个位。数码管闲事的信息用6个内存单元存放,这6个内存单元分别为显示缓冲区,其中秒十位和秒个位、分十位和分个位分别由秒数据、分数据分拆得到。本系统设计数码管采取软件译码动态显示。显示时,先从现实缓冲区中取出显示信息,然后通过查表程序在字段码表中查处显示信息的字段码,从P0口输出,同时在P2口将相应的位选码输出,选中显示的数码管,就能在相应的数码管上显示缓冲区的内容。在存储器中首先建立一张显示信息的字段码表,在该设计中由于时间显示带有分秒之间的冒号,分时位和分个位无小数点,秒个位和秒十位有小数点,分别为上小数点和下小数点,因此需要两张字段码表,分别显示带小数点何不带小数点的0~9以及熄灭符。

本设计用的是共阳极数码管,所选用的数码管在前面有详细介绍,在该设计中根据硬件电路得到了相对应的字段码,见下表4.1和4.2所示,表4.1是不带小数点的相应的0~9字段码,表4.2是带小数点的0~9字段码。表4.1数码管字型编码表(小数点灭)显示字符字形共阳 极及dpegdfcba字型码0010100000A0H1111111001F9H22100011008CH3311001000C8H4411010001D1H5511000010C2H661000001082H7711111000F8H881000000080H9911000000C0H熄灭灭11111111FFH表4.2数码管字型编码表(小数点亮)显示字符字形共阳 极及dpegdfcba字型码000010000020H110111100179H22000011000CH330100100048H440101000151H550100001042H660000001002H770111100078H880000000000H990100000040H熄灭灭11111111FFH在显示子程序设计中,通过查表得到数字的字断码显示,由于显示数字四位中分钟两位无小数点,秒位有小数点控制,因此在显示程序中建立两个表格,需要两个查表语句来执行。4.2.3定时器/计数器T0中断服务子程序在该课题设计中,定时器/计数器T0中用于时间计时、报警延时、治疗灯高低电平切换延时当TO用于时间计时时,选择定时/计数器工作方式1,在倒计时钟,应产生周期为1s的周期性定时,由于定时时间比较长,一个定时/计数器不能直接实现,可用定时/计数器TO产生周期为50ms,计数20次记为1s,1s到了则对分单元减一,秒单元减到00时则对分单元减1,将秒单元置为59,当分单元为99时再加则为00,当分单元减为00时再减则报警,当时间和分钟均为00时治疗结束。在各单元计数的同时,把它们的值放在存储单元的指定位置。定时器 /计数器T0中断服务子程序流程图4.2如下所示:当T0用于时间计时时,选择定时/计数器工作方式1,这时应产生周期为1s的周期性定时,定时到了,对P3.0取反就可以实现,这样即可实现治疗灯高低电平切换。在报警电路中,先对P3.1置高位,等有按键按下或者治疗结束时,通过对P3.1取反就可以实现对P3.1清0,蜂鸣器发出声音报警。报警延时和治疗灯高低电平切换延时程序:voidt0(void)interrupt1{if(light_f){light_time++;if(light_time>4000){ligh=~ligh;light_time=0;}}elseligh=0;if(fm_f){fm_time++;if(fm_time>1000){warn=1;fm_f=0;fm_time=0;}}}4.2.4键盘子程序在单片机应用系统中,键盘扫描只是//进入中断//治疗灯亮延时//治疗灯灭//启动蜂鸣器,报警//蜂鸣时间清0CPU的工作内容之一。CPU对键盘的响应取决于键盘的工作方式,键盘的工作方式应根据实际应用系统中CPU的工作状况而定,其选取的原则是既要保证CPU能及时响应按键操作,又不要过多占用CPU的工作时间。通常键盘的工作方式有三种,即编程扫描、定时扫描和中断扫描。采用上述两种键盘扫描方式时,无论是否按键, CPU都要定时扫描键盘,而单片机应用系统工作时,并非经常需要键盘输入,因此, CPU经常处于空扫描状态,为提高CPU工作效率,可采用中断扫描工作方式。其工作过程如下:当无键按下时,CPU处理自己的工作,当有键按下时产生中断请求, CPU转去执行键盘扫描子程序。图4.3键盘处理子程序在键盘设置中,由于选用的是机械式键盘,机械式按键再按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。抖动时间的长短与开关的机械特性有关,一般为 510mso在触点抖动期间检测按键的通与断状态,可能导致判断出错。即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施,可从硬件、软件两方面予以考虑。在键数较少时,可采用硬件去抖,而当键数较多时,采用软件去抖。在硬件上可米用在键输出端加R-S触发器(双稳态触发器)或单稳态触发器构成去抖动电路,软件上采取的措施是,利用延时来跳过抖动过程,当判断有按键按下后,先执行一段大于10ms的延时程序后再去判断是哪一个键按下,从而消除前沿抖动的影响。对于后沿抖动,只是在接受一个键位后,经过一段时间再去检测有无按键,这样自然就跳过了后沿抖动。在该课题中,虽然使用的是独立式键盘,按键数量少,但使用软件消抖是硬件电路简单,所以采用软件消抖。结论该课题设计的激光治疗仪是一种医用器械,以AT89S52单片机为核心,采用5V电源供电,利用激光发射器件发射激光,作用于人体敏感部位,产生辅助治疗作用。该设计完成了本系统的硬件和软件设计,基本达到预期目标,实现了主要功能。主要做了以下工作:设计的激光治疗仪具有的激光发射的功能,能够针对穴位进行治疗。根据所学内容设计硬件电路,以AT89S52单片机为核心,设有键盘、显示等模块。设计的激光治疗仪具有时间显示功能,开机时有预设值,通过倒计时功能,即使到了蜂鸣器发出报警声结束治疗。实现了治疗者自主控制治疗时间的功能,有加减按键控制治疗时间的加减。采用C语言编程,设计基本实现预期功能。该课题设计的治疗仪以单片机为核心,完成了所需要的各项功能,具有结构简单、使用方便的特点。但是也存在很多缺点,不能够根据加减按键按下的时间长短进行快速加减时间。在按下加减按键时发出的蜂鸣声是一样的,不能通过声音来判别按下的是哪一个按键,这该设计不足之处,在以后的设计中系统有待进一步提高和完善。致谢在完成这次毕业设计之际,我要感谢指导老师老师和工程师指导。这两个多月以来,从课题的选定、资料的收集、课题的调查到毕业设计审定,曹老师都给予了我极大的帮助和指导,倾注了大量的心血。在曹老师和刘老师的引导下,我不仅开拓了思路、扩大了视野、丰富了知识面,还初步掌握了分析和处理问题的科学方法。曹老师平易近人的教学态度也让我学会了谦虚待人,对我今后的工作和学习有很大帮助。在此,我向曹毅老师表达我最诚挚的谢意。同时,在准备论文的过程中,同学攀等人也给予我不少帮助,在此也一并向他们表示感谢,感谢他们在设计过程中对我的照顾和帮助!参考文献吕俊芳.传感器接口与检测仪器电路[M].北京:北京航空航天大学出版社,2004年郁有文,常健编著.传感器原理及工程应用[M].陕西:西安电子科技大学出版社,2002王俊杰编.检测技术与仪表[M].武汉理工大学出版社,2002年孙涵芳编.单片机原理及应用(修订版)[M].北京航空航天大学出版社,1996年[5]周立功•增强型80C51单片机速成俗称与实战[M]•北京航空航天大学出版社,2003年楼然苗,李光飞.51系列单片机设计实例[M].北京航空航天大学出版社,2003.3李维祥,孙秀强,孙桂玲,郭法楼.MCS-51单片机原理及应用[M].天津大学出版社,2001.5刘高锞,崔华,蔡炎光.单片机实用技术[M].清华大学出版社,2004.10赖寿宏,微型计算机控制技术[M].机械工业出版社,2002.6王伟,张晶涛,柴田佑.PID参数先进整定方法综述[J].自动化学报,2000(3):347~355张迎新.单片微型计算机原理、应用及接口技术[M].北京:国防工业出版社,2004王洪福.AT89C51单片机与74LS164动态显示接口[J].内蒙古电大学刊,2006(1):55~58黄维翼.LED显示程序设计技巧[J]•常州信息职业技术学院学报,2002(1):19~33谢维成,杨加国著•单片机原理与应用及 C51程序设计[M]•北京清华大学出版社,2006年PeterWhittaker.“Laseracupuncture:past,present,andfuture.LasersinMedicalScienee,'LasersinMedicalScienc&J].vol.19,pp.69-80,September,2004.TaoYonghua,YinYixinandGeRusheng.“NovelPIDcontrolanditsapplication,[M]L.ChinaMachinePress,1998.LiuJingkun.“AdvancedPIDcontrolanditsMatlabsimulation,[ML]Publishinghouseofelectronicsindustry,2003.LloydJC.Applicationofelectronictoningtoshipbuilding[M].Birkenfield:ElectronicToningLaboratory,1985童诗白,华成英.模拟电子技术基础[M].北京:高等教育出版社,2001[20]许兴胜,孙涛和过传良.CO2激光去皱美容仪整机设计[J]量子电子学报.2000.(17)59~63NationalInstrumentsCorp.BridgeVIEWandLabVIEWGProgrammingReferenceManual.Austin,[J]TexasUSA.January1998.27-566NationalInstrumentsCorp.FunctionandVIReferenceManual.Austin,[J]TexasUSA.January.1998.435-440MariaG.Ioannides.DesignandImplementationofPLC-BasedMonitoringControlSystemforInductionMotor.[J]IEEETransactionsonEnergyConversion.2004(19):469~476SanjeevGupta,SCSharma.Selectionandapplicationofadvancecontrolsystems:PLC,DCSandPC-basedsystem.[J]JournalofScientific&IndustrialResearch.2005.vol.64:249~255ZHUShao-ying,XUYu,HEZheng-wen.ThePLCControlSystemofVacuumResinShotDosingEquipmen.t[J]InternationalJournalofPlantEngineeringandManagement.2003.vol.8:149~153杨金岩,郑应强,张振仁.8051单片机数据传输接口扩展技术与应用实例[M].北京:人民邮电出版社.2005年27]G.LitscherandD.Schikora,Cerebralvasculareffectsofnon-invasivelaserneedlesmeasuredbytransorbitalandtranstemporaldopplersonography,[J]LasersinMedicalScience,vol.17,pp.289-295,2002.28]EffectsofHe-Nelaserirradiationontheperiodontalbloodvesselremodelingduringorthodonticmovementinrabbits.[J]2007(11):50~5129] LiChengwei,HuangZhen.DesignoftheLaserAcupunctureTherapeuticInstrument.[J]EMBSAnnualInternationalConference.Proceedingsofthe28thIEEE.NewYorkCity,USA,Aug30-Sept3,2006,4107~4110附录A:总电路图dDG M——.^259N-kspp/~ADx—DxtAT89S52RwDDi-nou£E2XQI■d—QIN—1—N—;YYY7YYPPPPPPPPUJK0P[9ZW42JrABCDEFGDnoYYY747YYAAAA5ADG附录B:C语言源程序清单#include"reg51.h"〃#include"intrins.h"sbitdispl=P2A0;sbitdisp2=卩2人1;sbitdisp3=卩2人2;sbitdisp4=卩2人3;sbitadd=卩2人5;sbitsub=P2A6;sbitlight_aj=卩2人7;sbitwarn=卩3人1;sbitligh=卩3人0;bit min_h_f,min丄f,sec_h_f,sec丄f,fm_f,light_f;unsignedintcount,light_time,fm_time;unsignedcharmin_h,min_l,sec_h,sec_l,min=20,sec;unsigned charbm[10]={0xa0,0xf9,0x8c,0xc8,0xd1,0xc2,0x82,0xf8,0x80,0xc0};unsigned charbmdip[10]={0x20,0x79,0x0c,0x48,0x51,0x42,0x02,0x78,0x00,0x40};voidconver(void);voidlogic(void);voidshow(void);voidkeyboard(void);voiddelay(void);voidinit(void);/***********************************************************函数名:主程序功能*************************************/voidmain(void){init();while(1){conver();logic();show();keyboard();if(min==0&&sec==0){TR0=0;ligh=1;light_f=0;}else{TR0=1;}}}/****函数名:字节转换功能:将分钟,秒单字节分别转换为双字节****/voidconver(void){unsignedcharmin_temp,sec_temp;EA=0;min_temp=min;sec_temp=sec;EA=1;min_h=min_temp/10;min」=min_temp%10;sec_h=sec_temp/10;sec_l=sec_temp%10;}]********voidshow(void){if(min_h_f)voidshow(void){if(min_h_f){P2=P2|OxOF;P1=bm[min_h];disp4=0;}if(min」_f){P2=P2|0x0F;P1=bm[min_l];disp3=0;}if(sec_h_f){P2=P2|0x0F;P1=bmdip[sec_h];disp2=0;}if(sec_l_f){P2=P2|0x0F;P1=bmdip[sec_l];disp1=0;}}/***********************************************************函数名:键盘扫描功能:识别加减号,治疗灯高低电平切换说明:****/voidkeyboard(void){P2=P2|0xF0;if(!add)函数名:显示逻辑功能:动态显示时的位选择**********/voidlogic(void){if(!min_h_f&!min_l_f&!sec_h_f&!sec_l_f)min_h_f=1;else{if(min_h_f){min_h_f=0;min_l_f=1;}elseif(min_l_f){min丄f=0;sec_h_f=1;}elseif(sec_h_f){sec_h_f=0;sec_l_f=1;}elseif(sec_l_f){sec_l_f=0;min_h_f=1;}}}/******函数名:动态显示功能:显示分钟和秒i--);i--);//delay();while(!add);EA=0;min++;if(min>99){min=0;}EA=1;warn=0;fm_f=1;TR1=1;}P2=P2|OxFO;if(!sub){delay();while(!sub)EA=0;min--;if(min==255){min=99;}EA=1;warn=0;fm_f=1;TR1=1;}P2=P2|0xF0;if(!light_aj){delay();while(!light_aj);//if(!light_aj)light_f=~light_f;warn=0;fm_f=1;}}/*********函数名:延时程序功能:完成键盘防抖延时 ****/voiddelay(void){unsignedchari,j,k,m,n,a,b,c,d,e;for(i=250; i>0;/〃循环递减程序for(j=250;j>0;j--);控制显示的抖动for(k=250;k>0;k--);for(m=250;m>0;m--);for(n=250;n>0;n--);for(a=250;a>0;a--);for(b=250;b>0;b--);for(c=250;c>0;c--);for(d=250;d>0;

温馨提示

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

最新文档

评论

0/150

提交评论