您好!
当我们从待机模式加速 MSP430F149时、我们在代码中遇到了一个异常情况。
最初、MSP430F149 采用这种方式进行配置…
DCOCTL = 0x40; //加快计算机速度
BCSCTL1 = 0x85; // 40-84 ~ 750KHz -- 40-85 ~1.25MHz -- a0-84 ~950KHz
BCSCTL2 = 0x00;
几秒钟后、我们将 MSP430置于待机模式
MSP430处于待机模式几秒钟:
DCOCTL = 0x00; //返回到低功耗模式
BCSCTL1 = 0x80; //减慢计算机速度
………
………
……… 5秒后……
然后、我们加快 MSP430的速度:
DCOCTL = 0x40; //加快计算机速度
BCSCTL1 = 0x85; // 40-84 ~ 750KHz -- 40-85 ~1.25MHz -- a0-84 ~950KHz
P5OUT ^= BIT3; 不执行//切换引脚5.3
电脑控制器_ON;
八伏打开;
以1.25Mhz 运行的 MSP。 P5OUT μ^=第一次不执行 BIT3 、
MSP 以950Khz 运行。 P5OUT P5OUT ^= BIT3已执行
初始 时钟配置
DCOCTL = 0x40; //加快计算机速度
BCSCTL1 = 0x85; // 40-84 ~ 750KHz -- 40-85 ~1.25MHz -- a0-84 ~950KHz
BCSCTL2 = 0x00;
待机模式配置
DCOCTL = 0x00; //返回到低功耗模式
BCSCTL1 = 0x80; //减慢计算机速度
µs 数据表、我们知道 MSP430至少需要6微秒才能从待机模式唤醒(在不到6 μ s 的时间内从待机模式唤醒)。
但是、我们希望 MSP 在尝试执行下一条指令之前准备就绪。
我们通过在 BCSCTL1 = 0x85之后添加一个"额外"命令;或者通过将 MSP430以950KHz 的速度减慢来解决这个问题。
这是预期的行为、还是这种情况还有其他问题?
谢谢、
让