基于51单片机的光电编码器测速报告汇总 - 图文(4)
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原理图,采 …… 此处隐藏:2416字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [学前教育]MC9S12XS256RMV1 xs128芯片手册4
- [学前教育]安东尼语录经典语录
- [学前教育]e级gps控制测量技术设计书
- [学前教育]苏教版2022-2022学年八年级下学期期末
- [学前教育]装修公司推广 营销
- [学前教育]家政服务合同(完整版)
- [学前教育]湖北省2016届高三联考语文试题
- [学前教育]爱立信无涯学习系统LTE题库1-LTE基础知
- [学前教育]揭秘大众柴油车作弊软件原理
- [学前教育]人才流失原因及对策分析
- [学前教育]房屋建筑施工工程劳务分包合同
- [学前教育]国际贸易实务试卷A卷09.6
- [学前教育]校园废品回收活动计划方案书范文格
- [学前教育]电大成本会计试题及答案
- [学前教育]大学物理实验 华南理工出版社 绪论答案
- [学前教育]爱丁堡产后抑郁量表
- [学前教育]液压冲击的危害、产生原因与防止方法(
- [学前教育]学生工作总结高一学生期中考试总结_020
- [学前教育]人民医院医疗废物管理规章制度大全
- [学前教育]阳光维生素的巨大抗癌潜能阅读题答案.d
- 马云在云锋基金江苏论坛闭幕式的发言
- 试论小学体育教育中的心理健康教育-教
- 语文A版一年级下册《语文乐园一》教学
- 2021四川大学物理化学考研真题经验参考
- [人教A版]2015-2016学年高中数学 第二
- 终端网点销售返利协议书
- 江苏省2015年眼科学主治医师青光眼考试
- 2017年部编人教版八年级语文上册教案
- 十一中学七年级英语上册Unit7Howmuchar
- 以赛促教的创新性实验教学机制建设实践
- 平凉市崆峒区2015七年级下生物期末试题
- 琶洲(地块五)A、B塔楼1、2#塔吊基础
- 一级医院工作制度与人员岗位职责
- 2018北京西城区高三二模理科数学试题及
- 炒股密码线技术 - 图文
- 职高学生生涯发展辅导教案
- 语文人教版四年级上册8 世界地图引出的
- 最新最新人教版二年级上册全册数学教案
- 2017高考英语全国2卷精彩试题(有问题
- 普通心理学笔记




