问题描述
- 51单片机编程sbit与#define的区别
-
在keil编程中:
#define dula P2^6不对
而必须sbit dula=P2^6;
请问为何?
解决方案
#define是宏定义,定义的东西编译时由编译器进行宏展开
sbit是外部位声明,就是单片机的外部端口
bit是内部20H-2FH的可寻址位定义或着是声明
以上指令都有固定的用途
解决方案二:
sbit就是定义一个标志位,也叫位变量,比如一个8位的寄存器就可以看作八个位变量。
#define就是替代或者替换的意思,
时间: 2024-10-21 11:20:03