请问51单片机怎么才能判断电位的高低?

如题,不一定要程序,只要一个思路就可以了。如果有程序的话最好是给汇编的,因为只学过这种。
我可能没表达清楚,我的意思不是高电平或低电平的判断,而是要进行无级判断,比如判断一个电位是1,0.8,0.7?

判断I/O口的电位,用汇编指令这样写:

假如判断P1.0脚的电位;

SETB P1.0
JNB P1.0,DIDIANPING //如果是低电平,转移到:DIDIANPING
AJMP GAODIANPING //如果是高电平,转移到:GAODIANPING

DIDIANPING:
.... //低电平处理
RET
GAODIANPING:
.... //高电平处理
RET

思路就是:先置位成高电平,再读取那个I/O口,判断是高还是低
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-28
如S51:
将信号接到P1到P3任一引脚,定义变量指向那个引脚,如:P1^1=x,然后按条件操作一串指令,如若是高则使哪个引脚输出高或低即可,反之亦然。
(P0口也可以,不过要加上拉电阻。)
第2个回答  2009-05-08
只能用A/D本回答被提问者采纳
第3个回答  2009-04-28
这样的问题也拿出来问,简值不是中国人!
第4个回答  2009-04-28
白痴问题~

请问51单片机怎么才能判断电位的高低?
思路就是:先置位成高电平,再读取那个I\/O口,判断是高还是低

51单片机中高低电平问题
通过PNP三极管放提高IO灌电流能力(50mA直接加在三极管上会导致发热)

单片机低电平上下限是多少?高电平上下限是多少?
0.3VCC---0V为低电平,0.7VCC---VCC为高电平,一般来讲,对于5V电源的单片机来说,低电平在1.3V以下,高电平在3.7V以上,数字信号尽量不要使用1.3---3.7V这个区间,这有可能会造成单片机无法识别或识别错误。

求51系列单片机引脚高低电平的电压分别是多少
51系列单片机引脚电平与TTL电平兼容,也就是输入高电位大于2.0V,低电位小于0.8V,输出高电位大于2.4V,低电位小于0.4V。一般情况下,若电源电压为5V,输出高电位电压也是5V左右,低电位电压接近0V.

关于数字信号
1、要看哪里的数字信号哦,例如用51单片机时用+5V表示高电平,用-5V表示低电平 2、分辨高低电平呢,这是单片机或者PC的事,是有跟软件相结合的,看它的采样点进行采样,有采样点就会有一个采样固定时间,也就是采样周期 而11连续两个高电平时,在两个时间周期内电位理论上是要一直处于高电位,但是...

51单片机IO读高电平
因为单片机的I\/O口在读信号时只能读低电平(你看看书上介绍IO口的部分就会明白,他们是集电极开路方式)所以当把某个IO设为低电平时,内部三极管导通相当于直接把外部信号接地了,所以出现你的这个现象,要是外部信号是高电平的话应该加个反向器使起要动作时发低电平,而IO应该设为高电平读取,另外把IO...

单片机中,用sbit定义位变量,sbit P11=P1�0�31,那P1端口其他引脚的...
如果你没有对P1的其他位进行操作,那么就都是高。因为51单片机的I\/O支持位寻址,你在对某个位操作的时候并不会影响其他位。如果你使用的是不支持I\/O位寻址的单片机,又要操作位的话,可以这样使用:(假设是8位的P0口)置.0位为高 P0=P0|0X01; 置0位为低 P0=P0&0XFE; |是或运算, &是...

51单片机位选的问题
具体是哪段要亮哪段就是1,。关于位选,对共阴极数码管来说,位选线连接的其实是每一个数码管段发光二极管的负端,要是段亮,就要使发光二极管导通,段线写了1,位线再写个0,这样就导通了某一位的数码管。其他不需要亮的位就写1,这样发光二极管没有电位差,就不亮了。其实很简单的。

单片机上电高电平怎么处理?我想上电是低电平,可是在程序里即使上电处理...
单片机输出一般是“开漏极”或“开集电极”的,也就是说,在刚上电的瞬间或复位期间,单片机cpu在“尚未正常工作”的时候,输出晶体管处于关断状态,这时由于上拉电阻或其它回路的电流会使电位升高,所以表现为高电平。如果要上电处于低电平,可以使用三极管转换或光电耦合转换。供参考。

51 单片机 P0 P1 P2 P3 默认电平
寄存器是RAM,相当PC中的内存。上电后,寄存器中,P0~P3为0FFH,SP为07H外,其它 都为00H

相似回答