from Project/└ ARM 2009. 5. 24. 22:32
1. 개요
- 16비트 타이머/카운터 채널 TC0~TC2 를 갖고있다.
- 사용하려면 PMC에서 클록 공급 설정 해야함.
- 각 핀(?)의 기능
TCLK0~TCLK2 : 각 채널에 입력되는 외부 틀록 단자
TIOA0~TIOA2 : 캡쳐 모드에서 타이머/카운터 트리거 입력 단자로 사용.
                      파형발생모드에서 타이머.카운터 입/출력 단자로 사용     
                      //사용하려면 PIO에서 Peripheral B로 설정

2. 구조와 동작
- 16비트 카운터를 1개씩 갖고있어, 선택된 클록 신호의 상승 에지에서 1씩 증가
카운터 값이 0xFFFF->0x0000 되면 오버 플로우 발생, TCx_SR 레지스터의 COVFS 비트가 세트됨.
- 현재의 카운터 값은 실시간으로 TCx_CV 레지스터에서 읽을 수 있음

  (1)클록 소스 선택
     -외부 클록 : TCx_BMR 레지스터 이용.
                      TCLKx or TIOAx (자신의 채널 제외)중 하나 선택     
                          //내부에들어온 신호는 XC0~XC2 라 부름.
                      주파수는 MCK 주파수의 1/2.5 미만 이어야함.
     -내부 클록 : TIMER_CLOCK0~TIMER_CLOCK5 사용.
     p.s. TCx_CMR 레지스터의 BURST 필드 이용하면, XC0~XC2 가 H 일때만 카운터로 입력되게 할 수 있다.
  (2) 동작 모드
     - Capture mode : WAVE=0    //주로 신호 측정 시 사용. TIOAx, TIOBx 단자가 입력 신호로 동작.
     - Waveform mode : WAVE=1  //외부 단자에 파형 발생. TIOAx, TIOBx 출력신호로 동작
                                                 (TIOBx가 외부 트리거로 설정 아닐때만.)
  (3) Capture mode :
    - TIOAx 에 입력되는 이벤트에 의해 현재의 카운터 값 캡처하여 저장.
    - TCx_CMR 레지스터에서 LDRA 필드로 설정한 신호 에지에서 RA에 캡쳐 동작 수행.
                                         LDRB 필드로 설정한 신호 에지에서 RB에 캡쳐 동작 수행.
                                        ps. RA가 캡쳐되지 않으면 RB 캡쳐는 수행되지 않음.
                                          RA, RB 데이터 읽기 전 캡쳐 수행되면, 오버런 에러가 되어 TCx_SR 레지스터에
                                          LOVRS 비트가 세트.
    - 소프트웨어 트리거, SYNC, RC 비교 트리거 및 외부 트리거를 사용할 수 있다.
      TCx_CMR 레지스터에서
      ABETRG 비트는 TIOAx, TIOBx 단자를 외부 트리거 신호로 설정하는데 사용. 
      ETRGEDG 비트는 외부 트리거 신호가 캡쳐 동작을 수행하느 에지를 설정하는데 사용.
                               0이면 외부 트리거 사용안함.
  (4) Waveform mode :
     - 책 p.180~p.185 참고

3.  I/O 제어 레지스터(p.186~)

'Project > └ ARM' 카테고리의 다른 글

ADS 1.2 IDE에서 Source의 Project적용하기.  (0) 2009.08.06
[ARM]Edge trigger, Level trigger  (0) 2009.06.05
[ARM]RS232에 대해...  (0) 2009.06.05
[ARM]USART에 대해...  (0) 2009.06.05
[ARM] ARM processor register set  (0) 2009.05.24
,