본문 바로가기

Etc/AVR

TCCR1B(Timer/Counter 1 Control Register B)

TCCR1B(Timer/Counter 1 Control Register B)
[ ICNC1 | ICES1 | - | WGM13 | WGM12 | CS12 | CS11 | CS10 ]

ICNC1(Input capture noise canceler)
이 비트에 1로 설정하면 input noise canceler 로 동작한다. noise canceler가 동작하면 입력 캡춰 핀 (ICP1)의 입력은 필터링된다. ICP1에 들어오는 펄스는 연속해서 4개를 샘플링하여 동일한 경우에만 인정된다. Noise Canceler가 동작할 경우에는 4개의 오실레이터 사이클만큼 지연된다.

ICES1 (Input capture edge select)
ICP1 에 해당되는 에지의 형태를 선택하는 비트로 1로 설정하면 상승에지에서 검출되며 0으로 설정하면 하강 에지에서 검출된다. ICES1을 설정하여 캡춰가 발생하면, 카운터 값은 Input capture register ICR1 레지스터에 저장되고 Input capture flag ICF1이 설정되어 있으면 Input cature 인터럽트가 발생된다. 물론 이경우는 SREG 의 I비트가 1로 설정되어 있어야만 한다. WGM13:0 비트는 설정에 따라서 ICR1 레지스터가 TOP 값으로 사용되면 ICP1 은 Input capture 로 동작하지 않는다.

WGM13:2 (Waveform generation mode)
TCCRIA 레지스터의 방법과 동일

CS12:0 (Clock select)
Time/counter1, 3 의 클럭에 대한 클럭 소스에 나타낸다.

CSn2CSn1CSn0설명
000No clock source(Timer/counter stopped)
001clk I/O (No prescaling)
010clk I/O/8 (From prescaler)
011clk I/O/64 (From prescaler)
100clk I/O/256 (From prescaler)
101clk I/O/1024 (From prescaler)
110T2 핀의 외부 클럭 (하강 에지)
111T2 핀의 외부 클럭(상승 에지)