使用proteus同时输出方波和三角波的时候出问题了
[复制链接]
使用proteus进行基于msp430的仿真时发现单独输出三角波没问题,但是方波和三角波一起输出的时候三角波就变了,请问是什么原因
void triangular(void)//三角波
{
char i;
for(i=0;i<255;i++)
{
P4OUT=i;
delay_us(195);
}
for(i=255;i>0;i--)
{
P4OUT=i;
delay_us(195);
}
}
void square(void)//方波
{
P1OUT=51;
delay_ms(50);
P1OUT=255;
delay_ms(50);
}
void main(void)
{
unsigned int i;
WDTCTL=WDTPW+WDTHOLD;//停止看门狗功能
BCSCTL1&=~XT2OFF;//使TX2有效,TX2上电时默认为关闭
do
{
IFG1&=~XT2OFF;//清除振荡器失效标志
for(i=0xff;i>0;i--);//延时,待稳定
}
while((IFG1 & OFIFG)!=0);//振荡器失效标志
BCSCTL2 |= SELM1;//使MCLK=XT2
P4DIR=0XFF;
P1DIR=0XFF;
while(1)
{
triangular();
square();
}
}
|