我正在使用一个简单的代码在一定的延迟时间内将PIN码切换为高和低。
使用标准时钟校准命令将时钟设置为1MHz。
但在引脚上观察到的PWM输出具有不同的频率输出。
代码部分如下所示
WDTCTL = WDTPW + WDTHOLD;
DCOCTL = CALDCO_1MHz;
BCSCTL1 |= CALC1_1MHz;
BCSCTL2 &=~级;
P1DIR || BIT1;
P1OUT || BIT1;
同时(1)
{
P1OUT || BIT1;
_DELAY周期(5000);
P1OUT &=~ BIT1;
_DELAY周期(5000);
}
一个MCU的输出为140.553 Hz,而另一个MCU (部件号相同,批次相同)的输出为158.9 Hz
我测试了两个单位的DCO校准更改,以下是观察到的结果
校准值 第1单元 第2单元
CALDCO_1Mz 140.553Hz 158.9 Hz
0xD0 143.5 Hz 162.38 Hz
0xC0 136.9 Hz 154.89 Hz
由于上述变化,我们的代码中与时间相关的部分出现故障,我们观察到生产线上的高拒绝率。
请建议必要的解决方案。
TIA。