導航:首頁 > 操作系統 > 單片機led程序

單片機led程序

發布時間:2023-09-13 11:09:23

單片機C語言編程點亮LED燈

可以通過左移函數_crol_()和右移函數_cror_()來實現LED等的來迴流動。 具體實現方法可以參考如下程序: #include #include #define uint unsigned int#define uchar unsigned charvoid delay(uint a);void main(){ P1=0xfe; while(1) { // 向左循環點亮LED for(i=0; i<7; i++) { P1=_crol_(P1,1); // 左移一位,點亮下一位LED delay(55); } // 向右循環點亮LED for(i=0; i/ 右移一位,,點亮上一位LED delay(55); } }}// 延時函數,延時a毫秒void delay(uint a){ uint x,y; for(x=a;x>0;x--) for(y=110;y>0;y--);}

② 用C語言編寫一個單片機控制LED燈閃爍變化的編程 急用!!!!!!!!!

C語言實現LED燈閃爍控制配套51單片機開發板。

#include //包含單片機寄存器的頭文件

/****************************************
函數功能:延時一段時間

*****************************************/

void delay(void) //兩個void意思分別為無需返回值,沒有參數傳遞。

{

unsigned int i; //定義無符號整數,最大取值范圍65535。

for(i=0;i<20000;i++) //做20000次空循環。

; //什麼也不做,等待一個機器周期。

}

/*******************************************************

函數功能:主函數 (C語言規定必須有也只能有1個主函數)。

********************************************************/
void main(void)

{

while(1) //無限循環。

{

P0=0xfe; //P1=1111 1110B, P0.0輸出低電平。

delay(); //延時一段時間。

P0=0xff; //P1=1111 1111B, P0.0輸出高電平。

delay(); //延時一段時間。

}

}

單片機驅動LED燈的源程序:

#include<reg52.h> //頭文件。

#define uint unsigned int

#define uchar unsigned char

sbit LED1=P1^7; //位定義。

void delay_ms(uint);//mS級帶參數延時函數。

void main()

{

while(1)

{

LED1=0;

delay_ms(1000);

LED1=1;

delay_ms(1000);

}

}

void delay_ms(uint z) //延時子程序

{

uint x,y;

for(x=z;x>0;x--)

for(y=110;y>0;y--);

}

(2)單片機led程序擴展閱讀:

單片機應用分類:

通用型:

這是按單片機(Microcontrollers)適用范圍來區分的。例如,80C51式通用型單片機,它不是為某種專門用途設計的;專用型單片機是針對一類產品甚至某一個產品設計生產的,例如為了滿足電子體溫計的要求,在片內集成ADC介面等功能的溫度測量控制電路。

匯流排型:

這是按單片機(Microcontrollers)是否提供並行匯流排來區分的。匯流排型單片機普遍設置有並行地址匯流排、 數據匯流排、控制匯流排,這些引腳用以擴展並行外圍器件都可通過串列口與單片機連接。

另外,許多單片機已把所需要的外圍器件及外設介面集成一片內,因此在許多情況下可以不要並行擴展匯流排,大大減省封裝成本和晶元體積,這類單片機稱為非匯流排型單片機。

控制型:

這是按照單片機(Microcontrollers)大致應用的領域進行區分的。一般而言,工控型定址范圍大,運算能力強;用於家電的單片機多為專用型。

通常是小封裝、低價格,外圍器件和外設介面集成度高。 顯然,上述分類並不是惟一的和嚴格的。例如,80C51類單片機既是通用型又是匯流排型,還可以作工控用。

參考資料來源:網路-單片機



③ 單片機控制單個LED閃爍五下的c程序,希望能加講解,謝謝啦

c語言程序很簡單:
#include<reg51.h>//包含頭文件
sbit LED=P1^0;//位變數定義
void main()//主程序
{
unsigned char i;//聲明一個變數
for(i=0;i<5;i++)/循環5次
{
LED=0;//亮
delayms(500);//延時
LED=1;//滅
delayms(500);//延時
}
while(1);//停止不動
}
延時子程序隨便搜一個,如果時間差別太大,可調某些參數

④ 單片機流水燈程序

程序如下:

#include <reg52.h>

sbit led1 = P2^0;

sbit led2 = P2^1;

sbit led3 = P2^2;

sbit led4 = P2^3。

讓電子信息技術與單片機技術相融合,有效提高了單片機應用效果。作為計算機技術中的一個分支,單片機技術在電子產品領域的應用,豐富了電子產品的功能,也為智能化電子設備的開發和應用提供了新的出路,實現了智能化電子設備的創新與發展。

從二十世紀九十年代開始,單片機技術就已經發展起來,隨著時代的進步與科技的發展,目前該技術的實踐應用日漸成熟,單片機被廣泛應用於各個領域。現如今,人們越來越重視單片機在智能電子技術方面的開發和應用,單片機的發展進入到新的時期。

無論是自動測量還是智能儀表的實踐,都能看到單片機技術的身影。當前工業發展進程中,電子行業屬於新興產業,工業生產中人們將電子信息技術成功運用。

⑤ 單片機流水燈程序

我是一名多年的單片機工程師,下面的程序你參考一下


效果圖



程序如下:

#include<reg52.h>

#include<intrins.h>

#define uchar unsigned char

#define uint unsigned int

uint i;

uchar j;

void delay_ms(uint k) //延時子程序

{

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

{

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

{

;

}

}

}


main()

{

uchar a,b;

P1=0xfe;

delay_ms(500);

b=P1;


while(1)

{

for(a=0;a<3;a++)

{

b=_crol_(b,1);

P1=b;

delay_ms(500);

}

P1=0xf0;

delay_ms(500);

P1=0xfe;

delay_ms(500);

b=P1;



}

}

如果你想學習更多單片機和程序的知識,可以看看我整理好的「17個實驗學會單片機」,網路一下「17個實驗學會單片機」就可以看到在首頁了。

⑥ 單片機間隔點亮一led燈的C語言程序

以下是一個單片機間隔點亮一LED燈的C語言程序,以8051單片機為例:
c
Copy code
#include
//包含了AT89C51的寄存器定義
void delay(unsigned int xms) //延時函數,xms為要延時的毫秒數
{
unsigned int i,j;
for(i=xms;i>0;i--)
for(j=112;j>0;j--);
}
void main()
{
P1=0x00; //將P1口全部置為0,防止其它引腳影響
while(1)
{
P1=0xff; //點亮P1口第0個引腳上的LED燈友念行,0xff為二進制的11111111
delay(1000); //延時1秒
P1=0x00; //將P1口全部置好嘩為0,熄滅LED燈
delay(1000); //延時1秒
}
}
上述程序的作用是在單片機的P1口上間隔高遲點亮一盞LED燈,每隔1秒鍾燈的狀態會發生一次變化,即由點亮狀態變為熄滅狀態,再由熄滅狀態變為點亮狀態。

⑦ 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);

(7)單片機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;//所有的燈都亮著

閱讀全文

與單片機led程序相關的資料

熱點內容
rdlcpdf 瀏覽:109
鏈表實現快速排序python 瀏覽:590
php輸出命令 瀏覽:987
d站app叫什麼名字 瀏覽:172
oppor系列如何解除應用加密 瀏覽:601
程序員那麼可愛姜逸城初戀 瀏覽:499
modbustcp編程 瀏覽:493
實況為什麼安卓看不了 瀏覽:129
Java多線程Queue 瀏覽:95
雲伺服器499元三年 瀏覽:980
nbd源碼 瀏覽:847
x86在arm上編譯 瀏覽:8
linux怎麼配置網路 瀏覽:307
程序員想要的小禮物 瀏覽:187
java獲取網頁url 瀏覽:625
怎麼做解壓神器泡泡版 瀏覽:967
自己動手做一個c編譯器 瀏覽:930
手機如何鏈接谷歌伺服器地址 瀏覽:137
廢掉一個程序員的武功 瀏覽:250
java樹形演算法 瀏覽:642