在NUC951上裸跑,使用定时器0,让其每间隔1s点亮led一次,程序如下:
int main()
{
MFSEL=0x0;//多功能引脚选择寄存器
GPIOCPE=0x7fff;//GPIOC引脚上拉/下拉选择寄存器
GPIOC_DIR=0x7fff;//GPIOC方向控制寄存器
GPIOC_DATAOUT=0x7fff;//GPIOC数据输出寄存器
PWRON=0x0;
CLKEN=0x0;
CLKEN|=1<<19;//使能timer0 clock
CLKSEL=0x0;//选择PLL0 Clock
CLKDIV=0x0;
CLKDIV|=1<<26;//CPUCLK:AHB:APB=1:1:2
PLLCON0=0x4f64;//PLL0输出时钟:100MHz
TCSR0=0x0;
TCSR0|=(1<<29)|(1<<27)|249;
TCSR0|=1<<30;
TICR0=0x0;
TICR0|=200000;
if(TDR0==0)
{
GPIOC_DATAOUT=0x0;//点亮led灯
}
while(1);
return 0;
}
寄存器定义我没有贴出来,大家帮我分析分析看看是什么问题?谢谢 |