當前位置:首頁 » 編程語言 » 單片機設計閃光燈c語言程序
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

單片機設計閃光燈c語言程序

發布時間: 2023-08-22 00:39:49

Ⅰ 單片機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--);}

Ⅱ 51單片機怎麼用c語言寫一個按鈕控制一個led的閃爍,按一下開始閃爍,再按就滅掉

bit flash;//閃爍標志位
sbit led=P0^0;
sbit P01=P0^1;
sbit P02=P0^2;
void main()

{
P01=P02=0;
flash=0;
led=0;
while(1)
{
scankey();
ledflash();
}
}
void scankey()//鍵盤掃描
{
P01=1;//行線給1
if(P02)//如果P02也是1則說明接通
{
delay(10);//去抖動10MS
if(P02)//再次確定按鍵按下
{
while(P02){flash=flash}//按住按鍵的動作
flash=~flash;//按鍵按下後執行動作
}
}
}
void ledflash()
{
if(flash)
{
led=1;//點亮
delay(100);//延時100MS
led=0;//熄滅
}
else led=0;
}
void delay(unsigned int i)
{自己根據單片機頻率寫個1MS帶形參的演示程序}

這個程序是現寫的。。應該能執行,有些細節沒有寫,自己修改下,只是個大框而已(比如函數聲明,定義埠什麼的)

Ⅲ 用C語言編寫一個單片機控制LED燈閃爍三次的程序,急求!

# P1上接LED等。
#include "reg51.h"

void delayms(unsigned int x)
{
int i,j;
for(i=x;i>0;i--)
for(j=0;j<120;j++);
}

void main(void)
{
char i;
for(i=0;i<6;i++)

{
P1 = ~P1;
delayms(1000);
}
while(1);

}

Ⅳ 單片機控制單個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);//停止不動
}
延時子程序隨便搜一個,如果時間差別太大,可調某些參數

Ⅳ 單片機製作呼吸燈的C語言程序怎樣編寫

#includex0dx0asbit LED0=P0^0;x0dx0asbit wei=P1^1;x0dx0asbit an=P1^0;x0dx0asbit lcden=P1^7;x0dx0asbit dianzhen=P1^3;x0dx0asbit leden=P1^2;x0dx0avoid Delay(unsigned int t);x0dx0avoid main (void)x0dx0a{x0dx0aunsigned int CYCLE=600,PWM_LOW=0;//定義周期並賦值x0dx0alcden=0;x0dx0aP0=0x00;x0dx0adianzhen=0;x0dx0aP0=0xff;x0dx0awei=0;x0dx0aan=0;x0dx0awhile (1) //主循環x0dx0a{x0dx0aLED0=1;x0dx0aDelay(150000); //特意加延橘畢時,可以看缺伍正到熄伏悔滅的過程x0dx0afor(PWM_LOW=1;PWM_LOW0;PWM_LOW--)x0dx0a{x0dx0aLED0=0;x0dx0a x0dx0aDelay(PWM_LOW);x0dx0a x0dx0aLED0=1;x0dx0a x0dx0aDelay(CYCLE-PWM_LOW);x0dx0a}x0dx0a}x0dx0a}x0dx0avoid Delay(unsigned int t)x0dx0a{x0dx0awhile(t--);x0dx0a}

Ⅵ 用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--);

}

(6)單片機設計閃光燈c語言程序擴展閱讀:

單片機應用分類:

通用型:

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

匯流排型:

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

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

控制型:

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

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

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