网站大量收购独家精品文档,联系QQ:2885784924

基于单片机的电机调速程序1.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于单片机的电机调速程序1

//LM298驱动直流电机启停、正反转、加减速//MCU AT89S52//author wangyongrui//date 2009.07.26#includereg52.h#includeINTRINS.Hsbit in1=P3^0;//Proteus仿真 sbit in2=P3^1;sbitena=P3^6;sbitlcdrs=P2^5;sbitlcdrw=P2^6;sbitlcden=P2^7;sbit s1=P2^0;sbit s2=P2^1;sbit s3=P2^2;sbit s4=P2^3;sbit s5=P2^4;/*sbit in1=P3^0;//学习板sbit in2=P3^1;sbitena=P3^6;sbitlcdrs=P2^5;sbitlcdrw=P2^6;sbitlcden=P2^7;sbit s1=P1^4;sbit s2=P1^5;sbit s3=P1^6;sbit s4=P1^7;sbit s5=P2^4; */bitpwm;inti=1,turn_flag,pwm_flag=10;//turn_flag为转动方向标志//pwm_flag为PWM占空比标志unsigned char code table[]=WANGYONGRUI;unsigned char code table1[]=;voidinit(void);voidlcd_init(void);voidwrite_com(unsigned char com);voidwrite_data(unsigned char da);void welcome(void);void delay(unsigned int z);void anticlockwise(void);//逆时针转动(正转)void clockwise(void);//顺时针转动(反转)void stop(void);//停止转动void speedup(void);//转动加速void speeddown(void);//转动减速voidkeyscan(void);void main(){init();while(1){keyscan();}}voidkeyscan(void){if(s1==0){delay(5);if(s1==0){while(!s1);anticlockwise();}}if(s2==0){delay(5);if(s2==0){while(!s2);clockwise();}}if(s3==0){delay(5);if(s3==0){while(!s3);speedup();}}if(s4==0){delay(5);if(s4==0){while(!s4);speeddown();}}if(s5==0){delay(5);if(s5==0){while(!s5);stop();}}}void timer0() interrupt 1{TH0=0xfc;TL0=0x18;i++;if(i==11){i=1;}if(i=pwm_flag){pwm=1;}else{pwm=0;}ena=pwm;}void anticlockwise(void){ena=pwm;in1=0;in2=1;turn_flag=1;}void clockwise(void){ena=pwm;in1=1;in2=0;turn_flag=-1;}void speedup(void){pwm_flag=pwm_flag+1;if(pwm_flag10){pwm_flag=10;}}voidspeeddown(void){pwm_flag=pwm_flag-1;if(pwm_flag0){pwm_flag=0;}}void stop(void){ena=0;in1=0;in2=0;pwm_flag=10;}voidlcd_init(void){//1602初始化lcdrw=0;lcden=0;write_com(0x38);write_com(0x0C);write_com(0x06);write_com(0x01);write_com(0x80+0x00);}voidinit(void){in1=0;in2=0;TMOD=0x01;TH0=0xfc;TL0=0x18;EA=1;ET0=1;TR0=1;welcome();//lcd_init();}voidwrite_com(unsigned char com){lcdrs=0;P0=com;delay(5);lcden=1;delay(5);lcden=0;}voidwrite_data(unsigned char da){lcdrs=1;P0=da;delay(5);lcden=1;delay(5);lcden=0;}voi

您可能关注的文档

文档评论(0)

a888118a + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档