您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 基于51单片机的直流电机PWM闭环控制实验
基于51单片机的直流电机PWM闭环控制实验从光驱上拆了一个直流电机组件(这种服务器上用的光驱很难找),有现成的码盘和光耦,给它配了一个板子很方便就成了我的直流电机的实验模块,再配上小键盘和显示模块,我的单片机闭环控制直流电机的一个实验装置就这样OK了。先键入转速,按#键确认,开始启动电机,显示屏实时显示电机转速,可看到转速在所设数值上下摆动,最后稳定在20左右的摆幅。其C语言程序如下:#includereg52.h#defineDIGPORTP2#defineWORDPORTP0#defineKEYPORTP1#defineuintunsignedint#defineucharunsignedchar#defineuongunsignedlongsbitP_7=P3^7;bitOVER;uintk,dt;uongKEYNUM;ucharqu,NUM;voidDelay(uintms){while(--ms);}voidtimer0(void)interrupt1using1{TL0=-(10248%256);TH0=-(10248%256);NUM+=1;if(NUM=10){TR1=0;TR0=0;OVER=1;}}uintCK(void){uintnumber=0;P_7=1;OVER=0;NUM=0;EA=1;ET0=1;TH0=(10203/256);TH0=(10203%256);TH1=0;TL1=0;TMOD=0x51;TR0=1;TR1=1;Delay(dt);P_7=0;while(!OVER);OVER=0;number=TH1*256+TL1;return(number);}voidDisplay_LED(uongnu){uintii=0;uongaa,bb;uintxx[]={-0x10,-0x10,-0x10,-0x10,-0x10,-0x10,-0x10,-0x10};do{bb=nu/10;aa=nu-bb*10;xx[ii]=aa;nu=bb;ii++;}while(nu0);DIGPORT=0xf0;WORDPORT=0x30+xx[0];DIGPORT=0xf1;WORDPORT=0x30+xx[1];DIGPORT=0xf2;WORDPORT=0x30+xx[2];DIGPORT=0xf3;WORDPORT=0x30+xx[3];DIGPORT=0x0f;WORDPORT=0x30+xx[4];DIGPORT=0x1f;WORDPORT=0x30+xx[5];DIGPORT=0x2f;WORDPORT=0x30+xx[6];DIGPORT=0x3f;WORDPORT=0x30+xx[7];}voidgetkey(){qu=0;k=0;KEYNUM=0;do{switch(KEYPORT){case0xbd:KEYNUM=KEYNUM*10;break;case0xf6:KEYNUM=KEYNUM*10+1;break;case0xf5:KEYNUM=KEYNUM*10+2;break;case0xf3:KEYNUM=KEYNUM*10+3;break;case0xee:KEYNUM=KEYNUM*10+4;break;case0xed:KEYNUM=KEYNUM*10+5;break;case0xeb:KEYNUM=KEYNUM*10+6;break;case0xde:KEYNUM=KEYNUM*10+7;break;case0xdd:KEYNUM=KEYNUM*10+8;break;case0xdb:KEYNUM=KEYNUM*10+9;break;case0xbe:KEYNUM=KEYNUM/10;break;case0xbb:qu=1;}Delay(6000);Delay(6000);Delay(6000);Delay(6000);Delay(6000);Delay(6000);Delay(6000);Delay(6000);if(KEYNUM100000000)break;Display_LED(KEYNUM);}while(qu==0);}voidmain(void){uongf;P_7=0;dt=1000;getkey();for(;;){f=0;f=CK()*12;Display_LED(f);if((fKEYNUM)&&(dt100))dt=dt-(f-KEYNUM)/10;if((fKEYNUM)&&(dt6400))dt=dt+(KEYNUM-f)/10;}}来自:来自:艺新工作室第一分享:chzmount时间:2010-12-2617:28评论:0条投票:0次本贴分享:1累计分享:7共有0人发表观点直接输入标签词,...目前还没有互动观点,输入您的互动观点chzmount的博客相关分享:jedit很好的开发编辑器PWM实现ADC和DAC深圳电信宽带城中村区域查询EM78P153S/EM78P156E单片机RC振荡电路设计评论(0)表情同时分享给好友提交
本文标题:基于51单片机的直流电机PWM闭环控制实验
链接地址:https://www.777doc.com/doc-2567883 .html