BASIC4MCU | 질문게시판 | 아두이노 블루투스 rc카 질문입니다.
페이지 정보
작성자 라이언 작성일2020-12-17 22:54 조회4,543회 댓글1건본문
#include <SoftwareSerial.h>
//모터 PIN 설정
#define LEFT_A1 8
#define LEFT_B1 9
#define RIGHT_A2 10
#define RIGHT_B2 11
//블루투스 PIN 설정
#define BLUE_TX 2
#define BLUE_RX 4
SoftwareSerial mySerial(2,4);
char value;
void setup() {
Serial.begin(9600);
mySerial.begin(9600);
pinMode(LEFT_A1, OUTPUT);
pinMode(RIGHT_A2, OUTPUT);
pinMode(LEFT_B1, OUTPUT);
pinMode(RIGHT_B2, OUTPUT);
Serial.println("Arduino Bluetooth Car is ready to start");
}
void loop() {
while(mySerial.available())
{
value = mySerial.read();
Serial.print(value);
if(value == 'l'){ //좌회전(강)
Serial.println("left");
left();
}else if(value == 'r'){ //우회전(강)
Serial.println("right");
right();
}else if(value == 'f'){ //전진
Serial.println("forward");
forward();
}else if(value == 'b'){ //후진
Serial.println("backward");
backward();
}else if(value == 'w'){ //우회전(약)
Serial.println("slow right");
sRight();
}else if(value == 'q'){ //좌회전(약)
Serial.println("slow left");
sLeft();
}else if(value == 's'){ //정지
Serial.println("stop");
stop();
}
}
}
// 자동차 움직임 정의 Function 들
void forward(){
digitalWrite(LEFT_A1, HIGH);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, HIGH);
digitalWrite(RIGHT_B2, LOW);
}
void backward(){
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, HIGH);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, HIGH);
}
void left(){
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, HIGH);
digitalWrite(RIGHT_A2, HIGH);
digitalWrite(RIGHT_B2, LOW);
}
void right(){
digitalWrite(LEFT_A1, HIGH);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, HIGH);
}
void sLeft(){
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, HIGH);
digitalWrite(RIGHT_B2, LOW);
}
void sRight(){
digitalWrite(LEFT_A1, HIGH);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, LOW);
}
void stop(){
digitalWrite(LEFT_A1, LOW);
digitalWrite(LEFT_B1, LOW);
digitalWrite(RIGHT_A2, LOW);
digitalWrite(RIGHT_B2, LOW);
}
현재 코드가 이렇게 짜보았으며 블루투스 작동시 직진 방향인데 한쪽 바퀴뿐이 안움직이네요.. 무엇이 문제일까요?
댓글 1
조회수 4,543master님의 댓글
master 작성일
왼쪽과 오른쪽의 아두이노 핀을 변경해보고
그래도 안되면 다른핀으로 변경해보세요