질문게시판 > ATMEGA128을 이용한 초음파센서 거리측정 질문합니다.

TODAY926 TOTAL605,555
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | ATMEGA128을 이용한 초음파센서 거리측정 질문합니다.

페이지 정보

작성자 정기린 작성일2018-12-18 14:15 조회396회 댓글0건

본문

	
ATMEGA128을 이용하여 HC-SR04를 사용해보고 있습니다.
아직 타이머 레지스터에 대한 이해가 부족하여
HC-SR04에 대한 데이터시트를 보고 적용을 못시키고 있네요ㅠㅠ.

우선, 프로그램은 코드비전을 사용하고 있습니다.
인터럽트를 사용하지 않고 하는 방법으로 진행하고 있습니다.

트리거 핀을 통해 10us의 길이의 펄스를 입력하고
에코 핀에서 시간의 길이에 비례하는 펄스를 출력한다.
58us가 1cm로 계산합니다.

트리거핀을 포트C에 0번에
에코핀을 포트A에0번 핀에 연결해서 테스트 하고 있습니다.
관련 자료를 계속 찾다가 몇일째 막혀 질문 올립니다 ㅠㅠ.

아! 그리고 혹시 답변해주실때 처럼 깔끔하게 소스를 올리는 것을 어떻게 하는지
알 수 있을까요? 방법을 모르니 좀 보기 불편하게 올리게 되네요ㅠ 시간되시면 알려주시면
감사하겠습니다.

#include <mega128.h>    //Atmega128 여러가지 레지스터값들 헤더파일
#include <stdio.h>
#include <delay.h>      //딜레이를 쓰기위한 헤더

#define Trigger PORTC.0 // 포트C 0번 트리거 출력
#define Echo PINA.0     // 포트G 1번 에코 입력   PIN-> 포트 입력 레지스터(읽기만 가능)

 
/* I/O포트 8비트 6개 A~F까지 포트G는 5비트이다. */
 
unsigned int getEcho(void)
{
    unsigned int range;
    while(!Echo);      //에코핀 하이
    TCNT1=0;       //8주기 0.5us
    TCCR1B=2; 
    while(Echo);        // 에코 하강
    TCCR1B=8;
    range=TCNT1/116;    // 범위cm 
    return(range);

}

void main(void)
{
    unsigned int range;  
    DDRB=0x60; 
    DDRC=0x10;
    DDRA=0x00;
    TCCR1A=0;   
    TCCR1B=8;
    delay_ms(100);

    while(1)
    {
        Trigger=1;
        delay_us(10);
        Trigger=0;  //10us
        range = getEcho();
        
/*  5cm이상 일 경우 끝에 LED점등  딜레이 후 소등.*/

 if(range>5)
    {
        PORTC=0b00000001;
        delay_ms(100);
        PORTC=0x00;
    }

   
/*  3cm이내일 경우 끝에서 두번째 LED점등  딜레이 후 소등.*/
    else if(range<3)
    {
        PORTC=0b00000010;
        delay_ms(100);
        PORTC=0x00;
    }
    }    
}
  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 0

조회수 396

등록된 댓글이 없습니다.

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
질문 atmega128 스톱워치 질문있습니다.댓글[3] 이미지첨부파일 s공돌 19-06-06 174
질문 아두이노 등 질문있습니다 . 엽빵이 19-06-05 126
질문 아두이노 DFPlayer mini와 RFID 가나다 19-06-05 81
답변 답변글 답변 : 아두이노 DFPlayer mini와 RFID master 19-06-09 70
질문 아두이노 키패드와 블루투스를 이용한 금고 제작 명령어인데 작동이 안됩니다.댓글[2] 훈빵이 19-06-05 171
질문 아두이노 심박센서와 스피커댓글[3] 이채희 19-06-05 129
질문 아두이노 자동창문 코딩 해석좀 부탁드립니다. 나무늘보 19-06-05 79
질문 리모컨 초기설정에 따른 제어 방법 급히 여쭤봅니다 ㅠ 고수분들 부탁드려요 눙봅 19-06-05 75
질문 칵테일 머신 아두이노 컴파일 오류. 소방관 19-06-05 81
답변 답변글 답변 : 칵테일 머신 아두이노 컴파일 오류. master 19-06-09 72
질문 아두이노 LCD 판넬 이용댓글[1] 깈잌으 19-06-05 159
질문 네오픽셀과 인체 감지센서댓글[1] 손문일 19-06-05 94
질문 라즈베리파이 이용하여 스마트 작물 만들기 현꾸리다메 19-06-05 79
질문 아두이노 블루투스 연결방법 wait 19-06-04 115
답변 답변글 답변 : 아두이노 블루투스 연결방법 master 19-06-09 75
질문 무게센서를 4개정도 아두이노메가에 연결하고 싶습니다.댓글[1] 임베초보 19-06-04 99
질문 가스센서, 먼지센서, 서보모터, DC모터 관련 타이거 19-06-04 119
질문 세븐 세그먼트 출력이이상한문제(사진)상세 내용댓글[1] 첨부파일 바다조아 19-06-04 101
질문 atmega128 질문드립니다 깡용 19-06-04 126
답변 답변글 답변 : atmega128 질문드립니다 master 19-06-09 84
질문 스텝모터 (정방향+역방향) + 자기 리드 센서 acidrain 19-06-04 138
답변 답변글 답변 : 스텝모터 (정방향+역방향) + 자기 리드 센서 master 19-06-09 91
질문 아두이노 전력부족 관련 질문드립니다.댓글[1] 한쭈 19-06-04 127
질문 PWM 제어를 통해 팬 작동중 아두이노 재부팅 현상댓글[1] mjmj 19-06-04 130
질문 세븐 세그먼트 불빛이 안들어오는 문제댓글[2] 바다조아 19-06-04 121
질문 아두이노에서 시리얼 통신값으로 LED 50개에 각각 신호보내기 문의건댓글[1] 만불산 19-06-04 132
질문 시리얼통신, FND 바바바사옹 19-06-04 138
답변 답변글 답변 : 시리얼통신, FND master 19-06-09 57
질문 함수관련하여 질문하나 드립니다.댓글[1] 배우자 19-06-03 63
질문 아두이노 보드와 초음파 모듈 연결 관련 질문드립니다댓글[3] 이미지첨부파일 한쭈 19-06-03 125
게시물 검색

2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2017
모바일버전으로보기