51单片机中 SDA 重复定义 怎么解决

来源:百度知道 编辑:UC知道 时间:2024/06/22 06:29:10
我定义IIC中
sbit sda=P3^4;
sbit scl=P3^3;

调试发现I2C.H(8): error C231: 'sda': redefinition
I2C.H(9): error C231: 'scl': redefinition

但是我仔细检查并没有在其他地方定义过sda和scl

而且我的P3^3、P3^4没有开外部中断啊

改成
#define sda P3_4
#define scl P3_3
试试,但要保证已经用过#include<at89x51.h>

这样解决:
x_sda
y_sda
iic_sda
lcd_sda
...

如果有头文件的话,试试这样:
比如头文件名叫IIC.h 吧。这样写
#ifndef IIC_H
#define IIC_H
.
.
(这之间是头文件内容)
.
.
#endif