单片机应用系统课程设计说明书专业年级:姓名:指导老师:目录一、步进电机...........................................................................................................................21、步进电机介绍.................................................................................................................22、步进电机分类.................................................................................................................23、技术指标.........................................................................................................................34、步进电机工作原理.........................................................................................................4二、单片机最小系统及电源电路...........................................................................................51、最小系统.........................................................................................................................52、电源电路.........................................................................................................................6三、步进电机驱动电路...........................................................................................................61、驱动电路.........................................................................................................................62、单电压型驱动电源.........................................................................................................73、对驱动电源的要求.........................................................................................................7四、显示电路...........................................................................................................................8五、程序设计...........................................................................................................................81、正反转程序.....................................................................................................................82、测速计算程序.................................................................................................................93、显示程序.........................................................................................................................94、双四拍及八拍驱动程序...............................................................................................10六、程序流程图.....................................................................................................................11七、调试结果及分析.............................................................................................................12一、步进电机1、步进电机介绍2、步进电机分类3、技术指标4、步进电机工作原理(1)工作原理(2)驱动方式电机驱动方式可以采用双四拍(AB→BC→CD→DA→AB)方式,也可以采用单四拍(A→B→C→D→A)方式,或单、双八拍(A→AB→B→BC→C→CD→D→DA→A)方式。各种工作方式的时序图如下:(高电平有效)二、单片机最小系统及电源电路1、最小系统单片机的最小化系统是指单片机能正常工作所必须的外围元件,主要可以分成时钟电路和复位电路。(1)时钟电路(2)复位电路2、电源电路用固定式三端集成稳压电路7805设计制作连续可调直流稳压的实际电路如图所示,图中R1取220Ω,R2取680Ω主要用来调整输出电压。输出电压Uo≈Uxx(1+R2/R1),该电路可在5~12V稳压范围内实现输出电压连续可调。其中1接整流器输出电压,2为公共地,3为5V输出电压三、步进电机驱动电路1、驱动电路步进电机的驱动可以选用专用的电机驱动模块,在本实验中采用达林顿驱动器ULN2803,该芯片单片最多可一次驱动八线步进电机。达林顿管步进电机与单片机的连接2、单电压型驱动电源输入脉冲为0时,VT截止;输入脉冲为1是,VT导通,在接通瞬间,电容C短接电阻R,电流由ELCVT,电阻在电流达到恒定后起限流作用,此时电流由ELRVT。输入脉冲消失后,VT截止,L两端将产生一感应电压,增加二极管D续流,续流电流:LRDL。电路图如下:3、对驱动电源的要求理想驱动电源使电机绕组电流应尽量接近矩形波,实际上,步进电机是感性负载,绕组中电流不能突变,而是按指数规律上升或下降,从而使整个通电周期内,绕组电流平均值下降,电机输出转矩下降。而当电机运行频率很高时,电流峰值显著小于额定励磁电流,从而导致电机转矩进一步下降,严重时不能启动。为了提高步进电机动态特性,必须改善电流波形,使前后沿陡度增大,方法有电阻法和电压法,本次课程设计采用单电压型驱动电源。四、显示电路在本实验中,采用总线方式驱动八段显示管时,故将八段的驱动方式选择开关拨到“内驱”位置。实验仪提供了6位8段码LED显示电路,采用动态方式显示。8位段码、6位位码是由两片74LS374输出,将KEY/LEDCS接到CS0上,则段码地址为08004H,位码地址为08002H。五、程序设计1、正反转程序实验采用单四拍驱动方式,反转只需把START子程序中的#30H改为#34H即可,具体实现程序如下:部分显示电路2、测速计算程序实验以定时器T0作为计数器,定时器T1作为定时器每0.2ms中断一次,以方式2工作。3、显示程序由于使用实验箱的内驱显示方式,将KEY/LEDCS接到CS0上,则段码地址为08004H,位码地址为08002H。4、双四拍及八拍驱动程序双四拍START:MOVP1,#09HACALLDELAYMOVP1,#03HACALLDELAYMOVP1,#06HACALLDELAYMOVP1,#0CHACALLDELAYLJMPSTARTDELAY:MOVR0,#100LOOP:MOVR1,#200DJNZR1,$DJNZR0,LOOPRETEND八拍START:MOVP1,#09HACALLDELAYMOVP1,#01HACALLDELAYMOVP1,#03HACALLDELAYMOVP1,#02HACALLDELAYMOVP1,#06HACALLDELAYMOVP1,#04HACALLDELAYMOVP1,#0CHACALLDELAYMOVP1,#08HACALLDELAYLJMPSTARTDELAY:MOVR0,#100LOOP:MOVR1,#200DJNZR1,$DJNZR0,LOOPRETEND六、程序流程图程序由初始化程序、中断初始程序、步进电机正反转驱动程序、转速计算程序、显示程序等组成,总体流程图如下:开始程序初始化设置T0、T1初始延时值步进电机单四拍转动转速计算是否到2s?是否显示在LED七、调试结果及分析程序清单:ORG0000HLJMPMAINORG001BH;定时器1中断入口LJMPT_1ORG002FHMAIN:MOVSP,#6FH;给堆栈赋地址;MOVSCON,#0C0HMOVTMOD,#2EH;定时器T0作为计数器,定时器T1作为定时器每0.2ms中断一次,工作方式为方式2MOVTL1,#37H;0.2msMOVTH1,#37HMOVTL0,#00H;计数器低8位清零MOVTH0,#00H;计数器高8位清零SETBEA;允许中断;SETBET1;允许定时器/计数器1中断SETBTR1;启动定时器1SETBTR0;启动计数器0MOVP1,#00HMOVR4,#200MOVR5,#50MOV30H,#01H;正转MOV31H,#02HMOV32H,#04HMOV33H,#08HMOV34H,#08H;反转MOV35H,#04HMOV36H,#02HMOV37H,#01HSTART:MOVR0,#30H;#34H反转MOVR3,#4LOOP:MOVA,@R0MOVP1,ALCALLDELAYINCR0DJNZR3,LOOPSJMPSTARTDELAY:MOVR7,#25DL1:MOVR6,#100;25*100*2=5msDL2:DJNZR6,DL2DJNZR7,DL1RETSHUZI:DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;共阳极;DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,07FH,6FH;共阴极顺T_1:DJNZR4,LOOP2DJNZR5,LOOP1MOVA,TL0;LCALLLEDMOVTL0,#00HMOVR4,#200MOVR5,#50LOOP2:RETILOOP1:MOVR4,#200RETILED:MOVB,#10;每2s读一次数,则转速n=m*60/2*3,即n=10mMULAB;脉冲数乘10得转速,存于A中MOVB,#100DIVABPUSHACCMOVA,BMOVDPTR,#SHUZIMOVC