微机原理与接口综合实验
5、若步进电机运行不正常,则需检查程序的功能是否有误,直至达到期望结果为止。
七、实验设计总结
这是一个综合性实验,也是我做得比较成功的一个微机接口实验之一。通过做该实验,使我受益匪浅,特别是对用8086 CPU去控制步进电机有了进一步的认识,对步进电机的原理也有了比较深的了解。主要表现在以下几个方面:
1、对控制步进电机(比如正转,反转,停止,加速,减速)有了初步的认识。步进电机并不像普通的直流电机,交流电机那样在常规下使用, 步进电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响。因此,用8086控制步进电机不能像控制其它电机一样。以前在杂志上看到,电脑的软驱就是用步进电机带动软盘转动的,我也亲手拆下过里面的步进电机,但是对步进电机的工作原理,以及计算机是怎么控制步进电机的并不了解。通过做这个综合性实验,我对这些有了一个初步的认识。 2、实验大部分的源代码都是我自己写的,花了大概一个晚上的时间。在做实验之前多已经把源代码输入计算机并在WAVE上通过软件仿真的形式调试通过。这样,在正式做实验时我拥有了充足的时间去调试和改进,并在实验时间结束时成功实现了大部分功能。通过该实验,我认为不管做什么实验都必须提前预习,了解实验的基本原理,这样才能把实验做好。 3、我认为做这个实验最成功的地方就是用步序表去做,从而避免了后面大量冗余重复的代码,从而简化了代码。但是这样必须用一些比较复杂的
实验设计
15
微机原理与接口综合实验
指令以及多重循环,增加编程的难度,但使程序更加简洁。
4、通过做这个实验我发,延时子程序延时的长短很难控制。比如步进电机的加速用到了延时,如果延时时间过短,那么观察时用肉眼很难看到转速在增加,因为加速过程太短了。因此在编程中我写了好几个备用的延时子程序,其中有一个是前面的跑马灯中复制过来的,还有一个是我《微控制器》(即MC68HC908GP32单片机)中的延时子程序改为8086汇编得到的,只要修改其中的参数应该能控制延时的长短。看来用软件延时的方法很难实现精确延时。
5、有同学完全复制我的代码却没有观察到应有的现象,取而代之的是电机左右摆动。我们的第一反应是电机可能坏了,但最终检查的结果却是线接反了。因此,在做实验时我们应该细心一点,否则一根线接错,或者一个字母输错可能会浪费我们宝贵的时间去检查错误。
6、在做实验前我用WAVE软件仿真功能进行调试,并用观察寄存器的变化情况来推测实验结果。我认为这一点很重要,因为在以后的工作过程中我们不可能任何项目都用实验板去仿真调试,因此我们必须先用软件仿真成功后才动手去芯片上调试。这样我们才能节省时间并避免损坏硬件等意外情况。
实验设计 16