我用的单片机是HLC908QT1,下面是我的pwm初始化程序,这个没有问题。 //---------------------------------------------------------------------------------- void PwmInit() //----------------------------------------------------------------------------------
{ TSC_TSTOP = 1; TSC_TRST = 1; TSC_PS2=0; TSC_PS1=0; TSC_PS0=1; TMOD = 1010; // 1001 TCH0 = 1; TCH1 = 1; TSC0_MS0B = 1; TSC0_MS0A = 0; TSC0_TOV0 = 1; TSC0_ELS0B = 1; TSC0_ELS0A = 1; TSC_TSTOP = 0;
}
我的问题是怎样修改TCH1改变脉冲宽度? 我自己做的附值语句如下: 当 while(TSC0_CH0F==0); TCH1 = humi_val;时,输出脉冲宽度不对,大概是50%; 当 while(TSC0_CH0F==0); TCH1 = 305;时,输出脉冲宽度完全正确。请问为什么直接负值可以,写成变量就不可了,我仿真监测我的变量的数据也完全正确。
|