CW 警告:C12056

[复制链接]
6245|3
 楼主| ldskendy 发表于 2008-3-20 22:22 | 显示全部楼层 |阅读模式
cw, TE, se, go, CD
IDE:&nbsp;Freescale&nbsp;CodeWarrior<br /><br />出错信息:C12056:&nbsp;SP&nbsp;debug&nbsp;info&nbsp;incorrect&nbsp;because&nbsp;of&nbsp;optimization&nbsp;or&nbsp;inline&nbsp;assembler<br /><br />代码以下:<br />void&nbsp;ccddebug(void)<br />{<br />&nbsp;&nbsp;uchar&nbsp;kv=2;<br />&nbsp;&nbsp;uchar&nbsp;temp;<br />SS:&nbsp;&nbsp;clrlcd();<br />&nbsp;&nbsp;go(0,3);<br />&nbsp;&nbsp;temp=*GATE0;<br />&nbsp;&nbsp;wchar(temp);<br />&nbsp;&nbsp;go(2,3);<br />&nbsp;&nbsp;temp=*GATE1;<br />&nbsp;&nbsp;wchar(temp);<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;while(kv!=0x07)&nbsp;&nbsp;&nbsp;//loop<br />&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;kv=key();<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;if(kv==3)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(*GATE0)--;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;go(0,3);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar(*GATE0);<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(kv==4)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(*GATE0)++;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;go(0,3);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar(*GATE0);<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(kv==5)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(*GATE1)--;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;go(2,3);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar(*GATE1);<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(kv==6)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(*GATE1)++;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;go(2,3);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;wchar(*GATE1);<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;if(kv==8)&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Save_eeprom();<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;goto&nbsp;SS;<br />&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />//&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;<br />//&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PORTB=PORTB;<br />&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;}<br />}<br />出错指示于最后一行花括号.<br /><br /><br />若取消后面两行的注释,则不会出错.<br />&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PORTB=PORTB;<br /><br />
张明峰 发表于 2008-3-21 11:42 | 显示全部楼层

试试这样

else&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;PORTB;<br />
 楼主| ldskendy 发表于 2008-3-21 21:35 | 显示全部楼层

我是想去掉那两行代码

我是想去掉那两行代码<br /><br />else&nbsp;<br />&nbsp;PORTB=PORTB;<br />
JerryBJ 发表于 2008-3-24 10:54 | 显示全部楼层

修改优化选项看看

Standard&nbsp;Setting&nbsp;-&nbsp;Compiler&nbsp;for&nbsp;HC08&nbsp;-&nbsp;Smart&nbsp;Slides&nbsp;-&nbsp;Debug&nbsp;Complexity,&nbsp;把这个滑动条往低拉。<br /><br />另外,书写程序的时候也可以写得优化一点,或者能消除此错误。<br /><br />那么多elase&nbsp;if貌似可以写成switch。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

10

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部