BASIC4MCU | 질문게시판 | 아두이노 스텝모터 질문있습니다
페이지 정보
작성자 콩이 작성일2019-11-13 12:32 조회5,125회 댓글1건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=10707
본문
12v 바이폴라스텝모터를 사용하기위해 l298n모터 드라이브를 사용하고 12v의 전원을 smps로 공급하여줬는데 작동이 안됩니다ㅠㅠ 모터드라이브에 아두이노의 5v를 연결해주면 빨간불이 들어오면서 켜지는데 12V를 연결해주면 켜지지 않아요 .. 왜 모터작동이 안될까요 .?ㅜ
코드는 이렇게 했어요(컴파일은 되어요)
int stepPin[] = {2, 3, 4, 5};
void aStep(int s){
switch(s){
case 0:
digitalWrite(stepPin[0], LOW);
digitalWrite(stepPin[1], HIGH);
digitalWrite(stepPin[2], HIGH);
digitalWrite(stepPin[3], LOW);
break;
case 1:
digitalWrite(stepPin[0], LOW);
digitalWrite(stepPin[1], HIGH);
digitalWrite(stepPin[2], LOW);
digitalWrite(stepPin[3], HIGH);
break;
case 2:
digitalWrite(stepPin[0], HIGH);
digitalWrite(stepPin[1], LOW);
digitalWrite(stepPin[2], LOW);
digitalWrite(stepPin[3], HIGH);
break;
case 3:
digitalWrite(stepPin[0], HIGH);
digitalWrite(stepPin[1], LOW);
digitalWrite(stepPin[2], HIGH);
digitalWrite(stepPin[3], LOW);
break;
default: break;
}
}
void doSteps(bool dir, int nSteps, int del){
for( int i = 0; i < nSteps; i++ ){
aStep((dir?(nSteps-i-1):i)%4);
delay(del);
}
}
void setup() {
pinMode(stepPin[0], OUTPUT);
pinMode(stepPin[1], OUTPUT);
pinMode(stepPin[2], OUTPUT);
pinMode(stepPin[3], OUTPUT);
Serial.begin(9600);
}
void loop() {
doSteps(0, 200, 5);
delay(1000);
doSteps(1, 200, 5);
delay(1000);
}
댓글 1
조회수 5,125master님의 댓글
master 작성일아두이노 보드의 전원은 어디에서 공급하고 있나요?