大家好,我刚刚拿到exp430f5529的开发板,正在学习中。但是遇到了一个问题,我把开发板上的xt2 的4M 晶振,直接换成了 24兆晶振。并且SMCLK 二分频12兆 与 MCLK 为24兆 。且全部用i/o输出来 。
当利用 msp430ware里面的工程文件中的 的函数:
void SetVcoreUp (unsigned int level)
{
// Open PMM registers for write
PMMCTL0_H = PMMPW_H;
// Set SVS/SVM high side new level
SVSMHCTL = SVSHE + SVSHRVL0 * level + SVMHE + SVSMHRRL0 * level;
// Set SVM low side to new level
SVSMLCTL = SVSLE + SVMLE + SVSMLRRL0 * level;
// Wait till SVM is settled
while ((PMMIFG & SVSMLDLYIFG) == 0);
// Clear already set flags
PMMIFG &= ~(SVMLVLRIFG + SVMLIFG);
// Set VCore to new level
PMMCTL0_L = PMMCOREV0 * level;
// Wait till new level reached
if ((PMMIFG & SVMLIFG))
while ((PMMIFG & SVMLVLRIFG) == 0);
// Set SVS/SVM low side to new level
SVSMLCTL = SVSLE + SVSLRVL0 * level + SVMLE + SVSMLRRL0 * level;
// Lock PMM registers for write access
PMMCTL0_H = 0x00;
}
去提高核心电压时,
SetVcoreUp (0x01);
SetVcoreUp (0x02);
SetVcoreUp (0x03);
我用示波器去读取,i/o口输出的时钟,频率是对的。但是峰峰值只有1.5v。
无论怎么改变,SetVcoreUp (0x01); 这个函数,他的峰峰值都不变。
是不是我理解错了,SetVcoreUp (0x01);设置这个的值,与输出频率的峰峰值没有关系? 还有能不能告诉我核心电压到底是什么电压??