De DRV8825 Driver Board is een stappenmotor-driver die step/direction-signalen omzet naar spoelstroom voor twee motorfasen. Hij werkt met een controller via DIR en STEP (plus EN/enable en sleep/reset) en voedt de motor via VMOT, met uitgangen voor de vier motoraansluitingen (1A/1B en 2A/2B). Microstepping wordt meestal ingesteld met M0/M1/M2, en de foutstatus kan worden uitgelezen via FLT.
| Pin | Signaal | Beschrijving |
|---|---|---|
DIR |
digital | Direction control input; logic level selects stepper motor rotation direction. |
STEP |
clock | Step pulse input; each rising edge advances the motor one microstep/full step. |
GND |
ground | Logic ground reference; connect to controller ground. |
EN |
enable | Active-low enable input; low enables motor outputs, high disables them. |
A1 |
power | Stepper motor coil A output terminal 1. |
A2 |
power | Stepper motor coil A output terminal 2. |
B1 |
power | Stepper motor coil B output terminal 1. |
B2 |
power | Stepper motor coil B output terminal 2. |
RST |
reset | Active-low reset input; resets the translator and step position. |
SLP |
enable | Active-low sleep input; pull high for normal driver operation. |
VMOT |
power | Motor supply voltage input for the DRV8825 power stage. |
M2 |
digital | Microstep mode select input M2; used with M0/M1 to set step resolution. |
M1 |
digital | Microstep mode select input M1; used with M0/M2 to set step resolution. |
M0 |
digital | Microstep mode select input M0; used with M1/M2 to set step resolution. |
FLT |
interrupt | Fault output; indicates driver fault such as overcurrent or thermal shutdown. |
GND.1 |
ground | Motor power ground; connect to motor supply negative and controller ground. |
| Van | Naar | Draad |
|---|---|---|
board:GND |
x1:GND |
black |
board:GND.1 |
x1:GND.1 |
black |
board:D2 |
x1:STEP |
green |
board:D3 |
x1:DIR |
blue |
board:D4 |
x1:EN |
yellow |
board:5V |
x1:RST |
red |
board:5V |
x1:SLP |
red |
board:D5 |
x1:M0 |
purple |
board:D6 |
x1:M1 |
cyan |
board:D7 |
x1:M2 |
magenta |
x1:A1 |
x2:1A |
brown |
x1:A2 |
x2:1B |
pink |
x1:B1 |
x2:2A |
teal |
x1:B2 |
x2:2B |
lime |
Dit voorbeeld is geschreven en compile-gecheckt voor de arduino-uno. Codey Online past het voor je aan naar elk ander ondersteund board.
// Canonical DRV8825 example for Arduino Uno
// This sketch steps a NEMA17 stepper motor forward and backward using the DRV8825 driver.
const int STEP_PIN = 2;
const int DIR_PIN = 3;
const int EN_PIN = 4;
const int M0_PIN = 5;
const int M1_PIN = 6;
const int M2_PIN = 7;
const int STEP_DELAY_US = 800; // Lower = faster stepping
const int STEPS_PER_DIRECTION = 400;
void stepMotor(int steps) {
for (int i = 0; i < steps; i++) {
digitalWrite(STEP_PIN, HIGH);
delayMicroseconds(4);
digitalWrite(STEP_PIN, LOW);
delayMicroseconds(STEP_DELAY_US);
}
}
void setup() {
pinMode(STEP_PIN, OUTPUT);
pinMode(DIR_PIN, OUTPUT);
pinMode(EN_PIN, OUTPUT);
pinMode(M0_PIN, OUTPUT);
pinMode(M1_PIN, OUTPUT);
pinMode(M2_PIN, OUTPUT);
Serial.begin(9600);
while (!Serial) { }
// Full-step mode: M0=M1=M2 LOW
digitalWrite(M0_PIN, LOW);
digitalWrite(M1_PIN, LOW);
digitalWrite(M2_PIN, LOW);
// Active-low enable: LOW turns the driver on
digitalWrite(EN_PIN, LOW);
// RESET and SLP are tied high in wiring, so the driver is awake.
Serial.println("DRV8825 stepper demo starting...");
}
void loop() {
Serial.println("Direction: clockwise");
digitalWrite(DIR_PIN, HIGH);
stepMotor(STEPS_PER_DIRECTION);
delay(1000);
Serial.println("Direction: counterclockwise");
digitalWrite(DIR_PIN, LOW);
stepMotor(STEPS_PER_DIRECTION);
delay(1000);
}
Beschrijf wat je wilt bouwen. Codey Online schrijft de code, tekent het aansluitschema, compileert het en flasht je board rechtstreeks vanuit de browser.
Gratis starten