单片机步进电机控制实验 单片机步进电机控制实验报告

1、实验目的和要求 。了解步进电机的工作原理 , 学习用单片机的步进电机控制系统的硬件设计方法 , 掌握定时器和中断系统的应用 , 熟悉单片机应用系统的设计与调试方法 。
【单片机步进电机控制实验 单片机步进电机控制实验报告】2、实验设备 。单片机测控实验、系统步进电机控制实验模块、Keil开发环境、STC-ISP程序下载工具 。
3、实验内容 。编制MCS-51程序使步进电机按照规定的转速和方向进行旋转 , 并将已转动的步数显示在数码管上 。步进电机的转速分为两档 , 当按下S1开关时 , 加速旋转 , 速度从10转/分加速到60转/分 。当松开开关时 , 减速旋转 , 速度恢复为10转/分 。当按下S2开关时 , 按照逆时针旋转;当松开时 , 按照顺时针旋转 。本程序要求使用定时器中断来实现 , 不准使用程序延时的方式 。
4、实验步骤 。预习:参考辅助材料 , 学习C51编程语言使用和步进电机原理 。简单程序录入和调试:关于C51的中断 , 本程序需要使用定时器定时 , 并使用中断来同步 。中断程序的典型例子如下:格式:void函数名()interrupt中断号using工作组{中断服务程序内容}注意:中断不能返回任何值 , 所以前面是void后面是函数名 , 名字可以自己起 , 但不要与c语言的关键字相同;中断函数不带任何参数 , 所以函数名后面的()内是空的 , 中断号是指单片机的几个中断源的序号 。这个序号是单片机识别不同中断的唯一标志 。所以一定要写正确 。后面的using工作组是指这个这个中断使用单片机内存中4个工作寄存器的哪一组 , c51编译后会自动分配工作组 , 因此最后这句话我们通常省略不写 。c51中断写法实例:void T1-time()interrupt3{TH1=(65536-50000)/256;TL1=(65536-50000)%6;}上面的意思是定时器1的中断服务程序 , 定时器1的中断服务序号是,因此我们要写成 interrupt3,服务程序的内容是给两个初值寄存器装入新值 。
5、实验原理 。使用的单片机系统的频率是12M;步进电机转动一周需要24步 。本步进电机实验板 , 使用FAN8200作为驱动芯片 。CPU通过引脚与FAN8200相连 。

    经验总结扩展阅读