질문게시판 > rc카 관련 질문입니다.

인기검색어 > 아두이노 센서 ATMEGA128

최신글 질문게시판 동영상강좌 가입하기

▼ BASIC4MCU 후원업체 신제품 정보 ▼

▲ BASIC4MCU 후원업체 신제품 정보 ▲

BASIC4MCU > 질문게시판

rc카 관련 질문입니다.

페이지 정보

작성자 재갈이 작성일18-10-30 20:58 조회849회 댓글0건

본문

저번에 rc카 관련해서 질문드렸었습니다. 현재 상황이 어플로 switch문에서 case 부분에 질문인데 수동동작인 A부분부터 S부분까지 정상 작동하고 초음파로 자동동작인 A부분도 작동을 잘하는데 문제는 수동동작에서 자동동작으로 가는것은 잘되나 다시 자동동작에서 수동동작으로 가는 부분은 되질 않아 질문드립니다.

 

#include <DHT11.h>
#include <LiquidCrystal_I2C.h>
#include <AFMotor.h>
#include <SoftwareSerial.h>

//

const int trigPin=6,echoPin=7,rxPin=A0,txPin=2,pin=12;
DHT11 dht11(pin);
LiquidCrystal_I2C lcd(0x3F,16,2);
SoftwareSerial mySerial(rxPin,txPin); // RX,TX
AF_DCMotor motor_1(1);
AF_DCMotor motor_2(2);
AF_DCMotor motor_4(4);

//

void setup(){
  Serial.begin(9600);
  pinMode(trigPin,OUTPUT); pinMode(echoPin,INPUT);
  lcd.begin(); lcd.clear(); lcd.backlight();
  mySerial.begin(9600);
  motor_1.setSpeed(150); motor_2.setSpeed(150); motor_4.setSpeed(250);
  motor_1.run(RELEASE);  motor_2.run(RELEASE);
}

//
char mode=0;
//

void loop(){
  if(mySerial.available()){
    char ch=mySerial.read();
    motor_4.run(FORWARD); //쿨링팬 속도 고정
    switch(ch){
      case 'F': mode=ch; motor_1.run(FORWARD ); motor_2.run(FORWARD ); break;
      case 'B': mode=ch; motor_1.run(BACKWARD); motor_2.run(BACKWARD); break;
      case 'L': mode=ch; motor_1.run(BACKWARD); motor_2.run(FORWARD ); break;
      case 'R': mode=ch; motor_1.run(FORWARD ); motor_2.run(BACKWARD); break;
      case 'S': mode=ch; motor_1.run(RELEASE ); motor_2.run(RELEASE ); break;
      case 'A': mode=ch; break; //자동모드
    }
  }

  //

  if(mode=='A'){ //초음파,lcd 띄우기
    double duration,distance;
    digitalWrite(trigPin,LOW);  delayMicroseconds(2);
    digitalWrite(trigPin,HIGH); delayMicroseconds(10); digitalWrite(trigPin,LOW);
    duration=pulseIn(echoPin,HIGH); distance=duration*17/1000;
    delay(200);
    lcd.setCursor(0,0); lcd.print(distance); lcd.setCursor(8,0); lcd.print("cm");
    float humi,temp; dht11.read(humi,temp);
    lcd.setCursor(0,1); lcd.print(temp); lcd.print((char)223); lcd.print("C");
    lcd.setCursor(8,1); lcd.print(humi); lcd.print("%");
    delay(1000);

    if(distance>=10){ motor_1.run(FORWARD); motor_2.run(FORWARD); }
    else            { motor_1.run(FORWARD); motor_2.run(RELEASE); } // 정방향으로 회전
  }

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

댓글 : 0

조회수 : 849

등록된 댓글이 없습니다.

게시물 검색

BASIC4MCU > 질문게시판 목록

제목 날짜
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은… 스태프  19-01-15
공지 사이트 이용 안내 댓글[10] master  17-10-29
공지 [무료 공개] 소스코드 하이라이트 v2.0 beta [… 댓글[1] 첨부파일master  18-01-23
질문 atmega128 while 속 if문 실행 문제 이동욱 새글 11:44
답변 답변 : atmega128 while 속 if문 실행 … master 새글 18:25
질문 Limit Sensor 를 이용한 LED의 자동 작동에… 첨부파일아두이프로 새글 10:40
답변 답변 : Limit Sensor 를 이용한 LED의 자… 댓글[1] master 새글 11:15
질문 HC-11을 이용하여 1:N 통신중입니다. 댓글[3] 아두이노배우기 새글 20-02-23
질문 스텝모터 정지 댓글[2] 아두이노배우기 새글 20-02-23
답변 답변 : 스텝모터 정지 댓글[2] master 새글 20-02-23
질문 정말 감사합니다. 박취  20-02-19
질문 ov9655카메라와 stm32f4 보드를 이용한 영상처… 댓글[7] flap  20-02-19
질문 GLCD 텍스트 출력 댓글[2] 전자학습자  20-02-17
질문 아두이노 HC-11 통신관련입니다. 아두이노배우기  20-02-15
답변 답변 : 아두이노 HC-11 통신관련입니다. master  20-02-16
답변 답변 : 답변 : 아두이노 HC-11 통신관련입니다. 아두이노배우기  20-02-16
질문 led 불켜기 마스터 슬레이브 댓글[1] 공용  20-02-12
답변 답변 : led 불켜기 마스터 슬레이브 master  20-02-12
질문 아두이노 코딩 관련 질문입니다. bbeuniii  20-02-12
답변 답변 : 아두이노 코딩 관련 질문입니다. master  20-02-12
질문 uart 관련 질문 (wiegand통신) 댓글[9] 첨부파일jhyun8624  20-02-11
질문 회로, 코딩 문제 첨부파일공기구함  20-02-10
답변 답변 : 회로, 코딩 문제 댓글[2] master  20-02-10
질문 회로, 코딩문제 댓글[2] 첨부파일공기구함  20-02-10
질문 코딩어레이 질문 master  20-02-07
질문 컴파일 오류가나는데, 이유를 모르겠습니다. 댓글[5] 창고지기  20-02-06
질문 IR센서 2개로 LED, DC모터 제어 (입문자입니다 … 창고지기  20-02-05
답변 답변 : IR센서 2개로 LED, DC모터 제어 (입문… 댓글[1] master  20-02-05
질문 [초보]언어부분 접근 방법 문의 댓글[5] 에루후  20-02-04
답변 답변 : [초보]언어부분 접근 방법 문의 댓글[3] 에루후  20-02-05
게시물 검색


Privacy Policy
MCU BASIC ⓒ 2017
PC버전