|
使用proteus進(jìn)行基于msp430的仿真時(shí)發(fā)現(xiàn)單獨(dú)輸出三角波沒問題,但是方波和三角波一起輸出的時(shí)候三角波就變了,請問是什么原因
1.png (83.97 KB, 下載次數(shù): 45)
下載附件
2023-3-22 15:03 上傳
單片機(jī)源程序如下:
- 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上電時(shí)默認(rèn)為關(guān)閉
- do
- {
- IFG1&=~XT2OFF;//清除振蕩器失效標(biāo)志
- for(i=0xff;i>0;i--);//延時(shí),待穩(wěn)定
- }
- while((IFG1 & OFIFG)!=0);//振蕩器失效標(biāo)志
- BCSCTL2 |= SELM1;//使MCLK=XT2
- P4DIR=0XFF;
- P1DIR=0XFF;
- while(1)
- {
-
- triangular();
- square();
- }
- }
復(fù)制代碼
|
|