资源简介
Arduino 自带的第三方库,用于步进电机运行用。并支持两相和四相两种类型的步进电机。
代码片段和文件信息
/*
Stepper.cpp - - Stepper library for Wiring/Arduino - Version 0.4
Original library (0.1) by Tom Igoe.
Two-wire modifications (0.2) by Sebastian Gassner
Combination version (0.3) by Tom Igoe and David Mellis
Bug fix for four-wire (0.4) by Tom Igoe bug fix from Noah Shibley
Drives a unipolar or bipolar stepper motor using 2 wires or 4 wires
When wiring multiple stepper motors to a microcontroller
you quickly run out of output pins with each motor requiring 4 connections.
By making use of the fact that at any time two of the four motor
coils are the inverse of the other two the number of
control connections can be reduced from 4 to 2.
A slightly modified circuit around a Darlington transistor array or an L293 H-bridge
connects to only 2 microcontroler pins inverts the signals received
and delivers the 4 (2 plus 2 inverted ones) output signals required
for driving a stepper motor.
The sequence of control signals for 4 control wires is as follows:
Step C0 C1 C2 C3
1 1 0 1 0
2 0 1 1 0
3 0 1 0 1
4 1 0 0 1
The sequence of controls signals for 2 control wires is as follows
(columns C1 and C2 from above):
Step C0 C1
1 0 1
2 1 1
3 1 0
4 0 0
The circuits can be found at
http://www.arduino.cc/en/Tutorial/Stepper
*/
#include “Arduino.h“
#include “Stepper.h“
/*
* two-wire constructor.
* Sets which wires should control the motor.
*/
Stepper::Stepper(int number_of_steps int motor_pin_1 int motor_pin_2)
{
this->step_number = 0; // which step the motor is on
this->speed = 0; // the motor speed in revolutions per minute
this->direction = 0; // motor direction
this->last_step_time = 0; // time stamp in ms of the last step taken
this->number_of_steps = number_of_steps; // total number of steps for this motor
// Arduino pins for the motor control connection:
this->motor_pin_1 = motor_pin_1;
this->motor_pin_2 = motor_pin_2;
// setup the pins on the microcontroller:
pinMode(this->motor_pin_1 OUTPUT);
pinMode(this->motor_pin_2 OUTPUT);
// When there are only 2 pins set the other two to 0:
this->motor_pin_3 = 0;
this->motor_pin_4 = 0;
// pin_count is used by the stepMotor() method:
this->pin_count = 2;
}
/*
* constructor for four-pin version
* Sets which wires should control the motor.
*/
Stepper::Stepper(int number_of_steps int motor_pin_1 int motor_pin_2 int motor_pin_3 int motor_pin_4)
{
this->step_number = 0; // which step the motor is on
this->speed = 0; // the motor speed in revolutions per minute
this->direction = 0; // motor direction
this->last_step_time = 0; // time stamp in ms of the last step taken
this->number_of_steps = number_of_steps; // total number of steps for this motor
// Arduino pins for the motor control connection:
this->motor_pin_1 = motor_pin_1;
this->motor_pin_2 = mot
- 上一篇:宏芯T108 LCD驱动电路图
- 下一篇:汇编语言课程设计——————电子时钟的设计
相关资源
- Visio图标-最新最全的网络通信图标库
- Python中Numpy库最新教程
- 60个HFSS 仿真模型库
-
st
yles 引文样式语言( CSL ) 引文样 - MoNyog8.5+破解补丁
- ANSYS LS-DYNA
- 全国4级地址库,京东数据
- 一个超简单的企业管理系统(带ACCE
- 数据库课设:图书管理系统报告
- 合同管理系统的源代码(附数据库)
- ado数据库MFC图书管理系统vs2010
- 先进先出库存管理excel表格.rar
- 在线题库管理
- 矩阵基本运算函数库
- 数据库VFP课程设计
- ADNS-3080光流传感器测试程序Arduino
- 服装店进销存管理系统
- 数据库实现学生成绩管理系统选课管
- 排队机叫号 源代码
- 课程作业:模拟仓库管理系统
- Access数据库在线编辑器
- STM32F103 DS18B20 V3.5.0固件库驱动程序工
- Php 导出数据为EXCEL程序
- 人大金仓数据库系统表
- 伪原创同义词库(13000条)
- 模拟ATM柜员机系统--连接数据库
- 用工厂模式开发多数据库连接类
- STC12C系列单片机函数库
- Microsoft基本类库 (MFC)(C 库)
- 题库管理系统(包括11页的论文,PP
评论
共有 条评论