想通过数组来控制51单片机P2口的各个引脚如何进行赋值(位定义?)

sbita[8]=P2;是否就可以用a[0]控制P2^1a[1]控制P2^2等等如果不合理如何方便的实现这样的控制... sbit a[8]=P2;
是否就可以用a[0]控制P2^1 a[1]控制P2^2等等 如果不合理 如何方便的实现这样的控制
展开
 我来答
wannenggong9559f
生活家

推荐于2017-10-02 · 关注于个人成长
知道大有可为答主
回答量:3691
采纳率:82%
帮助的人:662万
展开全部
sbit定义的是1位变量,P2是整个8位口,本身在sfr里有地址定义的,不知道你想如何给P2赋值,如果这样的话:
unsigned char code dat[]={0x01,0x11,0x10**********};
*******
P2=dat[0];就给P2^0赋值1了。
但实在不知道意义何在。
追问
我是学c++的  刚接触单片机  焊了个最小系统 想弄一个流水灯 本来享用指针来做 刚刚查了资料 发现 都是用_cror_()函数或者 _crol_()函数做的  之前的想法真是太蠢了谢谢你啊
追答
其实C51要简单些,随便百度一段单片机流水灯程序一看就行,用不到库函数的,祝成功!
wgq930
2013-09-05 · TA获得超过2262个赞
知道大有可为答主
回答量:4926
采纳率:51%
帮助的人:1942万
展开全部
如:a[0]=00000010
P2 = a[0];
则 P2^1=1.
其他的P2口均为0.
追问
要是这样我就直接给p2赋值了  我想通过简便的赋值 来方便对P2口各引脚进行控制
追答
i = 0x02;
P2=i ;
和上面是一个结果。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式