티스토리 툴바

블로그 이미지
상상의공간
개발자란...

calendar

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Notice

2009/12/30 17:22 Study/유비쿼터스


월 화 수 ...

3일 걸렸다...

12월 28일 29일 30일  힘들었다!!

 


저항과 CDS 를 거꾸로 달 필요는 없아 왜냐하면 이것은 회로 자체가 아니기때문에

코딩으로써 바꿔주면 된다!!

완료 소스는 2가지다

개별인터럽트 사용한 소스와 인터럽트를 사용안한 소스 ,

주의할점은 인터럽트를 사용하지 않으면 저장된 값을 초기화 시켜줘야 꼬이지 않는 다는 것이다.

인터럽트 사용안한 코딩이다.

#include <mega128.h>
#include <delay.h>     

void main(void){  


 
    int ADC_I;

    DDRB=0xFF; PORTB=0xff;
    DDRF = 0xFE;
  
    ADMUX=0x00;
    while(1){
        ADCSRA=0xC7;
       
        while((ADCSRA&0x10)==0);
    ADC_I=ADCW;
   

if(ADC_I>500){PORTB=0x00; // LED에 ON

   
             
                ADCW=0x00;   }
               
         
else PORTB=0xff; // LED에 OFF

            
    }
}



그리고 다음은 인터럽트 사용한 코딩이다..


#include <mega128.h>
#include <delay.h>     

float ADC_F;
int ADC_I;

interrupt [ADC_INT] void adc_isr(void){
    ADC_I=ADCW;
    ADC_F=(float)ADC_I*5.0/1024.0;
    if(ADC_F>2.2)PORTB=0x00;
    else PORTB=0xFF;
}

void main(void){
    DDRB=0xFF;
    DDRF=0xFE;
   
    ADMUX=0x00;    ADCSRA=0xA7;  
   
    ADCSRA|=0x08  ;       ADCSRA|=0x40   ;
    #asm("sei")
    while(1){}
}

그리고 인터럽트를 사용안하고 딜레이를 줘서 ADCW 값을 받는 코딩은

#include <mega128.h>
#include <delay.h>     

float ADC_F;
int ADC_I;


void main(void){
    DDRB=0xFF;
    ADMUX=0x00;    ADCSRA=0xE7;
   // #asm("sei")
    while(1){
      delay_ms(10);
      ADC_I=ADCW;
      ADC_F=(float)ADC_I*5.0/1023.0;
      if(ADC_F>2.2)PORTB=0x00;
      else PORTB=0xFF;
    }
}

이것이다.

저 중간값을 구하는 식은 다음과 같다.

avr 은 10비트 ADC 이고 0~ 1023 까지의 값이 나온다..

그럼 그 중간값을 써주는것이다..

그 중간값이 2.5 볼트 정도 될것이다 5볼트라면

계산 식은

5v * 600/1023  = 2.9v 나오는 식과 같다 중간값이 아닌 600 으로 줬을때 2.9 볼트 사이로 왔다갔다 한다는 것이다...

CDS 조도센서 끝!!!!!! 키키키

이것을 알려준곳은 어느 한 까페이다...

거기도 홍보좀 해보자

http://cafe.naver.com/circuitsmanual

이곳이다 많이 들어가세요!!

저작자 표시 비영리 변경 금지

'Study > 유비쿼터스' 카테고리의 다른 글

LHi878센서  (1) 2010/01/02
LHI-878 재시도  (0) 2009/12/30
조도센서 CDS 완료!!  (0) 2009/12/30
조도센서 (CDS) 사용하는 방법  (0) 2009/12/30
오늘 조도센서 atmega128 ADC 이용 실험  (0) 2009/12/29
ADC 를 사용하는데 어려움이 많다.  (0) 2009/12/29
posted by 상상의공간
prev 1 ... 95 96 97 98 99 100 101 102 103 ... 150 next