[Atmega128] 5. 아날로그 비교기 (Analog Comparator)

2019. 8. 3. 18:46개발 관련 학습정리/AVR(atmega128) Register 분석

반응형

analog comparator에 대하여 알아보자.

 

 

 

 

 

 

 

 

Analog Comparator 블록 다이어그램.

 

용도는 인터럽트를 발생시키거나 / 타이머(카운터)를 트리거할 때 사용된다.

 

AIN0(+)와 AIN1(-)로 들어온 아날로그 값을 비교하여 AIN0이 더 전압이 클 경우 발생한다.

 

AIN0에서는 ACBG를 통해 bandgap reference의 고정 전압을 사용하거나 외부 전압을 사용할 수 있고,

 

AIN1에서는 ACME, ADEN, 그리고 ADC 멀티플렉서에서의 아웃풋을 받아 결정한다.

 

 

 

 

 

 

 

 

 

 

 

 

그럼 이제 Analog Comparator의 레지스터를 알아보자

 

1. ADCSRB : ADC control and status register B (ADCSRA 는 ADC에서만 사용)

 

Analog Comparator에서는 ACME bit만 제어한다.

 

ACME는 analog comparator multiplexer enable bit로, 말 그대로이다.

 

 

 

 

 

 

 

 

 

 

 

2. ACSR : AC control and status register

 

끔찍하게 8비트 모두 채워져있다

ACD - analog comparator disable bit 

1일 경우 disable 한다

 

ACBG - analog comparator bandgap select

이 비트를 통해 1이면 bandgap 레퍼런스를 , 0이면 기존 AIN0을 사용한다.

 

ACO - analog comparator output

write 할 수 없고, 아웃풋 그 자체이다.

 

ACI - analog comparator Interrupt Flag

플래그 비트로, 이플 래그는 인터럽트 트리거 실행될 때 1로 세트 되고, 인터럽트 처리 시작하면 0으로 클리어 된다.

 

ACIE, ACIC - analog comparator Interrupt/Input Capture Enable

ACIE는 인터럽트를, ACIC는 input capture를 enable 시킨다.

 

ACIS1.. 0 - analog comparator interrupt mode select

ACIS는 다음과 같이 모드 설정 비트이다.

 

 

 

 

 

 

 

 

 

3. DIDR1 : Digital Input Disable Register 1

클ㅡㅡㅡ린

AIN1... 0D - AIN1과 0의 input을 disable 시켜주는 비트이다.

 

 

 

 

 

 

 

 

추가 기능 : analog comparator multiplex input ->

analog comparator의 AIN1 (-) 에 들어가는 인풋 결정하는 방법

 

ADC0... 7의 입력 신호를 받을 수 있는 기능이 있다.

ACME가 1일 때(analog comparator가 enable일 때)와 ADEN이 0일 때 (ADC가 꺼졌을 때) 받을 수 있으며,

ADC 채널 중에 1개가 AIN1 입력으로 설정되고, ADC 채널은 ADC 멀티플렉서 아웃풋이 정해준다.

 

 

 

 

 

 

 

 

 

analog comparator는 adc와 많은 연관이 있다.

따라서 adc를 이해해야 analog comparator도 완벽하게 이해할 수 있다는 것이다.

다음 편에서 adc에 대해 알아볼 것이다.

 

 

 

 

 

 

 

 

 

 

[복두출판사]AVR ATmega128 프로그래밍 응용실습:ED-4513 마이크로프로세서 콤보 IT를 이용한, 복두출판사
반응형