當前位置:首頁 » 編程語言 » 八個燈同時亮的c語言程序
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

八個燈同時亮的c語言程序

發布時間: 2022-06-25 23:47:54

① 單片機c語言,將8個燈依次點亮(被點亮的繼續亮),然後再依次熄滅,(在沒有熄滅完時熄滅的保持滅)

其次,我建議還是自己嘗試寫一寫,這個不難,我給你個思路
首先定義變數類似於P1_2 = P1^2這種,先把這八個管腳全部定義好,之後給個for循環,讓P1(假設的你LED燈連接的是P1口)口的P1^0~P1^7相關標志位依次等於0或者1(0還是1需要看你在LED等上給的是高電位亮還是低電位亮),之後再給個for循環,五次的循環,全部P1口置為1(假設高電平LED亮),之後設置P1口全為1,再讓P1口的相關標志位置為0,再置為0的時候可以加個延時

② 單片機控制8個燈依次亮,全亮了,再依次滅的c語言流程圖,順便加上解釋,不然看不懂

1、創建項目,如圖所示。

③ 單片機流水燈C語言程序(8個燈,依次點亮每個燈,延時500MS)

單片機流水燈C語言程序的源代碼如下:

#include //51系列單片機定義文件

#define uchar unsigned char //定義無符號字元

#define uint unsigned int //定義無符號整數

void delay(uint); //聲明延時函數

void main(void)

{

uint i;

uchar temp;

while(1)

{

temp=0x01;

for(i=0;i<8;i++) //8個流水燈逐個閃動

{

P1=~temp;

delay(100); //調用延時函數

temp<<=1;

}

temp=0x80;

for(i=0;i<8;i++) //8個流水燈反向逐個閃動

{

P1=~temp;

delay(100); //調用延時函數

temp>>=1;

}

temp=0xFE;

for(i=0;i<8;i++) //8個流水燈依次全部點亮

{

P1=temp;

delay(100); //調用延時函數

temp<<=1;

}

temp=0x7F;

for(i=0;i<8;i++) //8個流水燈依次反向全部點亮

{

P1=temp;

delay(100); //調用延時函數

temp>>=1;

}

void delay(uint t) //定義延時函數

{

register uint bt;

for(;t;t--)

for(bt=0;bt<255;bt++);

}

(3)八個燈同時亮的c語言程序擴展閱讀

51單片機流水燈的源代碼如下

#include<reg51.h>

#include<intrins.h>

voiddelay(inta)

{

inti;

while(a--)for(i=0;i<110;i++);

}

main()

{

inti;

while(1)

{

P0=0xfe;

for(i=0;i<8;i++)

{

P0=_crol_(P0,1);

delay(500);

}

}

}

④ 在51單片機中用c語言寫程序實現用一個按鍵控制8個燈的亮和滅(按下按鍵燈亮,按下按鍵燈滅)

比如你的8個燈連在 P0口,如果是陰極的

你只要先定義

sbit P0^0=LED0;

.....一定定義下去

然後再定義一個按鈕

比如P1.1

sbit P1^1=key;

代碼里寫

while(true)
{
if(key==1)
{
LED0=0;
LED1=0;
..//把你要亮的燈置0就行了。陽極的話置1
}
}

⑤ 用c語言編寫單片機流水燈程序,(8個發光二極體從左至右循環點亮)

#include<reg51.h>

voiddelay(void)

{

unsignedinti,j;

for(i=0;i<200;i++)

for(j=0;j<1000;j++)

;

}

voidmain(void)

{

while(1)

{

P3=0xfe;//第一個燈亮

delay();//延時

P3=0xfd;//第二個燈亮

delay();

P3=0xfb;//第三個燈亮

delay();

P3=0xf7;//第四個燈亮

delay();

P3=0xef;//第五個燈亮

delay();

P3=0xdf;//第六個燈亮

delay();

P3=0xbf;//第七個燈亮

delay();

P3=0x7f;//第八個燈亮

delay();

}

}

(5)八個燈同時亮的c語言程序擴展閱讀

單片機C語言16種方式流水燈

voidmain()

{

while(1)

{

P1=0xfe;//點亮第一個發光管

Delay(5000);

P1=0xfd;//點亮第二個發光管

Delay(5000);

P1=0xfb;

Delay(5000);

P1=0xf7;

Delay(5000);

P1=0xef;

Delay(5000);

P1=0xdf;

Delay(5000);

P1=0xbf;

Delay(5000);

P1=0x7f;//點亮第八個發光管

}

}

⑥ 如何用C語言編寫讓8個小燈齊亮齊滅的程序~!

首先小燈是共陰還是共陽的?
假設共陰的
#include<reg52.h>
void main()
{
P0 = 0xff; //亮
// P0 = 0x0; //都暗

while(1);
}

⑦ 單片機控制8個燈依次亮,全亮了,再滅的c語言流程圖和程序,順便加上解釋,不然看不懂

#include<reg51.h>
#defineucharunsignedchar
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
main()
{
uchari,led;
while(1)
{
led=0xfe;
for(i=0;i<8;i++)
{
P0=led;
delay(200);
led=led<<1;
}
P0=0xff;
delay(200);
}
}

⑧ 類似流水燈程序,c語言編程,一共8個燈

我不知道你的點燈和滅燈函數是什麼,所以隨便取了一個,思路大概就是這樣
void
main()
{
int
pull[8]={0};
int
push[8]={1,2,3,4,5,6,7,8};
int
flag=0;
int
i=0;
while(1)
{
if(flag==0)
{
for(i=0;i<8;i++)
{
pull[i]=push[i];
push[i]=0;
light(pull[i]);//點亮pull[i]數組裡面存放的燈一秒
turn(pull[i]);//滅pull[i]數組裡面存放的燈一秒
}
flag=1;
}
else
{
for(i=0;i<8;i++)
{
push[i]=pull[i];
pull[i]=0;
light(push[i]);//點亮push[i]數組裡面存放的燈一秒
turn(push[i]);//滅push[i]數組裡面存放的燈一秒
}
flag=0;
}
}
}

⑨ 8個led燈編程

8個LED流水燈依次循環亮的C語言程序,問題詳細內容為:我用的是PROTUSE做的模擬程序,想讓這8個流水燈依次亮從P0到P7口要它的C語言程序可以在KEILC51裡面運行的,希望在每句C語言後面有個解釋不用WHILE和for語句i高分懸賞我這里有個程序希...我用的是PROTUSE做的模擬程序,想讓這8個流水燈依次亮,從P0到P7口
要它的C語言程序可以在KEIL C51裡面運行的,希望在每句C語言後面有個解釋,
不用 WHILE和for語句。
我這里有個程序 希望能有個和它作用相同的程序
#include <reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
void DelayMS(uint x)
{
uchar i;
while(x--)
{
for(i=120;i>0;i--);
}
}
void main()
{
P0 = 0xFE;
while(1)
{
P0 = _crol_(P0,1);
DelayMS(150);
}
}