BASIC4MCU | 질문게시판 | 아두이노 모터작동
페이지 정보
작성자 전자과전공 작성일2018-09-03 15:42 조회6,592회 댓글1건본문
#include <SoftwareSerial.h>
SoftwareSerial CT(3, 2); //일반 입출력 데이터 핀을 (RX, TX)핀으로 동작시키는 라이브러리
void setup() {
Serial.begin(9600); //시리얼 모니터 출력속도
CT.begin(9600);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
}
void loop() {
if(CT.available()){ //데이터 수신 대기
char receivechar = CT.read(); //수신 데이터 읽기
Serial.write(receivechar); //수신 데이터 시리얼모니터로 출력
if(receivechar == '1'){
digitalWrite(8, HIGH);
delay(5000);
digitalWrite(8, LOW);
if(receivechar == '1'){
digitalWrite(9, HIGH);
delay(4000);
digitalWrite(9, LOW);
}
}
}
}
이게 제가 작성한 거입니다.
두개의 펌프가
각자 5초 돌고 멈추고 4초 돌고 멈추는 식으로 만들었는데
이게 작동을 시키면 따로 돌아야할 모터가 동시에 돌아가고
딜레이 시간도 3초?정도 돌다 꺼저버립니다.
그래서 하나씩 끊어서 돌려봐도 딜레이 시간만큼이 아닌
3초 정도 돌고 꺼져버리네요 전력도 따로 12v배터리 쓰고 있어서
딸리는것도 아닌데 왜이러는 걸까요,,
핀은 저기 적힌대로 8번핀 9번핀 꼽아서 쓰고 있습니다.
댓글 1
조회수 6,592master님의 댓글
master 작성일
소스코드에 문제가 있어서 답변글에 코드를 첨부해드렸습니다.
//
전류가 부족한 경우 전압강하가 발생합니다.
테스터기로 모터 구동 시 배터리 전압을 측정해보세요