基于51单片机的光电编码器测速报告(3)

1970-01-01 08:00

2)中断程序流程

图9为光电编码器测速系统的中断程序流程图。脉冲计数周期主要是由单片机内部精确到毫秒的定时器每次以间隔相同的时间进入中断,中断1000次才形成一个周期。一个周期的时间到了,就进行一次脉冲计算。一个周期时间没到就进入主程序。从而控制每个周期的方波高电平和低电平各自持续的时间,即控制了方波的占空比。通过该图也可以清晰明了的知道,该中断程序主要涉及的就是方波的调控。先是判断高电平是否未达到调控的时间,如果未达到则让gdp+1,即让继续高电平保持。如果gdp为100则说明主程序已经把方波调控到一直保持高电平,就让gdp为0,就可以一直输出高电平了。如果高电平达到了调控的时间,就让控制电机的两个引脚都为低电平并让ddp+1,即让继续低电平保持。如果低电平未达到了调控的时间,就进入主程序继续保持低电平等待下一次中断。如果低电平达到了调控的时间,就让ddp=gdp=0,即重新开始下一个方波。

图9 定时器中断程序流程图

11

五、仿真与实现

5.1 proteus软件介绍

Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持KEIL,IAR和MPLAB等多种编译器。PROTEUS不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。使用Proteus软件进行单片机系统仿真设计,是虚拟仿真技术和计算机多媒体技术相结合的综合运用,有利于培养学生的电路设计能力及仿真软件的操作能力;在单片机课程设计和全国大学生电子设计。实践证明,在使用Proteus进行系统仿真开发成功之后再进行实际制作,能极大提高单片机系统设计效率。因此,Proteus有较高的推广利用价值。

由于该设计的光电编码器测速在仿真软件中无法仿真,只能仿真液晶显示部分,所以仿真原理图忽略。

5.2 仿真过程

图10为使用keil软件编写程序时的调试过程图。我用的是C语言来编写。第一次编写完程序后,然后编译一下,出现的对话框中显示有几个错误,点击错误提示,主程序会出现光标只向错误的地方,根据这个错误提示,然后进行更改,再编译一下,程序还是显示有错误,再重复上次的操作,进过了几次修改后,就如图所示没有错误提示了。编写程序就是这样,需要不断修改,程序才能准确。程序编写好,还要编译成HEX文件。只有HEX文件才能烧录到到单片机上。

12

图10 keil软件仿真图

5.3 实物制作与调试

图11为实物图的背面,图12为实物图的正面。

原理图和洞洞板图画好,程序写好后就可以开始焊接了。在刚开始焊好后,烧录程序进去,但液晶却不能显示,于是我就在protues中仿真了液晶显示部分,仿真中能实现正确显示,再检查一下有没有焊接错误,也没有发现任何错误,我就想如果我能正确控制1602液晶的引脚,它就应该能够显示,于是我在出现中令P2=0xaa,en=1,rw=0,rs=1,然后用万用电表检查液晶上的液晶是否是如我所设定的那样,电平引脚和我设置的一样。我再令P2=0x55,en=0,rw=1,rs=0,结果我发现rs液引脚为高电平,而我设置的为低电平。我用万用电表检查,发现rs引出的那根导线与电源短路了,可是我根本看不出来哪里短路了,我就先把rs引出的那根导线焊开分成两段,再检查其中有一段是短路的,接着再焊开成两段,继续检查,最后找到了短路的地方,原来是两个焊盘本身就是连在一起。我就把其中一个焊盘用电烙铁焊掉,用走线连接,一上电,液晶立刻就显示正常。

图11 实物图背面

图12 实物图正面

13

5.4 使用说明

如图12所示:此光电编码器测速系统包含的元器件有:STC89C52单片机一块,光电编码器,一块74LS74芯片,40个脚IC插座一个,14个脚IC插座一个排阻一个,一个16脚的排母,1602液晶一块,一个3M红色LED灯,六个排针,三个四脚轻触开关,四个个电阻,一个电解电容,两个瓷片电容,,一个六角自锁开关,一个晶振和一个103蓝白滑动变阻器。

整个光电编码器测速系统布置在一块20×10大小的洞洞板上。1602液晶用于显示所测的转速,单片机下方的两个按键为控制按键,从左往右第一个为显示每秒转速控制键,第二个为显示每分钟的转速。控制按键右边为一块74LS74芯片,四个排针(用于接光电编码器)和两个1K电阻组成组成光电编码器测速电路部分。单片机右边蓝白滑动变阻器,通过调节蓝白滑动变阻器来调节液晶亮度。那个按键为复位按键,每按一次系统就复位一次,回到初始状态。复位按键下方的蓝白自锁开关为电源开关,当排针接好电源后,按下蓝白自锁开关则系统上电,按起蓝白自锁开关则系统断电。蓝白自锁开关上方的红色发光二极管为电源指示灯,当系统接通电源时,指示灯亮,当系统断开电源时,指示灯暗。蓝白自锁开关下方的四个排针从上至下依次接5V的VCC,RXD,TXD,GND。

使用前应先上电。接上电源后由于开关断开系统还未上电,按下蓝白自锁开关后,电源接通。通上电时,首先单片机连接电源时,先是1602液晶第一行显示welcome to use的字样,第二行显示real_speed: 0000。可以按显示每秒速度的按键,也可以按每分钟显示的速度,转动主轴,液晶上就会显示与所按下的控制键相对应得转速。如果是正转,液晶第二行就会显示real_speed: xxxx,如果为反转,液晶上就会显示real_speed:-xxxx。如果不按控制键液晶第二行就显示real_speed: 0000。

14

六、总结

6.1 设计总结

我的课题是基于51单片机的光电编码器测速。当我选择了这个课题的时候,我就先开始想在平常生活中光电编码器是怎样的,可以怎样测速,需要一些什么器件。在确定了自己要设计一个怎样的测速系统之后就开始列出做这个测速系统所需要的元器件。这个光电编码器测速系统是基于给定的显示系统上设计的,所以在设计电路原理图之前,我先要掌握给定的显示系统原理图的连接方式和连接原理。这一些都弄明白之后,我再考虑如何在现有的基础上进行外围设计使之达到预想的功能。经过一番斟酌,确定我的外围硬件只需添加两个轻触开关,一些电阻,一块74LS74芯片就可以实现光电编码器测速的功能。由于我的希望焊得尽量紧凑。所以为了以后方便焊接,减少焊接错误,需要在洞洞板软件中的画出洞洞板图,设计线路的时候要尽量减少飞线的使用,画完之后和给出的图进行对照,确定我没有连接错误之后,修正洞洞板图,使线路没有断路并且更加笔直,接点处没有连线出头,修正完后保存洞洞板图。硬件设想好了,接下来,我就要给我所要设计的光电编码器测速系统进行软件设计,使之实现智能化。进过了几次调试之后,在keil软件中我的程序显示0 error。就开始画DXP原理图,采用网络标号的形式更加方便,只需要把系统分成各个小模块,在元器件的接口上标明该接口所连接单片机的对应的引脚,再分区放置标明模块。图的大体结构画完之后再和给出的图进行对照,确定我没有连接错误之后,修正DXP原理图,使线路没有断路并且更加笔直。DXP原理图画完后,整个电路设计就算完成了。我的设计过程与思路大体就是这样子。

6.2 经验总结

我觉得一个课题设计中的心得体会是非常重要的一部分,这是一个经验的积累与总结。通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新可以是在原有的基础上进行改进,使之功能不断完善,成为真己的东西。们安排了这次单片机课程设计,给了我们学以致用的做好的实践。 对于这次课程设计,我们花费了比较多的心思,既是对课程理论内容的一次复习和巩固,还让我们丰富了更多与该专业相关的其他知识,比如软件应用等,在摸索中学习,在摸索中成长,在学习的过程中带着问题去学我发现效率很高,这是我做这次课程设而应该让人一看就能明白你的思路,这样也能为资料的保存和交流提供了方便;我觉得在设计课程过程中遇到问题是很正常,但我们应该将每次遇到的问题记录下来,并分析清楚,以免下次再碰到同样的问题的课程设计又出错了。此次的设计,其实也是我们所学知识的一次综合运用,让我深深的认识到了学习单片机要有一定的基础,要有电子技术方面的数字电路和模拟电路等方面的理论基础,特别是数字电路;也要有编程语言的汇编语言或C语言。要想成为单片机高手,我们首先要学好汇编语言,然后转入C语言学习,所以我们不能学到后面就忘了前面的知识,更应该将所学的知识紧紧的结合在一起,综合运用,所谓设计,就是要求创新,只有将知识综合运用起来才能真正的设计好。

15


基于51单片机的光电编码器测速报告(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:【人教部编版】2017版八年级语文上册文言文复习学生版(含答案)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: