본문 바로가기
전자공학/LoRa 통신

Timer(타이머)와 Counter(카운터)의 원리 및 종류(3) - EFM32

by ohj921189 2020. 5. 17.
반응형

목차

 

1. Timer에 대해서

 - Timer란?

 - EFM32 Timer

 - Clock Sources

 - Prescaler?

 - Interrupts, PRS and DMA

 - Counting Modes and Timer Setup

 - Capture/Compare - Input Capture

 - Capture/Compare – Output Capture

 - Quadrature Decoding

 

2. Counter에 대해서 

 - Real Time Counter란?

 - Real Time Counter의 종류 - RTC

 - Real Time Counter의 종류 - RTCC

 - Real Time Counter의 종류 - Backup RTC

 

 

1. Timer에 대해서 - Counting Modes and Timer Setup

 

- Timer Setup

 

- 타이머가 의도한 대로 작동하도록 일부 초기 구성을 수행해야 합니다. 이러한 구성을 용이하게 하기 위해 void TIMER_Init(TIMER_TypeDef *timer, const TIMER_Init_TypeDef *init) 기능을 사용할 수 있습니다.

 

이 기능을 사용하여 사용자는 다음 파라미터를 구성할 수 있습니다.

 

• 구성이 완료되면 카운트 시작

• 디버그 도중 카운터 실행

• HFPER 클럭이 선택된 경우 프리스케일러 실행

• 클럭 선택

• 하강 에지 입력에 대한 조치

• 상승 에지 입력에 대한 조치

• 카운팅 모드

• 활성 상태에서 DMA 요청 삭제

• X2 또는 X4 사분자 디코드 모드(사용되는 경우)

• 원샷 또는 연속 카운팅

• 다른 타이머에 의한 타이머 시작/정지/재로드

 

 

 

- Up, Down, and Up/Down

 

- 카운터는 각 모드에서 다른 동작으로 UP, DOWN 또는 UP/DOWN 카운트에 사용할 수 있습니다.

 

• UP count — TIMERn_TOP 값에 도달할 때까지 카운트 업 한 다음, 다시 카운트 업하기 전에 0으로 리셋됩니다(연속 카운트). 카운터가 TIMERn_TOP에서 0으로 바뀌면 오버플로 이벤트가 발생합니다.

 

• DOWN count— TIMERn_TOP에서 0까지 카운트한 다음 TIMERn_TOP의 값으로 다시 로드됩니다. 카운터가 0에서 TIMERn_TOP으로 이동하면 언더플로우 이벤트가 발생합니다.

 

• UP/DOWN count 카운터는 0에서 시작하여 TIMERn_TOP에 도달할 때까지 카운트 업합니다. 그러고 나서 0까지 카운트하고 다시 카운트 업을 시작합니다. 카운터가 TIMERn_TOP에서 TIMERn_TOP-1로 갈 때 오버플로우가 발생하고 0에서 1로 갈 때 언더플로우가 발생합니다.

반응형

댓글