[질문]안드로이드 rc카 모터드라이버에 대해서



  • #include<stdio.h>
    #include<wiringPi.h>
    #define MOTER1 4// BCM_GPIO 23
    #define MOTER2 5// BCM_GPIO 24(라즈베리파이의 핀넘버 입니다)
    
    int main(void){
    if(wiringPiSetupGpio () == -1)
    return 1;
    pinMode (MOTER1, OUTPUT);
    pinMode (MOTER2, OUTPUT);
     
    int a;
    //여기서 부터 무한루프로 들어가서 키보드로 제어하는 부분입니다!
    while(1){
     
    scanf("%d",&a);
    if(a==1){
    digitalWrite(MOTER1, 1);
    digitalWrite(MOTER2, 1);
    
    delay(1000);
     
     
    digitalWrite(MOTER1, 0);
    digitalWrite(MOTER2, 0);
    }//어느정도 돈다음에 두개다 멈추도록 명령했는데..하핳...
    if(a==2){
    digitalWrite(MOTER1, 0);
    digitalWrite(MOTER2, 1);
    delay (1000);
    
    digitalWrite(MOTER1, 0);
    digitalWrite(MOTER2, 0);
    
    }
    if(a==3){
    digitalWrite(MOTER1, 1);
    digitalWrite(MOTER2, 0);
    
    delay (1000);
     
     
    digitalWrite(MOTER1, 0);
    digitalWrite(MOTER2, 0);
    }
    if(a==4){
    break;
    }//4를 누르면 리모컨 모드가 끝나고 프로그램이 끝나게 됩니다!
    }
    return 0;
    }
    

    저는 그냥… 1번만 눌렀을 뿐인데… 바퀴는 안멈추고… 휴…
    혹시 드라이버는 초기화 어떻게 하죠…? 이거 어떻게 멈추죠…???
    어디가 문제인지도 모르겠습니다…


  • Global Moderator

    @이가연9595 @이가연9595 안녕하세요
    산딸기마을 이장 나무꾼 입니다.

    우선 전체적인 하드웨어 파트 구성을 어떻게 진행하시는지는 알 수가 없지만, 사용하시는 모터드라이브 구성에 따라 답변이 모두 달라질 수 있는 내용입니다.

    우선 RC카에 대해 설명하자면 2륜 방식, 4륜방식 RC카의 동작 구조가 다르고 이에 따리 코딩의 동작 구성도 달라지게 됩니다.

    또한 위에서 먼저 언급한 모터드라이브의 구성 방식이 gpio 가 온오프만 되는 구성인지 enable 핀을 통해 pwm 방식의 구성인지에 따라서도 달라지게 됩니다.

    프로젝트의 전체설계와 하드웨어 구성방식을 체크한 뒤 조합구성이 마치셨다면 소프트웨어의 코딩은 그 다음 문제입니다.


답글을 작성하기 위해 로그인
 

Rasplay Forum 사이트로의 연결이 끊어졌습니다. 다시 연결을 시도하는동안 잠시만 기다려 주십시오.