1楼:匿名用户
http://zhidao.baidu.***/question/344066293.html?oldq=1
能不能将单片机不同管脚放在一个数组中引用 30
2楼:匿名用户
可以。你可以把不同的口的地址放在一个数组中,然后通过间接引用访问这些地址指向的单元,就可以访问到不同的管脚。
因为不管对于口还是管脚,都对应的有个地址。
这个地址就是访问的单元。希望对你有用。
3楼:
你把问题说明白点,不明白你什么意思啊
想通过数组来控制51单片机p2口的各个引脚如何进行赋值(位定义?)
4楼:匿名用户
sbit定义的是1位变量,p2是整个8位口,本身在sfr里有地址定义的,不知道你想如何专给p2赋值,如果属这样的话:
unsigned char code dat=;
*******
p2=dat[0];就给p2^0赋值1了。
但实在不知道意义何在。
5楼:匿名用户
如:a[0]=00000010
p2 = a[0];
则 p2^1=1.
其他的p2口均为0.
怎么给单片机定义管脚
6楼:匿名用户
用keil 编程时,可以用sbit 指令定义引脚,需要放在程序的前面。如
sbit led=p1^0;
这样,在程序中就可以用led对p1.0引脚进行操作了。
如main()
{led=0;
7楼:匿名用户
单片机管脚已经定义好了的,不能自己定义。
8楼:匿名用户
你要自己定义管脚?单片机出厂时候管脚已经定义了啊
9楼:
使用sbit 标识符=p2^0 定义的就是p20
怎样把单片机的8个不同管脚定义成同一个io口
10楼:匿名用户
每个管脚属于哪个并行口的,不是自己定义的,而是由单片机自身决定的,用户是改变不了,是不可能自己定义什么的。不同的i/o口的管脚,是不可能定义成一个io口的。
在应用单片机时,可不可以在同一个管脚同时实现两个输出?
11楼:匿名用户
应该说不能。
楼上kyzy00238和814414180二位所说的可以“复用”,虽然理论上可以做到,但那必须外加一些复杂的解算电路硬件,或者,采用特殊的用法(例如串行通信时不管数码管显示,允许它乱闪;而不通信时数码管才正常显示)。
我想外加复杂硬件的做法,大概不是您所要的。而允许数码管通信时乱闪的用法也并不理想。
而且严格说,所谓的“复用”并不符合您所要求的“同时”。
12楼:匿名用户
这一点在程序上是可以实现的,不过容易发生混乱,硬件方面识别和显示可能会出现问题。
13楼:匿名用户
io口可以分时复用 不过在程序里要确保不会两者同时应用 但是串口和数码管这种应用还是分开为好
单片机引脚和管脚的区别是什么???
14楼:坠落
三极管二极管数码管的叫管脚呀,有管的才叫管脚
15楼:做而论道
坠落3399 | 一级
三极管二极管数码管的叫管脚呀,有管的才叫管脚----
这位网友回答正确。
集成电路的脚,应该叫做引脚。
有些人,是先学了管脚的说法,改不过来。
也有些人,根本就搞不清楚这两种说法有什么不同。
16楼:匿名用户
引脚就是管脚,没什么区别,个人说法不一
17楼:
就是说法不同,其实是一回事
18楼:神涟复苏
难道不是管脚被引出之后的另一个脚叫引脚嘛?难道他们的关系不是1个管脚可以对应多个引脚嘛???
单片机管脚复用的意义
19楼:惜忆泪情
复用管脚在很多cpu里都存在,这样便于开发者灵活应用有限的管脚资源。一般来说复用管脚有两重用途:
1.是普通用途的io引脚,单纯用来做电平读入或者输出;
2.是赋予一些特殊的用途比如外部中断输入甚至ad/da引脚等等,这类管脚的定义以及使用方法因不同的cpu型号而不同,很难一概而论的。
20楼:anyway中国
1、节约引脚资源,缩小芯片尺寸;
2、方便pcb设计制作;
3、编程灵活。
21楼:匿名用户
就是管脚有多种功能的意思, 例如同一个管脚根据自己的需要可以把它当普通的io使用, 可以是ad通道输入端
单片机中把某个管脚设置为输入模式,还能操作这个管脚输出高低电平吗
22楼:龙之大帝之不死
这个是不行的,因为普通的51单片机管脚的内部结构都是做死的,也就是说管脚功能是由硬件决定的,在制造的时候就已经确定,没法更改了(可以参考一下51单片机的硬件介绍)。不过pic的单片机有这个功能的。