您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 计算机控制技术_实验二报告
计算机控制技术课程实验之二步进电机控制实验内容1.掌握KeilC51软件与Protues软件联合仿真调试的方法;2.掌握步进电机的工作原理及控制方法;3.掌握步进电机控制的不同编程方法。1.用Proteus设计一四相六线步进电视控制电路。要求利用P1口作步进电机的控制端口,通过达林顿阵列ULN2003A驱动步进电机。2.编写程序,实现步进电机的正反转控制。正反转时间分别持续10S时间,如此循环。#includereg52.h#defineucharunsignedchar#defineuintunsignedintucharcodezheng[]={0xf3,0xf6,0xfc,0xf9};ucharcodefan[]={0xf9,0xfc,0xf6,0xf3};uchart;bitflag=0;voiddelay(uintz){uinti,j;for(i=0;iz;i++)for(j=0;j110;j++);}voidtimer_init(){TMOD=0X01;//定时器0,方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;EA=1;TR0=1;}voidmotor_z(){uchari;for(i=0;i4;i++){P1=zheng[i];delay(200);}}voidmotor_f(){uchari;for(i=0;i4;i++){P1=fan[i];delay(200);}}voidmain(){timer_init();while(1){if(flag==0){motor_f();}else{motor_z();}}}voidtimer()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;if(t=200){t=0;flag=~flag;}t++;}3.设计一可调速步进电机控制电路。P3.0~P3.2分别接案件K1~K3,其中K1为正反转控制按键,K2为加速按键,K3为减速按键,要求速度7档(1~7)可调,加减速各设3档,复位时位于4档,要求每档速度变化明显。该步进电机控制电路在以上电路的基础上自行修改。#includereg52.h#defineucharunsignedchar#defineuintunsignedintucharcodezheng[]={0xf3,0xf6,0xfc,0xf9};ucharcodefan[]={0xf9,0xfc,0xf6,0xf3};//uchart;bitflag=0;uintshijian;uchartemp,num=0;voiddelay(uintz){uinti,j;for(i=0;iz;i++)for(j=0;j110;j++);}/*voidtimer_init(){TMOD=0X01;//定时器0,方式1TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;EA=1;TR0=1;}*/voidmotor_z(){uchari;for(i=0;i4;i++){P1=zheng[i];delay(shijian);}}voidmotor_f(){uchari;for(i=0;i4;i++){P1=fan[i];delay(shijian);}}voidkeyscan(){P3=0XFF;//delay(5);while(P3!=0xff){delay(5);temp=P3;switch(temp){case0xfe:{flag=~flag;break;}case0xfd:{num++;if(num=4)num=3;break;}case0xfb:{if(num!=0)num--;//减速键按下,速度标志减1elsenum=0;break;}//default:break;}while(temp!=0xff){temp=P3;}}}deal()//根据速度标志进行数据处理{switch(num){case0:P0=0xf9;//数据管显示1shijian=320;//转速最慢break;case1:P0=0xa4;//数据管显示2shijian=160;break;case2:P0=0xb0;//数据管显示3shijian=80;break;case3:P0=0x99;//数据管显示4shijian=40;break;}returnshijian;}voidmain(){//shijian=350;//timer_init();while(1){keyscan();deal();if(flag==0){motor_f();}else{motor_z();}}}/*voidtimer()interrupt1{TH0=(65536-50000)/256;TL0=(65536-50000)%256;if(t=200){t=0;flag=~flag;}t++;}*/
本文标题:计算机控制技术_实验二报告
链接地址:https://www.777doc.com/doc-2043056 .html