導航:首頁 > 操作系統 > 單片機1個燈交替亮滅程序

單片機1個燈交替亮滅程序

發布時間:2024-04-21 17:57:06

單片機可控制流水燈匯編程序 要求:按一下亮一個,再按一下第二個亮,第一個熄滅

/************************************
編寫者:XP
學習單片機一個星期,這是我自己寫的*/
#include<reg52.h>
sbit Key=P3^2;
sbit LED_1=P1^0;
sbit LED_2=P1^1;
/**********************************
*********延時函數*****************/
void Delay(int del)
{ int i,j;
for(i=0;i<=42;i++)
for(j=0;j<=del;j++) ;
}
void main()
{ while(1)
{ if(Key==0)
{ Delay(10); //軟體防抖,延時10ms
if(Key==0)
{ LED_1=0; //第一個燈亮
LED_2=1; //
Key=1;
Delay(250);
if(Key==0)
{ Delay(10); //軟體防抖,延時10ms
LED_1=1; //第一個滅
LED_2=0;} //第二個亮
}
}
Delay(300);
Key=1;
}
}

Ⅱ 51鍗曠墖鏈猴紝璁╃涓涓鐏浜錛岀浜屼釜浜錛岀涓涓鐏錛屼竴鐩村埌絎8涓鐏闀誇寒錛佺浜屾″驚鐜錛岀7涓鐏浜錛

浣犺繖涓寰堢畝鍗曪紝嫻佹按鐏鐨勯棿闅旀椂闂存湁浠涔堣佹眰鍚楋紵8涓鐏鎺ュ湪鍗曠墖鏈虹殑鍝涓狪O鍙d笂錛濡傛灉鍙寵佹眰鍙浠ヨ村嚭鏉ワ紝娌℃湁鐨勮瘽錛屾垜緇欎綘浠跨湡涓涓鍙戠粰浣

瀹屽杽涓涓

鐣欎笅鑱旂郴鏂瑰紡錛屾墦鍖呭彂緇欎綘

Ⅲ 單片機間隔點亮一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秒鍾燈的狀態會發生一次變化,即由點亮狀態變為熄滅狀態,再由熄滅狀態變為點亮狀態。

Ⅳ 用c51單片機控制一個閃光燈循環閃光5次以後熄滅不再閃光,用C語言編程,求程序……

用C語言編程,求程序的方法:

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

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

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

Voiddelay(Void)//Void表示沒有返回值,也沒有傳遞參數。

Unsignedint我;定義一個最大值為65535的無符號整數。

For (I = 0;我< 20000;i++) //執行20000個空循環。

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

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

函數函數:主函數(C語言規則必須有且只能有一個主函數)。

********************************************************/空白主要(空白)

而(1)//無限循環。

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

延遲();//推遲一段時間。

P0=0XFF;//P1=11111111B,P0.0輸出高電平。

延遲();//推遲一段時間。

單片機驅動LED光源程序:

#include//頭文件。

定義uint無符號int

#定義uchar無符號字元

SbitLED1=P1^7;//定義。

空白delay_ms(單位);//帶參數的ms級延時函數。

Voidmain()

而(1)

LED1=0;

Delay_ms(1000);

LED1=1;

Delay_ms(1000);

Voiddelay_ms(uintz)//delay子常式

使用Uintx,y;

For (x = z;X > 0;X -)

For (y = 110;Y > 0;Y -);

(4)單片機1個燈交替亮滅程序擴展閱讀:

單片機應用分類:

一般類型:

這是關於微控制器的。例如80C51通用型單片機,它並不是為特定的目的而設計的;專用單片機是為某一類產品甚至某一種產品而設計生產的。例如,為了滿足電子體溫計的要求,晶元中集成了具有ADC介面的溫度測量控制電路等功能。

主線:

這是由微控制器是否提供並行匯流排來區分的。匯流排微控制器一般安裝有並行地址匯流排、數據匯流排、控制匯流排,這些引腳擴展並行外圍設備可以通過串口與單片機連接。

另外,很多單片機都需要將外圍設備和外圍設備的介面集成在一塊,所以在很多情況下不能並行擴展匯流排,大大降低了封裝成本和晶元體積,這種單片機被稱為非匯流排單片機。

控制類型:

這是關於微控制器的一般應用。一般來說,工業控制定址范圍大,計算能力強。家用電器的單片機大多是專用的。

它通常是小包裝、低價格、高集成的外圍設備和外圍介面。顯然,上述分類並不獨特和嚴格。例如,80C51類單片機既是通用的,又是匯流排的,還可以用於工業控制。

Ⅳ 鍗曠墖鏈簂ed鐏涓浜涓鐏闂撮殧1縐

褰撳崟鐗囨満LED鐏涓浜涓鐏闂撮殧1縐掓椂錛屽彲浠ヤ嬌鐢ㄤ互涓嬩唬鐮佸疄鐜幫細


// 鍒濆嬪寲IO鍙 P1 = 0xFF; // 璁劇疆寤舵椂鏃墮棿 while (1) { P1 = 0x00; // 寤舵椂1縐 for (int i = 0; i < 10000; i++) { // 絀哄驚鐜 } P1 = 0xFF; // 寤舵椂1縐 for (int i = 0; i < 10000; i++) { // 絀哄驚鐜 } }


鍦ㄤ笂榪頒唬鐮佷腑錛屾垜浠棣栧厛灝哖1鍙h劇疆涓哄叏鐏鐘舵侊紝鐒跺悗浣跨敤涓涓寰鐜灝哖1鍙h劇疆涓哄叏浜鐘舵侊紝騫跺歡鏃1縐掗挓銆傛帴鐫錛屾垜浠灝哖1鍙h劇疆涓哄叏鐏鐘舵侊紝騫跺啀嬈″歡鏃1縐掗挓銆傝繖鏍鳳紝LED鐏灝變細涓浜涓鐏闂撮殧1縐掋


闇瑕佹敞鎰忕殑鏄錛屼笂榪頒唬鐮佷腑鐨勫歡鏃舵椂闂村彲浠ユ牴鎹瀹為檯鎯呭喌榪涜岃皟鏁達紝浠ヨ幏寰楁洿綺劇『鐨勯棿闅旀椂闂淬傛ゅ栵紝濡傛灉浣跨敤鐨勬槸STM32緋誨垪鍗曠墖鏈猴紝榪橀渶瑕佸湪鍒濆嬪寲浠g爜涓閰嶇疆GPIO鍙d負杈撳嚭妯″紡銆

Ⅵ 實現單片機信號燈1-8依次循環點亮的程序怎麼寫

把各個花樣寫在子函數,中斷中對變數加1,在判斷是否大於5,大於5就對變數清零。因為你要5種花樣。主函數判斷變數的值,1時執行從左到右依次點亮,2時執行從左到右逐個依次熄滅。依次下去

閱讀全文

與單片機1個燈交替亮滅程序相關的資料

熱點內容
資料庫日誌自動壓縮 瀏覽:927
手機表格文檔用哪個app 瀏覽:77
找人開發app的公司怎麼樣 瀏覽:651
android藍牙發送數據 瀏覽:428
範文瀾中國通史pdf 瀏覽:755
php常用的設計模式 瀏覽:889
安卓手機怎麼一個一個的截圖 瀏覽:980
javajsondate 瀏覽:356
matlab圖像處理演算法 瀏覽:670
安卓如何禁止手機自動降頻 瀏覽:697
一份加密不緊急的上行文 瀏覽:417
伺服器c5是什麼意思 瀏覽:444
基礎程序員證 瀏覽:425
如何防止伺服器被偷油 瀏覽:291
安卓導入存儲聯系人怎麼不見了 瀏覽:103
微信遮圖打賞源碼 瀏覽:173
安卓平板圖片照片徹底刪除了怎麼辦 瀏覽:444
怎樣查看指標源碼 瀏覽:531
貓和老鼠哪個app好玩 瀏覽:718
網易有愛登錄器在哪個文件夾 瀏覽:246