打印
[51单片机]

这几句话为什么通不过编译?

[复制链接]
687|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liwei0125|  楼主 | 2019-1-22 14:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在给51单片机写程序中发现的,我简化了一下,第一个程序编译没问题,第二个程序用了sbit,就通不过编译了,为什么?
#include<at89x52.h>
main()
{
P1_7=0;
}

#include<at89x52.h>
sbit LED = P1_7;
main()
{
LED=0;
}

相关帖子

沙发
ningling_21| | 2019-1-22 16:05 | 只看该作者
把P1_7 改为 P1^7

使用特权

评论回复
板凳
liwei0125|  楼主 | 2019-1-22 16:24 | 只看该作者
谢谢,这样真的可以了,还想问下,为什么下面这样写也通不过编译呢?
#include<at89x52.h>
main()
{
P1^7=0;
}

使用特权

评论回复
地板
airwill| | 2019-1-22 19:50 | 只看该作者
这个位变量定义的 ^ 符号只能在定义的时候使用,  到了下面.
P1^7=0;
编译器会认为是异或运算了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

69

帖子

0

粉丝