发布网友
共3个回答
热心网友
展开1全部keil c51 sbit为什么放到主函数外面
(http://zhidao.baidu.com/link?url=zrcL8wSdkPKJaoWDRjIHqKU5oaacOfTAe-PQmHJAna7rcrnXAFdjsaHQepZULl8fmd2DN4TGAL1En8fITLd5yK)
sbit声明的部分是编译器预处理的部分,就是为了给寄存器(位或字节)取个别名,是在函数没有编译之前必须完成的,放在主函数中就是编译中要处理的内容了,对于那些符号地址,C编译器不认识,有的名字也不允许(如P1.1),必须在编译之前进行替代,就是sbit声明,替代的内容为相应单片机寄存器的头文件里边定义的,如REG51.H
热心网友
sbit 这个东西相当于标准C语言里面的volatile,也就是定义了一个寄存器,地址是被指定且不能变。至于这句话的位置,LZ可以去看看sbit的定义以及非挥发性变量就知道了。
热心网友
写程序要细心的 ,你的主函数 main写错了你没发现吗?