void Timer0_Init(void)
{
// 타이머 카운터 0 사용을 위한 PMC 활성화
// 1.시작 : 타이머 클럭 비활성화 ------------------
// 타이머 클럭 비활성화(TC_CCR 설정)
// 2. 시작 : 타이머 인터럽트 비활성화 -------------
// 타이머 인터럽트 비활성화(TC_IDR 설정)
// 인터럽트 상태 정보 초기화(TC_SR 읽기)
// 분주비 1024, 비교 방식 레지스터 설정(TC_CMR, DIV5_CLOCK, AT91C_TC_CPCTRG)
// MCKR divided by 4096 => 12, 0.25us(TC_RC 설정)
// 타이머 카운터 0 인터럽트 비활성화(AIC_IDCR, AT91C_ID_TC0)
// 3. 시작 : 타이머 카운터 0 인터럽트 비활성화 ------
// 타이머 카운터 0 인터럽트 핸들러 등록(AIC_SVR[AT91C_ID_TC0], timer_handler)
// 타이머 카운터 0 인터럽트 모드 설정(AIC_SMR[AT91C_ID_TC0], AT91C_AIC_SRCTYPE_INT_HIGH_LEVEL, AT91C_AIC_PRIOR_LOWEST)
// 타이머 카운터 0 인터럽트 클리어(AIC_ICCR, AT91C_ID_TC0)
// TC_RC 값 비교 타이머 인터럽트 활성화(TC_IER, AT91C_TC_CPCS)
// 2. 끝 : 타이머 인터럽트 비활성화 ---------------
// 타이머 카운터 0 인터럽트 활성화(AIC_IECR, AT91C_ID_TC0)
// 3. 끝 : 타이머 카운터 0 인터럽트 비활성화 -------
// 타이머 클럭 활성화(TC_CCR, AT91C_TC_CLKEN)
// 1. 끝 : 타이머 클럭 비활성화 ------------------
// 타이머 시작(TC_CCR, AT91C_TC_SWTRG)
}
'Programming > Firmware(ARM,AVR)' 카테고리의 다른 글
[ARM] AT91SAM7S256 정리 보고서 (0) | 2013.06.07 |
---|---|
[ATmega] ADC 컨버트 슈도 코드 (0) | 2013.06.05 |
[ARM]사용자 폰트를 추가해 캐릭터LCD에 출력 (0) | 2013.06.02 |
[논리회로]반가산기, 반감산기 (0) | 2013.05.09 |
[130408]논리회로 7408 AND(앤드) 게이트 실습 (0) | 2013.04.08 |