📄 samtc.c
字号:
#include "AT91SAM7S64.h"
#include "SAMtc.h"
#include "ucos_ii.h"
void TC2init(void)
{
// clock
AT91C_BASE_PMC->PMC_PCER=(1<<AT91C_ID_TC2); // TC2
AT91C_BASE_TC2->TC_CCR=0x01; // clk en
AT91C_BASE_TC2->TC_CMR=AT91C_TC_WAVE|AT91C_TC_WAVESEL_UP_AUTO|AT91C_TC_CLKS_TIMER_DIV5_CLOCK;
AT91C_BASE_TC2->TC_RC=468; // 100Hz
AT91C_BASE_TC2->TC_IER=AT91C_TC_CPCS;
AT91C_BASE_AIC->AIC_SMR[14]=AT91C_AIC_PRIOR_LOWEST|AT91C_AIC_SRCTYPE_INT_EDGE_TRIGGERED;
AT91C_BASE_AIC->AIC_IECR=1<<AT91C_ID_TC2;
AT91C_BASE_TC2->TC_CCR=0x04; // reset start
}
void TC2ISR(void)
{
volatile unsigned int s=0;
s=AT91C_BASE_TC2->TC_SR;
OSTimeTick();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -