标题:
[求助]CodeWarrior警告说possible loss of data
[打印本页]
作者:
commandoccz
时间:
2008-4-22 21:39
标题:
[求助]CodeWarrior警告说possible loss of data
#pragma CODE_SEG NON_BANKED
void interrupt 22 ATD0_Interrupt(void)
{
if(ATD0STAT1_CCF0 & 0)
{
AD_wData0 = ATD0DR0; //Read out the Result Register
//PORTB = (byte)AD_wData0;
SCITx((byte)AD_wData0);
PWMDTY1= AD_wData0*PWMPER1/255;
/*把AD采样的0-FF的范围转换城PWMDUTY的范围*/
}
if(ATD0STAT1_CCF1)
{
AD_wData1=ATD0DR1;
PORTB = (byte)AD_wData1;
PWMPER1= AD_wData1;
}
}
#pragma CODE_SEG DEFAULT_ROM
[此贴子已经被作者于2008-4-22 21:39:40编辑过]
作者:
commandoccz
时间:
2008-4-22 21:41
红色字就是警告指向的地方,请问这个是为什么呢?
是因为我再频繁写PWM寄存器吗?
作者:
康桥人
时间:
2008-4-22 22:53
一般情况下,警告如果不多就可以不用管它,
作者:
commandoccz
时间:
2008-4-23 08:35
呵呵~~只是想知道是怎么产生的
作者:
strongchen
时间:
2008-4-23 09:46
一般是数据转换的问题,有可能丢失某些数据位。比如乘除法的溢出,字到字节的转换等等。
作者:
康桥人
时间:
2008-4-23 12:52
还有char类型的数拷贝int型的数,这种情况,注意一点就行了!
作者:
zephanshaka
时间:
2008-7-24 20:37
楼上两位说的很对。应该是赋值时数据类型不匹配。
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/)
Powered by Discuz! 7.0.0