博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
中断控制电机反向转动
阅读量:5262 次
发布时间:2019-06-14

本文共 1139 字,大约阅读时间需要 3 分钟。

1: 
2: /*
3: Stepper Motor Control - one revolution
4:
5: This program drives a unipolar or bipolar stepper motor.
6: The motor is attached to digital pins 8 - 11 of the Arduino.
7:
8: The motor should revolve one revolution in one direction, then
9: one revolution in the other direction.
10:
11:
12: Created 11 Mar. 2007
13: Modified 30 Nov. 2009
14: by Tom Igoe
15:
16: */
17: 
18: #include 
19: 
20: int stepsPerRevolution = 200;
21: int pbIn = 5;
22: 
23: 
24: Stepper myStepper(stepsPerRevolution, 9,7,8,6);
25: 
26: void setup() {
27: attachInterrupt(pbIn,stateChange,RISING);
28: // set the speed at 60 rpm:
29: myStepper.setSpeed(60);
30: // initialize the serial port:
31: Serial.begin(9600);
32: }
33: 
34: void loop() {
35: // step one revolution in one direction:
36: Serial.println("clockwise");
37: myStepper.step(stepsPerRevolution);
38: delay(500);
39: }
40: 
41: void stateChange()
42: {
43: stepsPerRevolution = -stepsPerRevolution;
44: }

不知道为什么,当行程开关按下的时间不一样时,会出现这样一种怪现象:电机先反向转了一圈,然后又恢复了原来的方向,有点诡异。而且电机对开关的响应还是迟钝,大概这个也是Arduino的缺点,不过肯定有优化的方法,也可能是我对电机的库函数的理解不对!

转载于:https://www.cnblogs.com/zjjsxuqiang/p/3476605.html

你可能感兴趣的文章
c# 文件笔记
查看>>
第一页 - 工具的使用(webstorm)
查看>>
Linux 进程资源用量监控和按用户设置进程限制
查看>>
IE浏览器整页截屏程序(二)
查看>>
D3.js 之 d3-shap 简介(转)
查看>>
制作满天星空
查看>>
类和结构
查看>>
CSS3选择器(二)之属性选择器
查看>>
adidas crazylight 2018 performance analysis review
查看>>
typeset shell 用法
查看>>
python 之 循环语句
查看>>
心得25--JDK新特性9-泛型1-加深介绍
查看>>
[转]ceph网络通信模块_以monitor模块为例
查看>>
HDOJ 1754 I Hate It(线段树基本操作)
查看>>
latex tree
查看>>
安装NVIDIA驱动时禁用自带nouveau驱动
查看>>
HDU-1255 覆盖的面积 (扫描线)
查看>>
css3学习01
查看>>
【USACO】 奶牛会展
查看>>
ActiveMQ笔记之点对点队列(Point-to-Point)
查看>>