㈠ 单片机 8个LED灯随机闪烁怎么做
1、首先在电脑中新建项目:Keil uVision4 51单片机LED闪烁编程,如下图所示。
㈡ 51单片机的八个LED循环点亮,如何写代码
// 51单片机控制八个发光二极管 左右循环。
#include<reg52.h>改源
#define uchar unsigned char
#define uint unsigned int
unsigned char TAB[]= {0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff}; // 改变这里 LED 各种花样
uchar t,i;
void main()
{
TMOD=0x10;
TH1=(65535-50000)/256; // 50ms一次
TL1=(65535-50000)%256;
EA=1;
ET1=1;//开定时器袭辩1中核禅态断
TR1=1;//启动定时器1
t=0;
i=0;
while(1)
{
}
}
void timer1() interrupt 3
{
TH1=(65535-50000)/256; // 50ms一次
TL1=(65535-50000)%256;
t++;
if(t==20)
{
t=0;
P2=TAB[i];
i++;
if(i==18) { i=0;}
}
}
㈢ 单片机C语言如何实现8个LED流水灯来回流动
1、可以通过左移函数_crol_()和右移函数_cror_()来实现LED等的来回流动。
2、具体实现方法可以参考如下程序:
2、单片机又称单片微控制器,它不是完成某一个老笑逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。
3、单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。
㈣ 怎么利用单片机控制八个led灯
1:首先设定一个变量i,可以是从0到3循环的变源樱化,
2:再检测一个经过消抖处理的按键,按一下,即i+1
3:当i值为各个值时,执行相应的变换花样。
流水灯参考程序
#include
#include
#define uchar unsigned char
uchar j,tmp;
void deay(unsigned int ms)
{
uchar t;
while(ms--)
for(t=0;t<12;t++);
}
void main()
{
P1=0xff;
delay(50);
temp=0xfe; //(led接在P2.3~P2.6)
for(j=0;j<4;j++)
{
P1=temp;
delay(50);
temp=_crol_(tmp,1);
}
P1=0xff;
while(1);
}
㈤ 单片机怎么实现一个开关控制八个灯按一下亮一个按八下八个灯都亮汇编语言程序
用一个寄存器做变量就可以。
假如按键是一个开个,接在P1.0,八个灯在P0,低电平灯亮
程序是这样的
MOV 30H ,#00
LOP :
SETB P1.0
JNB P1.0, PRESS
AJMP LOP
PRESS:
INC 30H
MOV A,30H
CJNE A,#9,L_NEXT
MOV 30H,#1
L_NEXT:
JNB P1.0,$
MOV A,30H
CJNE A,#1 ,LED1_ON
CJNE A,#2, LED2_ON
CJNE A,#3, LED3_ON
CJNE A,#4, LED4_ON
CJNE A,#5, LED5_ON
CJNE A,#6, LED6_ON
CJNE A,#7, LED7_ON
CJNE A,#8, LED8_ON
LJMP LOP
LED1_ON: MOV P0,#0FEH //亮一个灯
LJMP LOP
LED2_ON: MOV P0,#0FDH //亮一个灯
LJMP LOP
LED3_ON: MOV P0,#0F8H //亮一个灯
LJMP LOP
LED4_ON: MOV P0,#0F0H //亮一个灯
LJMP LOP
LED5_ON: MOV P0,#0E0H //亮一个灯
LJMP LOP
LED6_ON: MOV P0,#0D0H //亮一个灯
LJMP LOP
LED7_ON: MOV P0,#080H //亮一个灯
LJMP LOP
LED8_ON: MOV P0,#00H //亮一个灯
LJMP LOP
㈥ 使用单片机I/O口控制8只LED灯。 1)点亮8个中的的第任意个LED灯。 使任意一个或多个LED灯闪烁
举个简单的例子,8个LED灯的正级分别接在P1.0到P.7上面,负极分别接在P2.0到P2.7上面,
P1 = 0xff; (P1口全部高电平) P2 = 0x00; (P2口全部低电平),此时电流通过P1口经LED流向P2口,8个灯全部点亮,如果P1不变,P2 = 0XFF; 此时由于P1与P2的接口全部是高电平,没有电压差也就没有电流,LED全部熄灭,如果想让某一个灯点亮,可以根据8421法则,P2.7 P2.6 P2.5 P2.4是高8位,P2.4 P2.3 P2.2 P2.1 P2.0是低8位
P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0
8 4 2 1 8 4 2 1
当p1 = 0xff; p2 = 0xfe的时候,就是P2.0那个小灯点亮,其他7个灭,p2 = 0xfe的这个F就是8+4+2+1 =15,对应16进制里的f, 同理E=8+4+2+0 =14,对应16进制里的e。
闪烁的话需要用到定时器,时间到了把当前P2对应的引脚取反一下就行了,比如当前P2.0 = 1; 定时器时间到了以后 ~P2.0 当然实际写程序的时候不能直接这么写,自己多复习下吧