步进电机实验--实习训练告暨教案.docVIP

  • 3
  • 0
  • 约4.3千字
  • 约 4页
  • 2019-07-23 发布于浙江
  • 举报
江苏省高邮职业教育中心校《单片机》实习训练报告 课题: 步进电机实验 成绩: 班级: 姓名: 同组姓名: 组别: 编号: 日期: 指导教师: 实训目的 1.了解步进电机的控制方式; 2.基本读懂程序; 3.掌握switch等指令的用法; 实训设备 序号 名称 型号 数量 作用及相关说明 1 台式电脑 1 用于编程和调试程序 2 开发板 CCDZ-C 1 演示程序运行效果 3 USB供电线 1 提供+5电源 4 USB串口线 1 与电脑连接下载程序 5 同步电机 1 控制转速 程序清单 /************************************************************************************* * 标题: 步进电机试验 * * * * 通过本例程了解步进马达使用及驱动程序编写 * *; 单双八拍工作方式: * *; A-AB-B-BC-C-CD-D-DA (即一个脉冲,转 3.75 度) * 1、本程序用于测试4相步进电机常规驱动 2、需要用跳帽或者杜邦线把信号输出端和对应的步进电机信号输入端连接起来 3、速度不可以调节的过快,不然就没有力矩转动了 * * **************************************************************************************/ #include reg52.h //Motor sbit A = P1^1; //定义管脚 sbit b = P1^2; sbit C = P1^3; sbit D = P1^4; /////////////////////////////////////// //步进电机驱动 unsigned char MotorStep=0; unsigned int MotorTimer = 0; unsigned int MotorDelay,Speed=1,TIM,CT; #define speed 5 // 调整速度 数值不要设的太低 低了会引起震动。 /***************************************************** * 初始化马达 * ******************************************************/ void InitMotor() { A = 1; b = 1; C = 1; D = 1; } void SetMotor() { // if(Speed == 0) return; MotorDelay=Speed; //调整速度 switch(MotorStep) { case 0: if(TIM) // A { A = 0; //0xf1 b = 1; C = 1; D = 1; MotorStep = 1; TIM=0;

文档评论(0)

1亿VIP精品文档

相关文档