2.8 실시간 타이머

시간을 측정 하기 위한 RTT 가 존재 한다. SCLK클럭으로 동작 하며, 32bit 카운터 이다. 초단위 카운터 동작이 가능하며 시간을 비교해서 알람을 발생할 수 있으며 인터럽트 발생도 가능하다.

 

 

Real-time Timer Mode Register

  • RTTRST : 1설정시 32bit 카운터 16비트 분주기 0으로 초기화
  • RTTINCIEN : 1 설정시 RTTINC 가 set 되면 rtt_int로 인터럽트 요청
  • ALMIEN : 1설정시 ALMS 가 set되면 rtt_int로 인터럽트 요청
  • RTPRES : 1설정시 1~65536중 지정된 값으로 프리스케일러 동작 , 0 설정시 2에16승으로 프리스케일러 동작

 

Real-time Timer Alarm Register

  • ALMV : 32bit 카운터와 비교되는 알람발생 값

 

 

Real-time Timer Value Register

  • CRTV : 32bit 카운터

 

 

Real-time Timer Status Register

  • RTTINC : 1설정시 이전 RTT_SR을 읽은후 32bit 카운터값 증가
  • ALMS : 1설정시 이전 RTT_SR을 읽은후 알람이 발생

 

 

2.9 주기 타이머

OS에게 주기적인 인터럽트 신호를 주기 위한 타이머이며 이름은 PIT 라 한다. 정확도를 위한 MCLK를 사용한다. PIT_MR레지스터의 PITEN을 설정하여 동작시킨다. 디버그 모드에서 동작을 정지하며 CPIV값이 증가 하다가 PIV값과 동일해지면 0으로 초기화하고 PICNT 값을 1씩 증가 시킨다. 이때 인터럽트를 발생 할 수도 있으며, 인터럽트 발생을 위해 PIT_MR의 PITIEN을 설정해야 한다. 인터럽트 발생 후 PIT_PIVR을 읽으면 PICNT 값이 0이 되며 PIT_SR 레지스터의 PITS bit도 0으로 변경하면서 인터럽트가 종료 된다. PIT_PIIR 을 읽으면 PITS bit가 0이 되지 않는다.

 

Periodic Interval Timer Mode Register

  • PITIEN : 1설정 시 PITS 비트 설정 시 pit_irq로 인터럽트 요청
  • PITEN : 1설정시 타이머가 동작, 0 설정시 한번 카운터 완료되면 정지
  • PIV : CPIV와 비교하기 위한 값

 

Periodic Interval Timer Status Register

- PITS : 1시에 CPIV값이 PIV값과 동일하게 된 적이 있다.

 

Periodic Interval Timer Value Register

  • PICNT : PITS가 발생된 횟수를 기록한다.
  • CPIV : 타이머 카운터

 

Periodic Interval Timer Image Register

  • PICNT : PITS가 발생된 횟수를 기록한다.
  • CPIV : 타이머 카운터

 

'공부 > SAM7S' 카테고리의 다른 글

[SAM7S] AT91SAM7S 자료 10  (0) 2012.11.14
[SAM7S] AT91SAM7S 자료 9  (0) 2012.11.14
[SAM7S] AT91SAM7S 자료 7  (0) 2012.11.14
[SAM7S] AT91SAM7S 자료 6  (0) 2012.11.14
[SAM7S] AT91SAM7S 자료 5  (0) 2012.11.14

+ Recent posts