شحن مجاني للأوردرات فوق
1000 ج
رمضان كريم
Microstepping bipolar stepper motor driver with up to 2A per coil and 1/16 step resolution
The A4988 stepper motor driver is a complete microstepping motor driver with built-in translator for easy operation. It’s designed to operate bipolar stepper motors in full-, half-, quarter-, eighth-, and sixteenth-step modes, with an output drive capacity of up to 35V and ±2A.

1/16 step resolution
Up to 2A per coil (with heatsink)
Thermal shutdown & overcurrent
STEP/DIR interface
Via potentiometer
Power and fault indicators
| Operating Voltage | 8-35V |
|---|---|
| Logic Voltage | 3-5.5V |
| Max Current per Coil | 2A (with heatsink) |
| Microstep Resolution | Full, 1/2, 1/4, 1/8, 1/16 |
| Step Frequency | Up to 250kHz |
| Protection Features | Thermal shutdown, undervoltage lockout, crossover-current |
| Package | QFN-28 (5mm × 5mm) |
| Module Dimensions | 20mm × 15mm × 10mm |
| Pin | Description | Connection |
|---|---|---|
| VMOT | Motor power (8-35V) | Connect to power supply |
| GND | Ground | Connect to power supply ground |
| VDD | Logic voltage (3-5.5V) | Connect to Arduino 5V |
| STEP | Step input | Connect to Arduino digital pin |
| DIR | Direction input | Connect to Arduino digital pin |
| ENABLE | Enable (active LOW) | Optional control |
| MS1, MS2, MS3 | Microstep selection | Connect to GND or VDD |
| 1A, 1B, 2A, 2B | Motor coil connections | Connect to stepper motor |
| MS1 | MS2 | MS3 | Microstep Resolution |
|---|---|---|---|
| LOW | LOW | LOW | Full step |
| HIGH | LOW | LOW | 1/2 step |
| LOW | HIGH | LOW | 1/4 step |
| HIGH | HIGH | LOW | 1/8 step |
| HIGH | HIGH | HIGH | 1/16 step |

// Basic A4988 Stepper Control
const int dirPin = 2;
const int stepPin = 3;
const int stepsPerRevolution = 200;
void setup() {
pinMode(dirPin, OUTPUT);
pinMode(stepPin, OUTPUT);
}
void loop() {
// Set direction clockwise
digitalWrite(dirPin, HIGH);
// Spin motor slowly
for(int x = 0; x < stepsPerRevolution; x++) {
digitalWrite(stepPin, HIGH);
delayMicroseconds(1000);
digitalWrite(stepPin, LOW);
delayMicroseconds(1000);
}
delay(1000); // Wait a second
// Set direction counterclockwise
digitalWrite(dirPin, LOW);
// Spin motor quickly
for(int x = 0; x < stepsPerRevolution; x++) {
digitalWrite(stepPin, HIGH);
delayMicroseconds(500);
digitalWrite(stepPin, LOW);
delayMicroseconds(500);
}
delay(1000); // Wait a second
}
Precise axis control
Accurate tool positioning
Smooth motion control
Precise liquid handling
No account yet?
Create an Account
Recent Comments