
你改成这样,VICVectCntl0 = (0x20 | 0x05)你看看衡历定时器1的中断源,是5, 你为什么写0X25呢?
VICIntEnable = (1<<0x05)你看看定时器1的中断源,是5,不是2,你上面干嘛写成0x02?
2)、 if( (IO0SET&LEDCON) == 0 )?你是要判断引脚的电平,但是IO0SET是引脚的设置寄存器,不是引脚值寄存器,可能这样写执行结果也对,但是不咐或搜推荐,相当于驴唇和马嘴,推荐:
if((IO0PIN&LEDCON)==0)
但是程序为了省事你可以这样写if(IO0PIN&LEDCON) IO0CLR = LEDCON(如果高电平则熄灭)
else IO0SET = LEDCON
the USART communication baud rate:The baud rate is computed using the following formula:
- IntegerDivider = ((PCLKx) / (16 * (USART_InitStruct->USART_BaudRate)))
- FractionalDivider = ((IntegerDivider - ((u32) IntegerDivider)) * 16) + 0.5
你按照这个公式算一下看看,晶振是11.0592的看能不能达到这个波特率。。行薯。让掘希望对你有帮坦带核助
计算PLL设置值:假设有一个基于LPC2114的系统,所使用的晶振为11.0592MHZ石英晶振。请计算出最大的系统时钟(ccls)频率为多少MHZ?此时PLL的M值和P值各为清弊猜多少?请列出计算公式,并编写设置PLL的程序段。解:Fosc= 11.0592=Fcclk/M 系统LPC2114的最大系统时钟频率为60Hz所以 M = Fcclk/Fosc约等于5最大的cclk频率答型Fcclk=M□Fosc=5*11.0592=55.296 MHz因为Fcco范卜岩围为156~320MHz 故P=Fcco /(Fcclk*2)=1.4 ~ 2.89 因为p的值只能去2 、4、8 故 P=2 PLLCON = 1PLLCFG = plldatPLLFEED = 0xaaPLLFEED = 0x55While((PLLSTAT&(1<<10))==0)PLLCON = 3PLLFEED = 0xaaPLLFEED = 0x55M — 1 = 5; P = 2PLLCFG =5|(2<<5) return (TRUE)欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)