基于单片机的电机测速系统_第1页
基于单片机的电机测速系统_第2页
基于单片机的电机测速系统_第3页
基于单片机的电机测速系统_第4页
基于单片机的电机测速系统_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

第第i页基于单片机的电机测速系统摘要:在工程实践中,经常会遇到各种需要测量转速的场合,例如在发动机、电动机、机床主轴等旋转设备的试验运转和控制中,常需要分时或连续测量、显示其转速及瞬时速度。为了能精确地测量转速,还要保证测量的实时性,要求能测得瞬时转速。本文介绍了一种基于STC89C52单片机的电机测速系统,该系统利用霍尔传感器采集脉冲信号,通过定时计数算法程序,将转速结果实时显示出来。C语言具有开放性和灵活性强的特点,编写起来比较易于上手,不像汇编语言那样局限。所以本次采用的是C语言编程来实现。关键词:单片机,电机测速系统,霍尔传感器,定时Abstract:Inengineeringpracticeoftenneedtomeasurespeedencountervariousoccasions.Forexample,Attheengines,motors,machinetoolspindlesandotherrotatingequipment'soperationandcontrolofthepilotoftenneedfrequenttime-sharingorcontinuousmeasurementsshowitsspeedandinstantaneousvelocity.Inordertoaccuratelymeasurespeed,ensurethereal-timemeasurementsandrequireinstantaneousspeedcanbemeasured.Thispaperintroducesamicrocomputer-basedSTC89C52motorspeedsystem,thesystemusesHallsensorpulsesignalcollectedthroughthetimercountingalgorithmprograms,willspeedtheresultsofreal-timedisplay.Cprogramminglanguagehastheopennessandflexibility,strongfeatures,andit'sdifficulttowriteeasytofly.Itisunliketheassemblylanguageaslimitations.So,thisistheCprogramminglanguageusedtoimplementKeyword:Single-chip,MotorSpeedSystem,Hallsensor,Timing目录TOC\o"1-5"\h\z1前言12•总体方案设计22.1方案论证22.2方案比较22.3方案选择33•硬件部分设计43.1速度检测电路43.1.1开关型霍尔传感器介绍43.1.2传感检测电路53.2单片机最小系统电路63.2.1主控器STC89C52的介绍73.2.2时钟电路83.2.3复位电路93.3数码显示电路103.4RS-232串行通信接口电路113.4.1MAX232介绍113.4.2串行通信接口电路12软件设计144.1主程序设计144.2T0定时中断程序设计15设计总结17参考文献18附录19附录1:电机测速系统总电路图19附录2:电机测速系统总程序代码20第II页第第#页附录2:电机测速系统总程序代码#includevAT89X51.H>#defineuintunsignedintsbitCNPN0=P0A0;sbitCNPN1=P0A1;sbitCNPN2=P0A2;sbitCNPN3=P0A3;uintbuf_min=0x1,flag;voiddelay(uintx)//x=1000表示4ms{while(--x);}voidtime0()interrupt1〃定时10ms{EA=0;ET0=0;TR0=0;TH0=-10236/256;TL0=-10236%256;buf_min++;EA=1;ET0=1;TR0=1;}voidmain(){uintnum[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};uinti,j,temp;uintsum=0x0,disnum[4]={0};TMOD=0x51;//TO工作为定时方式,T1工作为计数方式TH0=-10236/256;TL0=-10236%256;TH1=0;TL1=0;EA=1;〃启动外部中断0ET0=1;TR0=1;while(1)if(buf_min==5)〃等待50ms,在重新计时{EA=0;ET0=0;TR0=0;buf_min=0;EA=1;ET1=1;TR1=1;ET0=1;TR0=1;break;}}while(1){if(buf_min==100)//到达1s后关闭定时T0和计数器T1{EA=0;ET0=0;TR0=0;ET1=0;TR1=0;buf_min=0;break;}}temp=(TH1*0x100+TL1)*30;disnum[3]=temp/1000;disnum[2]=(temp%1000)/100;disnum[0]=(temp%100)/10;disnum[1]=(temp%100)%10;while(1){for(i=0;iv4;i++){for(j=0;j<10;j++){if(disnum[i]=j){switch(i)〃选通哪一个数码管显示{case0:CNPN0=0;break;case1:CNPN1=0;break;case2:CNPN2=0;break;case3:CNPN3=

温馨提示

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

评论

0/150

提交评论