在51单片机c语言编程中如何用sbit建立数组?

在我编写51单片机c语言程序时遇到这样一个问题,一下代码

sbit floorled1 = P1^0;
sbit floorled2 = P1^1;
sbit floorled3 = P1^2;
sbit floorled4 = P1^3;

这样编写显然很麻烦,在后面使用的时候我不得不编写更多的代码
一旦增加或减少floorled时,大量代码需要更改。

我尝试这样编写

sbit floorled[4];

可是不行!

请问高手有没有更好的解决办法?

第1个回答  2014-01-03
首先申明一下、新手一枚、我也遇到同样的问题、说个比较笨的办法、用的时候直接给P1赋值、单片机初始时所有i/o口都为高电平,比如你想要floorled1=0;你就写P1=0xfe;floorled2=0;你就写P1=0xfd;floorled1=0;floorled2=0;你就写P1=0xfb;个人见解、谢谢!!!