PIC强制转换问题

[复制链接]
2679|2
 楼主| zhbwgh 发表于 2008-1-2 19:06 | 显示全部楼层 |阅读模式
#include&quot;pic.h&quot;<br />bit&nbsp;bintemp;<br />void&nbsp;main(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;unsigned&nbsp;int&nbsp;bindata=0x697d;<br />&nbsp;&nbsp;&nbsp;&nbsp;unsigned&nbsp;char&nbsp;i,disp;<br />&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;i&lt16;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bintemp=(bit)(bindata&0x8000);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(bintemp)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{disp&lt&lt=+1;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{disp&lt&lt=1;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /><br />编译的时候通过,<br />但是我看汇编过来的程序并没有翻译成功。<br />看了一些资料,说,要最低位才能转换成功,<br />我改成bintemp=(bit)(bindata&0x0001);结果同样不对,&nbsp;<br />我看变量窗口提示我,bintemp为restricted&nbsp;memory.请教各位,如何做。<br />接触PIC不久,希望大家指教。
yewuyi 发表于 2008-1-2 19:31 | 显示全部楼层

~~

void&nbsp;main(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;unsigned&nbsp;int&nbsp;bindata=0x697d;<br />&nbsp;&nbsp;&nbsp;&nbsp;unsigned&nbsp;char&nbsp;i,disp;<br />&nbsp;&nbsp;&nbsp;&nbsp;for(i=0;i&lt16;i++)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(bindata&0x8000)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{disp&lt&lt=+1;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{disp&lt&lt=1;}<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br />
 楼主| zhbwgh 发表于 2008-1-3 21:38 | 显示全部楼层

PIC强制转换问题

呵呵&nbsp;确实简单&nbsp;谢了&nbsp;楼上
您需要登录后才可以回帖 登录 | 注册

本版积分规则

17

主题

51

帖子

0

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