導航:首頁 > 操作系統 > 單片機8個led燈交替閃爍的程序

單片機8個led燈交替閃爍的程序

發布時間:2022-09-08 02:17:53

㈠ 8個LED指示燈循環閃爍的程序(單片機

1:設置一個變數i,它可以從0循環到3

2:檢測一個已取消緩沖的鍵。按「+1」

3:當I值為每個值時,執行相應的模式。

水量燈參考程序

#include

#include

#定義uchar無符號字元

Ucharj,溫度;

無效延遲(無符號整型ms)

Uchart;

(女士)

對於(t = 0;T < 123;T + +);

Voidmain()

P1=0XFF;

延遲(500);

Temp=0xfe;//奇怪,led連接在P2.3~P2.6

對於(j = 0;J < 4;J + +)

P1=temp;

延遲(500);

Temp=_crol_(Temp,1);

P1=0XFF;

(1);

(1)單片機8個led燈交替閃爍的程序擴展閱讀:

注意事項:

#include「reg52。這個文件為單片機定義了一些特殊的功能寄存器

Typedef無符號int在16以下;//以聲明的方式定義數據類型

無符號charu8;

//LED燈

Sbitleda=P0;

Sbitled1=P0^0;

Sbitled2=P0^1;

Sbitled3=P0^2;

Sbitled4=P0^3;

Sbitled5=P0^4;

Sbitled6=P0^5;

Sbitled7=P0^6;

Sbitled8=P0^7;

無效延遲(16歲以下)

,(我);

Voidmain()

而(1)

勒達=1;//所有的燈都亮著

//從左到右熄滅

Led1=0;

延遲(50000);//延遲時間約為450毫秒

Led2=0;

延遲(50000);//延遲時間約為450毫秒

Led3=0;

延遲(50000);//延遲時間約為450毫秒

Led4=0;

延遲(50000);//延遲時間約為450毫秒

Led5=0;

延遲(50000);//延遲時間約為450毫秒

Led6=0;

延遲(50000);//延遲時間約為450毫秒

Led7=0;

延遲(50000);//延遲時間約為450毫秒

Led8=0;

延遲(100000);//延遲大約900毫秒

//從右到左照明

Led8=1;

延遲(50000);//延遲時間約為450毫秒

Led7=1;

延遲(50000);//延遲時間約為450毫秒

Led6=1;

延遲(50000);//延遲時間約為450毫秒

Led5=1;

延遲(50000);//延遲時間約為450毫秒

Led4=1;

延遲(50000);//延遲時間約為450毫秒

Led3=1;

延遲(50000);//延遲時間約為450毫秒

Led2=1;

延遲(50000);//延遲時間約為450毫秒

Led1=1;

延遲(50000);//延遲時間約為450毫秒

勒達=1;//所有的燈都亮著

㈡ 單片機C語言如何實現8個LED流水燈來迴流動

1、可以通過左移函數_crol_()和右移函數_cror_()來實現LED等的來迴流動。

2、具體實現方法可以參考如下程序:

2、單片機又稱單片微控制器,它不是完成某一個邏輯功能的晶元,而是把一個計算機系統集成到一個晶元上。相當於一個微型的計算機,和計算機相比,單片機只缺少了I/O設備。概括的講:一塊晶元就成了一台計算機。它的體積小、質量輕、價格便宜、為學習、應用和開發提供了便利條件。同時,學習使用單片機是了解計算機原理與結構的最佳選擇。

3、單片機的使用領域已十分廣泛,如智能儀表、實時工控、通訊設備、導航系統、家用電器等。各種產品一旦用上了單片機,就能起到使產品升級換代的功效,常在產品名稱前冠以形容詞——「智能型」,如智能型洗衣機等。

㈢ 設計一個具有8個LED燈,要求從右向左依次點亮一秒後熄滅,循環往復的單片機程序。跪求

#include"reg52.h"//此文件中定義了單片機的一些特殊功能寄存器

typedef unsigned int u16;//對數據類型進行聲明定義

typedef unsigned char u8;

//LED燈命名

sbit leda=P0;

sbit led1=P0^0;

sbit led2=P0^1;

sbit led3=P0^2;

sbit led4=P0^3;

sbit led5=P0^4;

sbit led6=P0^5;

sbit led7=P0^6;

sbit led8=P0^7;

void delay(u16 i)

{

while(i--);

}

void main()

{

while(1)

{

leda=1;//全部燈亮

//從左到右依次熄滅

led1=0;

delay(50000);//大約延時450ms

led2=0;

delay(50000);//大約延時450ms

led3=0;

delay(50000);//大約延時450ms

led4=0;

delay(50000);//大約延時450ms

led5=0;

delay(50000);//大約延時450ms

led6=0;

delay(50000);//大約延時450ms

led7=0;

delay(50000);//大約延時450ms

led8=0;

delay(100000);//大約延時900ms

//從右到左依次點亮

led8=1;

delay(50000);//大約延時450ms

led7=1;

delay(50000);//大約延時450ms

led6=1;

delay(50000);//大約延時450ms

led5=1;

delay(50000);//大約延時450ms

led4=1;

delay(50000);//大約延時450ms

led3=1;

delay(50000);//大約延時450ms

led2=1;

delay(50000);//大約延時450ms

led1=1;

delay(50000);//大約延時450ms

leda=1;//全部燈亮

}

}

(3)單片機8個led燈交替閃爍的程序擴展閱讀:

main()應用:

1、C++中的main函數

C++繼承了C語言的大部分特性,因此保留了「程序總是從main函數開始執行,且總是默認從main函數的return語句或結尾處結束運行」這一傳統,

但是要注意,C++中的main函數要想作為程序執行的出入口,必須寫在全局(Global)范圍,不能寫成某個結構體或某個類的成員。

雖然main函數可以作為結構體或者類的成員函數,但相應地會失去作為程序出入口的功能。

C++中全局main函數的書寫格式與C語言完全相同,功能也完全相同,且同一C++程序同樣只能有一個全局main函數。

2、java中的main函數

Java同樣是以main函數作為程序執行出入口的,但Java作為「更純潔」的面向對象語言,它的main函數與C/C++有很大的不同。

首先,返回值的概念淡化,在Java Application中main不允許返回值,因此int main是被禁止的,必須使用void main,int main僅限在JavaBean中使用。

其次,Java中所有的函數必須屬於類,沒有什麼全局函數一說,因此main函數不能是全局成員,必須是某個類的成員。

第三,由於main函數變成了類的成員函數,因此要想直接被系統調用,還必須使用public static使其成為靜態函數並具有公開許可權。

第四,main函數的參數被簡化,只需要提供字元串數組即可,不需要提供參數個數(這是由於Java的數組具有下標檢查功能的原因)

Java Application中的main函數一般格式如下(類名可以自定義,但保存為Java源碼時,主文件名必須與類名相同,否則可能無法運行)

public class MainDemo{

public static void main(String[]args){

//TODO:在此處寫入主函數的內容

}

}

Java Applet的運行機制與Java Application完全不同,因此不需要main函數

3、C#中的main函數

C#中的main函數與Java大同小異,同樣必須是類成員,同樣使用字元串數組作唯一參數,同樣是靜態函數,同樣的void main,

與之不同的是:main的首字母變成了大寫,即"Main函數「,且是否限定為public級別已經無所謂了(默認沒有public,但某些場合可能還是需要public)

另外,需要注意的是,C#中不再有」類名必須與主文件名同名「的限制,即使類名不和主文件名相同,程序照樣可以運行。

C#應用程序中的main函數默認是這樣的(注意main的首字母已是大寫)

C#和C/C++、java不同的是C#不在拘泥於必須從main()函數開始執行,C#是屬於事件觸發。

class Program{

static void Main(string[]args){

//TODO:在此處寫入主函數的內容

}

}

㈣ 求單片機設計8個led燈同時閃爍的程序,

請設計一個8個led同時全部閃爍的程序
#include <reg51.h>
main ()
{int i;
while (1)
{for (i=0;i<=30000;i++);
P1=~P1;
}
}

㈤ 單片機LED燈閃爍 ,先八個輪流閃爍,再隔一個閃爍,再兩個兩個地閃爍 然後循環,求匯編程

TIMES EQU 30H
LED EQU 31H
FLAG BIT 00H
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0ISR
ORG 0030H
MAIN:
MOV SP,#5FH
MOV TMOD,#01H
MOV TH0,#3CH
MOV TL0,#0B0H
SETB TR0
SETB ET0
SETB EA
CLR FLAG
LOOP:
MOV LED,#0FEH
MOV R2,#8
LOOP1:
MOV P0,LED
JNB FLAG,$
MOV A,LED
RL A
MOV LED,A
CLR FLAG
DJNZ R2,LOOP1
MOV LED,#0FEH
MOV R2,#8
LOOP2:
MOV P0,LED
JNB FLAG,$
MOV A,LED
RL A
RL A
MOV LED,A
CLR FLAG
DJNZ R2,LOOP2
MOV LED,#0FCH
MOV R2,#7
LOOP3:
MOV P0,LED
JNB FLAG,$
MOV A,LED
RL A
MOV LED,A
CLR FLAG
DJNZ R2,LOOP3
LJMP LOOP
T0ISR:
CLR TR0
MOV TH0,#3CH
MOV TL0,#0B0H
SETB TR0
INC TIMES
MOV A,TIMES
CJNE A,#40,T0E
SETB FLAG
T0E:
RETI
END

㈥ 利用單片機控制8個發光二極體,實現8個燈同時閃爍的控製程序

以51位例,使用P1的八個IO口控制。
先定義:
sbit
LED0=P1^0;
sbit
LED1=P1^1;
........
以此類推,定義八個。
然後在主循環中:
LED0=0;
延時一段時間;
LED0=1;
就可以看到閃爍了。

㈦ 單片機 8個LED燈隨機閃爍怎麼做

1、首先在電腦中新建項目:Keil uVision4 51單片機LED閃爍編程,如下圖所示。

㈧ 單片機流水燈八個燈依次點亮,然後一起閃爍的程序代碼

一般是系統故障了
建議前往官方售後檢測維修一下

㈨ 利用單片機控制8個發光二極體,設計8個燈同時閃爍的控製程序

方法:
1:設定一個變數i,可以從0到3循環的變化
2:檢測一個經過消抖處理的按鍵,按一下,i+1
3:當i值為各個值時,執行相應的花樣。
流水燈參考程序
#include
#include
#define uchar unsigned char
uchar j,temp;
void delay(unsigned int ms)
{
uchar t;
while(ms--)
for(t=0;t<123;t++);
}
void main()
{
P1=0xff;
delay(500);
temp=0xfe; //有點怪,led接在P2.3~P2.6
for(j=0;j<4;j++)
{
P1=temp;
delay(500);
temp=_crol_(temp,1);
}
P1=0xff;
while(1);
}

閱讀全文

與單片機8個led燈交替閃爍的程序相關的資料

熱點內容
壓縮空氣軟管製作方法 瀏覽:905
天河三號演算法 瀏覽:924
php隊列教程 瀏覽:632
洪水命令 瀏覽:529
安卓怎麼弄成蘋果在線 瀏覽:435
谷歌web伺服器地址 瀏覽:898
安卓鎖屏圖片如何刪除 瀏覽:719
python3多進程編程 瀏覽:714
證明代碼是程序員寫的 瀏覽:397
演算法錯誤發現辦法 瀏覽:410
河南省醫院掛號是哪個app 瀏覽:629
冬日戀歌哪個APP能看 瀏覽:673
委內瑞拉加密貨 瀏覽:10
程序員寫日記哪個軟體好 瀏覽:108
加密機操作手冊 瀏覽:860
dos命令自動關閉 瀏覽:328
心田花開app在哪裡評價 瀏覽:449
求索記錄頻道哪個app可以看 瀏覽:730
金梅瓶pdf下載 瀏覽:985
機器軟體用什麼編程 瀏覽:845