Microprocessor/ARM7 ARM7 자료 ( 광센서 활성화 및 사용 ) [20120718]
  • 728x90
    반응형

       

       

      안녕하세 L입니다.

     

    오늘은 태풍경보 입니다

     

    다들 태풍피해 조심하시길 !!

     

    이번시간은 ARM 광센서를 연결해서 

     

    PC 하이퍼 터미널에 결과값을 출력해 보았습니다.

     

     

     

     

     

     

     

       

       

     광센서 활용

       

       

       

    ※ spec 1page

       

       

       

       

    8 센서를 사용이 가능하다.

       

       

     

     

       

    [ ADC 회로도 ]

    ※ spec 4page

       

       

       

     

     

     

    [ ADCREF Pin number ]

       

    ※ spec 10page

       

       

     

     

     

       

       

    ※ spec 479page

       

     

     

    Trigger Selection : 외부에서 쓸것인지 내부에서 쓸것인지 선택

       

       

       

     

     

     

       

    [ 광센서 연결 ]

     

       

    광센서를 AD7pin 에 연결.

     

       

    3.3V VCC를 반대쪽 다리에 연결.

       

       

       

       

       

     

     

       

    [ ADC Base Address ]

     

    ※ spec 10page

       

       

     

     

       

       

    [ ADC OFFset Address ]

     

    ※ spec 486page

       

       

       

     

     

    Ex) spec 을 참조하여 ADC 주소 define

       

       

     

     

       

       

    [ Timing table ]

     

       

       

       

    Conversion Time : 변환 시간.

       

    Read the ADC_CDRx : 센서가 계산한 결과값.

      ( 특정 Reg 에서 값을 읽어오면 Low 떨어진다. )

       

    위 Timing 그래프를 참조하여 코드를 작성한다.

     

     

       

    [ ADC 상세 Reg ]

     

    ※ spec 487page

       

     

     

     

     

    ADC_CR이 1이되면 축차비교법으로 세기 시작.

       

       

    Ex) ADC SWRST, START 를 No effect 로 define 해 둔다

       

     

       

       

       

       

       

       

       

     

       

    [ ADC_CHER 상세 Reg ]

     

    ※ spec 490page

       

     

     

       

       

     

     

     

     

       

    [ ADC Mode Register ]

     

    ※ spec 488page

       

     

     

       

    Ex) ADC Mode Reg define

       

       

       

     

       

     

    외부 드라이버를 활성화 ( 사용하지 않을시 0으로 해둔다. )

       

       

       

       

       

     

    Timing 그래프의 세로눈금을 나타낸다. ( 10-bit 사용 예정 )

       

       

     

     

       

       

     

    슬립모드 ( 사용하지 않을 경우 0 )

       

       

     

     

     

       

       

    펄스 신호(48M) 를 묶어계산

       

    4MHz = MCK(48M) / ((p + 1 ) * 2)

       

     (p+1)*2 = 12, p = 5

       

       

       

     

     

     

    ※ spec 492page

       

       

     

       

       

       

    EOC7 을 사용하는 이유는 현재 7채널을 사용하고 있기때문.

       

    ADC_SR 의 EOC 가 Read 되면 Low가 되고 DRDY는 Hight 가 유지된다.

       

       

     

     

    ADC_SR reg의 DRDY, EOC7 값을 다음과 같이 확인할 수 있다.

     

       

       

       

       

     

     

    ※ spec 493page

       

     

     

    ADC_LCDR이 Read 되면 ADC_SR의 EOC, DRDY 는 LOW가 된다.

       

       

     

     

    10bit 만 사용함으로 쓰레기 값을 없애주기위해 Mask 를 씌워야 한다.

     

       

       

       

       

       

       

     

     

     

       

    Ex) 광센서를 이용하여 최대 밝기 1023으로 설정하여 실습

       

       

       

       

       

       

       

       

    선언된 함수 초기화 와 main함수

       

       

       

    함수 호출 함수를 따로 만들어 한번에 함수들을 호출함.

    ADC 기능 활성화 및 시작 함수.

       

       

       

    1byte문자 전송함수 및 통신설정이 사용됨

       

       

       

    [ 빛을 비추지 않았을 ]

       

       

       

       

       

    [ 빛을 비추었을때]

       

       

       

     

     

     

     

    < 실행 결과 동영상 참고 >

       

       


       

     

       

     

     

     

     

     

    궁금하신 점은 댓글로 !

     

    오늘도 좋은 하루 되세요 

     

     

     

       

       

    728x90
    반응형
상단으로