51单片机检测引脚电平变化的C语言程序

作者&投稿:泷翠 (若有异议请与网页底部的电邮联系)
51单片机 如何检测某个引脚是否为高低电平 求一个C源程序实例~

sbit GO_OUT =P3^5; //需要检测的引脚
sbit LED =P3^4; //显示led 引脚为低时候亮
void main() //主程序
{
while(1) //主循环
{
if(GO_OUT==0)
{
LED=1; //引脚为低 led不亮
}
else LED=0; // 否则led点亮
}
}

检测P3.1引脚 只要这个引脚电平有变化P2.1就取反。
----
ORG 0000H
DJNZ R7, $
MOV A, P3
MOV 20H, A
XRL A, 21H
MOV 22H, A
MOV 21H, 20H
JNB 22H.1, 0000H
CPL P2.1
SJMP 0000H

END

可以实现题目要求。

#include <reg52.h>
sbit LED0 = P0^0; sbit LED1 = P0^1; sbit LED2 = P0^2; sbit LED3 = P0^3;
sbit LED4 = P0^4; sbit LED5 = P0^5; sbit LED6 = P0^6; sbit LED7 = P0^7;
sbit LED10 = P1^0;
void main() {
LED0 = 0; LED1 = 0; LED2 = 0; LED3 = 0; LED4 = 0; LED5 = 0; LED6 = 0;
LED7 = 0;
LED7 = 1;//假设有变化

if(LED7) {
LED10 = 1;
LED0 = 1; LED1 = 1; LED2 = 1; LED3 = 1; LED4 = 1; LED5 = 1; LED6 = 1; }
}


如何设计一个触摸开关,用于单片机的\/INT1,\/INT0引脚,能否提供最简单的方...
触摸开关就是一个冲放电路,R+C 就行了,上电就给C充电,断了就是放电,用int1口 或 int0口检测电压情况就好了,当然开关电源用个电压控制的开关就好了。 用单片机引脚。 或者买这类冲放电路的芯片,这样做起来就更简单了。只说下自己想的原理,没实践过,上课时听过延时开关怎么做的。另外也...

用51单片机如何同时测2组电压信号 想用2片ADC0809,但是发现引脚不够...
其实使用一片ADC0809就可以了,可以实现八组电压的检测。你把检测的电压输入ADC08909的两个通道中,循环去读取就可以实现了。

单片机的一个IO口怎样才能实现发出数据的同时还能在同一个IO口读取外 ...
首先要做一个最小单位的延时,最好应定时器做,比如10ms,然后如果要发送数据就把端口设置为输出状态,如要发送“1”就把端口拉高,等待10MS延时,发送“0”就把端口拉低,等待10MS延时,发送数据的时候最好搞一个头码,即:起始位比如1010,在搞个结束位,中间就是数据位。至于反馈信息你可以在...

单片机如何检测一个模块输出的高电平
实时输出高低电平实际很简单,你现在的问题就是检测模块输出极时被拉低的问题。有两个办法,1. 模块输出高电平时,其内部仅仅是虚电压,可以认为是只能提供电压,不能提供电流,而在其输出低电平时,内部可以接受比较大的灌电流(即负电平时可以吸收比较大的MA级电流),那么,就可以在CPU口与模块联接的...

关于单片机读引脚写1问题
在读入端口数据时,由于输出驱动FET并接在引脚上,如果T2导通,就会将输入的高电平拉成低电平,产生误读。所以在端口进行输入操作前,应先向端口锁存器写“1”,使T2截止,引脚处于悬浮状态,变为高阻抗输入。

pic单片机的输入=1时,对应的电压是多少伏
第一:同步过零检测可以进外部中断INT引脚。第二:如果你的PIC单片机没有捕捉功能的话,是需要用到定时器和中断。你具体用那个PIC单片机(型号是什么)?有的PIC单片机有捕捉功能,用捕捉功能好用点。第三:单片机是输入直流电,不能检测负电压之类的。但如果交流电经过转换和运算放大器比较输出后,可以由...

代码是如何控制单片机管脚电平高低的?为什么1它就高电平,0它就低电平...
至于为什么要看单片机的引脚图。代码在单片机内 实际是很多的电平来表示的,只是人们为了方便理解就 用代码来指示里面所有的电平关系。一个芯片内部可以装多少电平 也就代表了 具有多大的容量。这就是为什么一般芯片更大 制造工艺越小 (即多少纳米)所具有的功能就越强大。因为能够装更多的电平。

电压多少伏单片机识别为高低电平???1伏到2伏之间单片机怎么识别?_百...
与单片机供电电压有关,5V供电的话,1V~2V一般认为是低电平。为了提供抗干扰能力,建议将低电平控制在1V以内。

51单片机引脚程序中都置低了,为何万用表一测还是输出高电平!!求解...
你是怎么测的,如果红表笔接正电源黑表笔接引脚输出,显示出来的当然是高电平,把红表笔接引脚输出黑表笔接地,没显示的话你单片机正常啊,如果有显示程序正常,那就是你单片机最小系统没处理好,

超声波传感器模块返回信号跟触发信号一模一样,没有改变
关键词 单片机AT82S51超声波传感器测量距离一、设计要求 设计一个超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。要求测量范围在0.10-3.00m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。 二、设计思路超声波传感器...

宁蒗彝族自治县17673064981: 51单片机 如何检测某个引脚是否为高低电平 求一个C源程序实例 -
斗慧清肺: sbit GO_OUT =P3^5; //需要检测的引脚 sbit LED =P3^4; //显示led 引脚为低时候亮 void main() //主程序{while(1) //主循环{if(GO_OUT==0){LED=1; //引脚为低 led不亮}else LED=0; // 否则led点亮}}

宁蒗彝族自治县17673064981: 51单片机用c语言编程判断各i/o口的是否有高低电平,应该怎样写程序? -
斗慧清肺: 就直接用 if (P_^_==0) ……这里的_表示数字,51有四个端口,各有八个,你随便用啊

宁蒗彝族自治县17673064981: 89C51程序中如何判断引脚的高低电平
斗慧清肺: 如果是单个引脚的话,可以这么写, switch (P2_1) { case 0: 语句(你要实现的功能);break; case 1: 语句;break; }

宁蒗彝族自治县17673064981: 单片机C语言,用什么语句检测某输入口的电平是否发生过变化呢? -
斗慧清肺: 如果是查询检查,用 if 条件判断语句,由于你不是只检测高低电平,而是要检测变化,所以要定义一个参考变量记忆当前电平状态. unsigned char oldP1; //原端口状态 if (oldP1!=P1) //不相等没变化{oldP1!=P1TIME0++ }

宁蒗彝族自治县17673064981: 求写一段简单的51单片机C语言代码 -
斗慧清肺: 单片机检测高电平.1、可以用外部中断,外接激光传感器最好用普通光耦隔离一下,顺便改成低电平触发单片机中断.然后用位移指令移动跑马灯,然后计数值加1. 2、可以用循环检测,也建议用光耦隔离先,在MAIN里面不断检测P00,发现变化后,再次检测以便确认,确认后同样位移一下跑马灯,然后计数加1.

宁蒗彝族自治县17673064981: C语言写出跳变沿计数的程序 -
斗慧清肺: 就拿51单片机举例吧 用外部中断来检测电平的变化,沿触发或者电平触发都可以设置.用定时器来计算一定时间内的变化数量.外部电平变化触发外部中断,然后中断里一个变量加1;定时器中断读取变量的值,从而可以知道计时这段时间里有多少次电平变化.

宁蒗彝族自治县17673064981: 我想让51单片机三个脚轮流输出低电平,该怎么写C程序 -
斗慧清肺: main() { while(1){ P1 = 254; delay(); P1 = 253; delay(); P1 = 251; delay(); } }

宁蒗彝族自治县17673064981: 如何用C检测单片机IO口电平变化 -
斗慧清肺: 首先,要知道单片机是多大的晶振,然后指令周器是等于多少个机器周期.个样才能算出一条指令的执行时间.首先,用C写的,到底他编译出来的汇编语句是什么也要搞清楚.当扫描用户程序结束后,可编程逻辑控制器就进入输出刷新阶段.在此期间,CPU按照I/O映象区内对应的状态和数据刷新所有的输出锁存电路,再经输出电路驱动相应的外设.这时,才是可编程逻辑控制器的真正输出.

宁蒗彝族自治县17673064981: 52单片机,如何检测某输入端口是否有低电平输入 -
斗慧清肺: 需检测的引脚连接外部中断,如有多个则作为多通道的与门输入,与门输出连接外部中断 外部中断设置为下降沿触发,中断触发后进入中断函数判断是由那个引脚引发中断

宁蒗彝族自治县17673064981: 51单片机 如何检测某个引脚是否通过3个低电平 求一个C源程序实例 -
斗慧清肺: 你应该是说在某一确定时间段内,通过三次低电平吧?这个不用简单用计数器实现哦

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网