请教keil中的sbit

[复制链接]
3843|4
 楼主| pish 发表于 2009-8-29 08:06 | 显示全部楼层 |阅读模式
请教各位大虾,keil中是不是不能使用sbit类型的外部变量,能够怎么实现吗?
xwj 发表于 2009-8-29 09:07 | 显示全部楼层
当然可以,这样写:
bdata btemp;
sbit bit0=btemp^0;
sbit bit1=btemp^1;
sbit bit2=btemp^2;
sbit bit3=btemp^3;
sbit bit4=btemp^4;
sbit bit5=btemp^5;
sbit bit6=btemp^6;
sbit bit7=btemp^7;

这时,用btemp和bitx都能操作了。
 楼主| pish 发表于 2009-8-29 12:39 | 显示全部楼层
比如说,我在一个“LED.c”的文件中作了以下定义:
#define LED1 P1                             //LED发光二极管接口
sbit LED_price_red =    LED1^0;     //红灯,表示定价输入未完

而LED_price_red这个变量除了在“LED.c”中使用后,还要提供给“Main.c”使用,应该怎么做呢?
aozima 发表于 2009-8-29 12:42 | 显示全部楼层
本帖最后由 aozima 于 2009-8-29 12:46 编辑

在main.c中再写一次:
  1. sbit LED_price_red =    LED1^0;
或再加一个LED.h

然后把:
  1. #define LED1 P1                             //LED发光二极管接口
  2. sbit LED_price_red =    LED1^0;     //红灯,表示定价输入未完

都写入其中
让LED.c和main.c都 #include "LED.h" 即可
 楼主| pish 发表于 2009-8-29 13:17 | 显示全部楼层
谢谢!可以了,不过不知道为什么跟extern的方式不太一样哦。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

36

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部