请问怎样提取P0口输出的状态值?

2011年05月15日 22:05    发布者:suzhijun2005
本人自学C51语言不久,好多都不懂。请问各位大虾,怎样提取P0口输出的状态值?假设P0口的八个脚为输出口,而且在每一次循环中P0口的值都是变化的。(P0口的值有可能是0xfe、0Xfd、0xef等等)。我要求在每次循环中提取一次P0口的当前值,来作比较是不是等于0xfe,如果是执行相应代码。我用C语言是这样写的:if(P0==0Xfe).....;但我发觉提取出来的P0口的值并不是P0口的当前值,而是ins值。(注:在Keil  parllel Port 0小窗口里有两个值一个为P0值而另一个为ins值。在网上得知P0:一行是p0输出的数据,ins:一行是从P0输入的数据。)我用了不同方法都没有办法提取出p0口输出的当前状态值,每次提取出的值都是ins的值。请问怎样才能提取出p0口当前值??我用汇编语言就可以提取出正确的PO口当前值。

网友评论

suzhijun2005 2011年05月16日
真的冷清!!!!!
ssddss5678 2011年05月18日
就那样读啊
w47553112 2011年05月24日
读出来 不就是了嘛?
ytz8341 2011年06月03日
在Keil  软件中,仿真时调出端口状态即可。
eastljd 2011年06月12日
直接读取是不正确的,输出值是之前送出的数,这个应该是已知的。P0输出值可先赋予一个变量,再读取变量的值就行了。