资源描述:
《微机原理直流电机测速实验》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验四直流电机测速实验一、实验目的:(1)掌握8254的工作原理和编程方法;(2)丫解光电开关,掌握用光电传感测量电机转速的方法。二、实验内容:光电测速的基木电路由光电传感器,计数器/定时器组成。被测电机主轴上固定一个圆盘,圆盘的边缘上奋小孔。传感器的红外发射端和接收端装在圆盘的两侧,电机带动圆盘转到有孔的位置时,红外光通过,接收管导通,输出低电平。红外光被挡住时,接收截止,输出高电平。用计数器/定时器记录在一定时间内传感器发出的脉冲个数,就可以计算出电机的转速。三、线路连接:线路连接如图4.5所示,8254计数器/定时器0和2作为定时器,确定测速时间,定时器0的CLKO连1MHZ脉冲
2、频率,OUTO作为定时器2的输入,与CLK2相连,输出0UT2与8255的PAO端相连。GATEO和GATE2均接+5V,8254计数器/定时器1作为计数器,输入CLK1与直流电机计数关连接,GATE1与8255的PCO相连。电机DJ端与+5V~0V模拟开关SW1相连。2SSH-2SFH2S0H-28TI8254.•C厂1直流电机测速实猃接线图P•5V1SW1直流电机四、编程提示:8255计数器/定时器1作为计数器,记录脉冲个数,计数器/定时器0和2作为定时器,组成10~60秒定时器,测量脉冲个数,算出电机每分钟的转速并显示在屏幕上。8255的PAO根据OUT2的开始和结束时间,通过P
3、C0向8254计数器/定时器1发出开始和停止计数信号。五、流程阁如图4.6所示图4.6直流电机测速程序流程图六,编写源程序如下:DATASEGMENTIOPORTEQU0D880H-0280HI08255KEQUI0P0RT+283H;8255控制口I08255AEQUIOPORT+280H;8255A口I08255CEQUI0P0RT+282H;8255C口T08254KEQUI0P0RT+28BH;8254控制1082542EQUI0P0RT+28AH;8254计数器21082541EQUI0P0RT+289H;8254计数器11082540EQUI0P0RT+288H;8254计
4、数器0MESSDB’STRIKEANYKEY,RETURNTODOS!OAH,ODH,COUDB0coinCOUNT1COUNT2COUNT3C0UNT4DATACODEASSUMESTART:DB0DB0DB0DB0DB0ENDSSEGMENTCS:CODE,DS:DATALL:MOVAX,DATAMOVDS,AXMOVDX,OFFSETMESSMOVAH,09HINT21H;显示提示信息MOVDX,TO8254KMOVAL,3611:计数器0,方式3,先读写低8位,再读写高8位OUTDX,AL;输入时钟,1MHZMOVDX,1082540MOVAX,50000;初值50000,输
5、出时钟周期50MSOUTDX,ALNOPNOPMOVAL,AHOUTDX,ALMOVDX,T08255K;8255,PAO通道输入,PCO输出MOVAL,90HOUTDX,ALMOVDX,I08255CMOVAL,00OUTDX,AL;PCO低电平,定时器1禁止计数MOVAH,01H;有无键入INT16HJNZQUIT1;有键入,返回MOVDX,I08254KMOVAL,70HOUTDX,AL;计数器1,方式0,先读写低8位,再读写高8位MOVDX,1082541;输入时钟为光电开关输出MOVAL,OEFHOUTDX,ALNOPNOPOUTDX,ALMOVDX,I08254KMOVAL
6、,90HOUTDX,AL:计数器2,方式0,只读写低8位MOVDX,1082542MOVAL,100OUTDX,ALMOVDX,T08255CMOVAL,01HOUTDX,ALJMPAOQUIT1:JMPQUITAO:MOVDX,T08255AAl:INAL,DX;初值100,检测5s;PCO输出1,定时器1开始计数ANDAL,01HJZA1MOVDX,IO8255CMOVAL,OOHOUTDX,ALMOVDX,1O8254KMOVDX,7OHOUTDX,ALMOVDX,T082541INAL,DXMOVBL,ALINAL,DXMOVBH,ALmovax,orrrrnSUBAX,BXC
7、ALLDISPMOVDL,ODHMOVAH,02TNT2111MOVDL,OAIIMOVAH,021NT21HJMPLLDTSPPROCNEARMOVDX,OOOOHMOVCX,03E8HDIVexMOVCOUNT1,ALMOVAX,DXMOVCL,64HDIVCLMOVC0UNT2,ALMOVAL,AHMOVAH,OOHMOVCL,10DIVCLMOVCOUNT3,ALMOVC0UNT4,AHMOVAL,COUNT1CALLDISP1MOVA