导航:首页 > 操作系统 > 单片机计数器一键控制发光二极管

单片机计数器一键控制发光二极管

发布时间:2023-04-29 00:53:58

1. 单片机控制发光二极管闪烁

#include<reg51.h> // 头文件 ;
sbit LED =P0^7; // 定义LED接至P0.7 ;
#define uint unsigned int
void delay(uint x); // 声明延时函数;
/*主函数*/
void main()
{
while(1)
{
LED = 0; // 输出低电平,点亮LED;
delay(50); // 延时;
LED = 1; // 输出高电平,熄灭LED;
delay(50); // 延时;
}
}
/*延时函数*/
void delay(uint x)
{
uint i,j;
for(i=0;i<x;i++)
for(j=0;j<1200;j++);//大约10 ms;
}

2. 单片机是怎样控制发光二极管的亮与不亮

1.LED的阳极接地,阴极接单片机IO口,那么IO口高电平,LED灭,低电平,LED亮
2.LED的阴极接地,阳极接单片机IO口,那么IO口高电平,LED亮,低电平,LED灭

3. 怎么用单片机驱动MOS管控制发光二极管的亮灭

用单片机的输出口连接MOS管的控制极,MOS管与发光二极管串联后接到电源。用程序使单片机输出口的相应位置0或置1,即可控制发光二极管的亮灭。

4. 单片机一个按键控制一个发光二极管

以下是用C语言实现的:

#include<reg51.h>

sbit KEY=P1^0;
sbit LED=P1^1;

void delay();

void main()
{
while(1) //不断循环
{
if(KEY==0) //判断键盘是否被按下
{
delay(); //调用延时函数,作用消抖
if(KEY==0) //再次读键盘,以判断刚才判断到的是否为抖动
LED=~LED; //取反P1.1电平状态,也就是改变发光管的状态
}
}
}

void delay()
{
unsigned int i=50000;

while(i--); //不断循环的自减,直到i变为0
}

以下是用汇编实现的:

ORG 0000H
AJMP MAIN ;跳转到主程序
ORG 0100H
MAIN:JB P1.0,MAIN ;判断P1.0是否被按下,若不是则再判断,是则向下执行
CALL DELAY ;调用延时子程序,延时一段时间,用于键盘消抖
JB P1.0,MAIN ;再次判断按键状态,用于判断是否为抖动,不是则向下执行
CPL P1.1 ;取反P1.1,也就是改变一次发光二极管的状态
JNB P0.0,$ ;等待按键释放(等待P1.0电平变高)
AJMP MAIN

DELAY:
MOV R0,#200
LOOP: MOV R1,#200
DJNZ R1,$
DJNZ R0,LOOP
RET
END

这些都是刚刚写好的,希望能令你满意,有问题可以hi我!

5. c51单片机按键控制二极管亮灭

做按键用的脚通过一个常开按钮开关接地,按下开关就使这个脚接地,即电压为0,在程序中要先将此脚写1再判断此脚是否为0,为0时说明已经按下了此开关,再用程序延时10-20mS消抖,再判一次,如果还是0说明不是干扰,就执行控制二极管的程序,点亮二极管的脚最好用低电平驱动,就是不亮时写1,需要亮时写0,原理是这样,用C还是用汇编都一样,很简单

阅读全文

与单片机计数器一键控制发光二极管相关的资料

热点内容
iis如何安装php 浏览:791
k5嗜血魔键安卓怎么调好用 浏览:834
建行app中如何添加银行卡 浏览:281
简便算法100点 浏览:161
如何创新我的世界服务器 浏览:881
战地怎么看服务器地址 浏览:348
vue怎么打包放上服务器 浏览:165
为什么安卓服夏日活动没有兔子头 浏览:894
pubg为什么显示服务器连接失败 浏览:650
阿里云扫码登录服务器 浏览:971
化学基础pdf 浏览:896
51单片机晶码管 浏览:281
怎么查服务器假死原因日志在哪看 浏览:277
扫描pdf文件 浏览:926
解压密码百度云在线解压 浏览:767
传播学算法推荐 浏览:749
我的世界网络游戏如何查找服务器 浏览:258
安卓和苹果通讯录怎么互传 浏览:203
怎么打开隐私与应用加密的菜单 浏览:416
我的世界服务器小游戏的地址大全 浏览:578