本帖最后由 逆序排列 于 2011-5-7 23:00 编辑
dsPIC30F6014A发烫
外部晶振为7.3728M,16倍频,进去后不分频,就点亮一个LED闪烁,芯片就发烫,把LED闪烁屏蔽掉也是一样,只有在4倍频的时候才不会。。。
按照手册,
4/8倍频时外部晶振为4M~10M
16倍频时外部晶振为4M~7.5M,并没有超过额定范围,为什么会发烫?
哪位有碰到过这种情况么?指点一下,谢谢!!!
程序如下:
#include<p30f6014A.h>
//#include<p30f6014.h>
_FOSC(CSW_FSCM_OFF & XT_PLL4);
//_FOSC(CSW_FSCM_OFF & XT_PLL8);
//_FOSC(CSW_FSCM_OFF & XT_PLL16);
//_FOSC(CSW_FSCM_OFF & FRC_PLL16);
_FWDT(WDT_OFF);
_FBORPOR(PBOR_OFF & MCLR_EN);
_FGS(CODE_PROT_OFF);
#define Fcy 7372800
int main(void)
{
LATD = 0xFFFF;
TRISD = 0xFFF0;
TRISA = 0xFFFF;
LATB = 0xF0FF;
TRISB = 0xF0FF;
T1CON = 0;
TMR1 = 0;
PR1 = (Fcy/256)/2;
T1CON = 0x8030;
LATBbits.LATB8 = 1;
while(1)
{
if(IFS0bits.T1IF==1)
{
IFS0bits.T1IF = 0;
LATDbits.LATD0 = !LATDbits.LATD0;
LATBbits.LATB8 = !LATBbits.LATB8;
}
if(PORTAbits.RA12 == 0)
{
LATDbits.LATD2 = 0;
LATDbits.LATD3 = 1;
}
if(PORTAbits.RA13 == 0)
{
LATDbits.LATD3 = 0;
LATDbits.LATD2 = 1;
}
}
} |