질문게시판 > ATMEGA 128 코드를 합치려고 하는데 어렵네요

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

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


BASIC4MCU | 질문게시판 | ATMEGA 128 코드를 합치려고 하는데 어렵네요

페이지 정보

작성자 고양이33 작성일2022-08-02 12:00 조회6,365회 댓글2건

본문

	

#define F_CPU 16000000L

#include <avr/io.h>

#include <util/delay.h>

 

void ADC_init()

{

   ADMUX |= (1 << REFS0);// AVCC 핀 입력을 기준전압(5V)

   ADMUX |= (1 << MUX0 | 1 << MUX1);// PF3을 ADC입력핀으로

   //설정, 단일 입력 방식

   ADCSRA |= (1 << ADPS2) | (1 << ADPS1) | (1 << ADPS0);//

   //분주비 128로 설정

   ADCSRA |= (1 << ADEN);// ADC 활성화 (전원 ON)

   ADCSRA |= (1 << ADFR);// 프리러닝 모드로 설정

   ADCSRA |= (1 << ADSC);// ADC 변환 시작

}

int read_ADC(void)

{

   while( ! ( ADCSRA & (1 << ADIF) ) );

   return ADC;

}

int main(void)

{

   DDRC = 0xFF; // 모든 포트 출력으로 설정.

   PORTC = 0x00;

 

   int read;

   DDRA = 0xFF;

   ADC_init();

   

 

   

   while(1)

   {

      

   

   PORTC = 0xFF;

   _delay_ms(10000);

   PORTC = 0x00;

   _delay_ms(10000);

   

   read = read_ADC();

   if(read <= 300) PORTA = 0x00;

   else PORTA = 0xFF;

   }

   return 0;

}

 

조도센서 코드에 C포트에 딜레이 함수를 넣어서 

빛 감지- LED 꺼짐

빛 없음-LED켜짐

위에랑 상관없이 계속 

C포트 10초 ON

C포트 10초 OFF 이렇게 하고 싶은데 

 

현실은

빛 없음-LED 켜짐

C 포트 10초 ON(이 구간에서 조도센서에 빛을 줘도 딜레이함수(C포트)가 끝나야 LED가 꺼짐)

C 포트 10초 OFF

빛 감지- LED 꺼짐

 

 

 이렇게 코드를 짰는데 알고리즘이라고 할까요 뭔가 순서가 이상합니다.

딜레이 함수와 조도센서 값을 아예 각각으로 동시진행 할 수 는 없을까요?

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

댓글 2

조회수 6,365

master님의 댓글

master 작성일

#define F_CPU 16000000L
#include <avr/io.h>
#include <util/delay.h>
//
int main(void){
  int t=0,val;
  DDRA=0xFF;
  DDRC=0xFF;
  ADMUX=0x43; ADCSRA=0xE7;
  while(1){
    _delay_ms(1);
    if(++t>=10000){ t=0;
      PORTC^=0xFF;
    }
    //
    val=ADC;
    if(val<=300)PORTA=0; else PORTA=0xFF;
  }
  return 0;
}

고양이33님의 댓글

고양이33 댓글의 댓글 작성일

감사합니다 올려주신 코드로 해결했습ㄴ다!! 좋은 하루 보내세요

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

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
공지 MCU, AVR, 아두이노 등 전자공학에 관련된 질문은 질문게시판에서만 작성 가능합니다. 스태프 19-01-15 21007
공지 사이트 이용 안내댓글[29] master 17-10-29 34882
질문 stm32 보드에서 시간설정과 불러오기를 하는데 새글 라칸 10:09 8
질문 아두이노 인터럽트 질문입니다.댓글[1] 새글 Tell 23-09-21 12
답변 답변글 답변 : 아두이노 인터럽트 질문입니다. 새글 master 05:47 15
질문 아두이노와 거리 감지 센서의 전류 관련댓글[1] 새글 hmkim 23-09-21 27
질문 아두이노 코딩 질문있습니다. 도와주세요....댓글[1] 이미지새글첨부파일 vnpaz 23-09-20 36
질문 아두이노를 사용한 dc모터 위치제어댓글[2] 새글 모터위치 23-09-20 41
질문 stm32 디버깅이나 rst버튼 없이 하는 방법좀댓글[1] 라칸 23-09-20 37
질문 LCD에 숫자 표기법을 바꾸고 싶습니댓글[2] Bs드리프터 23-09-19 88
질문 알코올 측정기(MQ-3) 관련 질문 이미지 소오금 23-09-18 50
답변 답변글 답변 : 알코올 측정기(MQ-3) 관련 질문 master 23-09-19 44
질문 스텝모터 제어하는 소스파일 수정방법 질문드립니다. Bs드리프터 23-09-15 60
답변 답변글 답변 : 스텝모터 제어하는 소스파일 수정방법 질문드립니다.댓글[1] master 23-09-15 92
질문 atmega 128을 이용한 악기 튜너기댓글[1] 아두이노짱 23-09-15 222
질문 stm32 보드 ip주소 찾는법댓글[1] 라칸 23-09-13 58
질문 마이컴 종류 질문댓글[2] stevie8 23-09-12 105
질문 주파수 실수배 체배 관련문의댓글[6] 스쳐두임신 23-09-11 142
질문 스마트 창문 제작 중에 질문 있습니다!댓글[1] 이미지첨부파일 N8008 23-09-09 100
질문 아두이노와 파이어베이스 연결이 안되는데 도와주실수 있을까요댓글[1] 아카링고 23-09-08 353
질문 노르딕 타이머댓글[1] stevie8 23-09-08 253
질문 아두이노우노 엔코더모터 서보모터 코드댓글[1] 팔쟁이 23-09-07 191
질문 rs485 모드버스 통신 질문댓글[2] 킹초보 23-08-28 388
질문 데이터 타입 질문댓글[1] stevie8 23-08-22 206
질문 아두이노 서보모터 연결 작동안함댓글[1] 이미지 토뭉이 23-08-19 531
질문 아두이노 외부전원 인가 문제 해결방안...댓글[3] 나도할수있어아두 23-08-17 314
질문 Arduino nano 33 iot 모듈 블루투스 통신댓글[5] 이미지첨부파일 senior 23-08-16 599
질문 아두이노로 전달받은 값을 실시간으로 웹페이지와 연동댓글[1] 스냥 23-08-16 285
질문 atmega128 여러개 RFID 연결댓글[1] 강민준 23-08-15 251
질문 ATmega128A UCSR1A Register 질문 mustbe 23-08-14 229
게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
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 ⓒ 2020
모바일버전으로보기