機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
單片機(jī)流水燈設(shè)計(jì)
單片機(jī)流水燈設(shè)計(jì)
 更新時(shí)間:2009-5-18 15:18:09  點(diǎn)擊數(shù):1
【字體: 字體顏色

下面介紹幾個(gè)單片機(jī)器流水燈設(shè)計(jì)的程序

51單片機(jī)流水燈C語言源程序(源創(chuàng)) **************************************************************
文件名稱:flash_led.c
文件說明:流水燈C程序
編寫人員:Jerry Yang
編寫日期:2006年10月5日
程序說明:MCU采用AT89S51,外接12M晶振,P1口輸出
版權(quán)標(biāo)注:豪杰電子工作室(http://hokepoly.bokee.com)
*************************************************************/
#include //51系列單片機(jī)定義文件
#define uchar unsigned char //定義無符號(hào)字符
#define uint unsigned int //定義無符號(hào)整數(shù)
void delay(uint); //聲明延時(shí)函數(shù)
void main(void)
{
uint i;
uchar temp;
while(1)
{
temp=0x01;
for(i=0;i<8;i++) //8個(gè)流水燈逐個(gè)閃動(dòng)
{
P1=~temp;
delay(100); //調(diào)用延時(shí)函數(shù)
temp<<=1;
}
temp=0x80;
for(i=0;i<8;i++) //8個(gè)流水燈反向逐個(gè)閃動(dòng)
{
P1=~temp;
delay(100); //調(diào)用延時(shí)函數(shù)
temp>>=1;
}
temp=0xFE;
for(i=0;i<8;i++) //8個(gè)流水燈依次全部點(diǎn)亮
{
P1=temp;
delay(100); //調(diào)用延時(shí)函數(shù)
temp<<=1;
}
temp=0x7F;
for(i=0;i<8;i++) //8個(gè)流水燈依次反向全部點(diǎn)亮
{
P1=temp;
delay(100); //調(diào)用延時(shí)函數(shù)
temp>>=1;
}
}

}
void delay(uint t) //定義延時(shí)函數(shù)
{
register uint bt;
for(;t;t--)
for(bt=0;bt<255;bt++);
}


/************************************************************
*89C51、S51單片機(jī)32個(gè)IO口流水燈測(cè)試程序
*Flash0、1、2、3分別對(duì)應(yīng)單片機(jī)的P0、1、2、3四個(gè)口
*a程序?qū)?yīng)流水燈從全滅到一個(gè)一個(gè)亮
*b程序?qū)?yīng)流水燈從全亮到一個(gè)一個(gè)滅
*Author:大靈通
*2006-7-26 10:57,OK!
*************************************************************/
#include
#include
#include
#define uchar unsigned char
#define uint unsigned int
#define TimeDelay 60000
void delay(uint n);
void Flash0a(void);
void Flash0b(void);
void Flash1a(void);
void Flash1b(void);
void Flash2a(void);
void Flash2b(void);
void Flash3a(void);
void Flash3b(void);
/************************************************************
*Function: 主函數(shù)
*parameter:
*Return:
*Modify:
*************************************************************/
void main(void)
{
while(1)
{
Flash1b();
Flash1a();

delay(TimeDelay);
delay(TimeDelay);

Flash0b();
Flash0a();

Flash2b();
Flash2a();

Flash1b();
Flash1a();

Flash3b();
Flash3a();
}
}
/************************************************************
*Function: 延時(shí)
*parameter:
*Return:
*Modify:
*************************************************************/
void delay(uint n)
{
while(n!=0)
{
n--;
}
}
void Flash0a(void)
{
uchar i;
uchar Temp;
Temp = 0x80;
for(i=0;i<8;i++)
{
P0 = ~Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P0 = 0xff;
}
void Flash0b(void)
{
uchar i;
uchar Temp;
Temp = 0x80;
for(i=0;i<8;i++)
{
P0 = Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P0 = 0;
}
void Flash1a(void)
{
uchar i;
uchar Temp;
P1 = 1;
Temp = 0x80;
for(i=0;i<8;i++)
{
P1 = ~Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P1 = 0xff;
}
void Flash1b(void)
{
uchar i;
uchar Temp;
P1 = 1;
Temp = 0x80;
for(i=0;i<8;i++)
{
P1 = Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P1 = 0;
}
void Flash2a(void)
{
uchar i;
uchar Temp;
P2 = 1;
Temp = 0x80;
for(i=0;i<8;i++)
{
P2 = ~Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P2 = 0xff;
}
void Flash2b(void)
{
uchar i;
uchar Temp;
P2 = 1;
Temp = 0x80;
for(i=0;i<8;i++)
{
P2 = Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P2 = 0;
}
void Flash3a(void)
{
uchar i;
uchar Temp;
P3 = 1;
Temp = 0x80;
for(i=0;i<8;i++)
{
P3 = ~Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P3 = 0xff;
}
void Flash3b(void)
{
uchar i;
uchar Temp;
P3 = 1;
Temp = 0x80;
for(i=0;i<8;i++)
{
P3 = Temp;
delay(TimeDelay);
Temp = Temp >> 1;
}
P3 = 0;
}

===========

;P1口八個(gè)LED燈做三路流水燈實(shí)驗(yàn)

ORG 0000H
LJMP MAIN
ORG 030H
MAIN:MOV P1,#0DBH ;11011011--0為亮,1為滅
ACALL DELAY
MOV P1,#06DH ;01101101
ACALL DELAY
MOV P1,#0B6H ;10110110
ACALL DELAY
AJMP MAIN
DELAY:MOV R7,#255 ;延時(shí)子程序
D1: MOV R6,#255
D2: DJNZ R6,D2
DJNZ R7,D1
RET
END

  • 上一篇: 單片機(jī)交通燈設(shè)計(jì)
  • 下一篇: 單片機(jī)遠(yuǎn)程燈控箱設(shè)計(jì)
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1