欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 這個單片機流水燈程序有用嗎 [打印本頁]

作者: a18075128066    時間: 2021-5-22 13:27
標題: 這個單片機流水燈程序有用嗎
#include<reg51.h>  //51系列單片機定義文件
#define uchar unsigned char //定義無符號字符
#define uint unsigned int //定義無符號整數

void delay(uint);  //聲明延時函數
void main(void)
{
uint i;
uchar temp;

while(1)
{
temp=0x01;
for(i=0;i<8;i++) //8個流水燈逐個閃動
{
P2=~temp;
delay(100);  //調用延時函數
temp<<=1;
}

temp=0x80;
for(i=0;i<8;i++) //8個流水燈反向逐個閃動
{
P2=~temp;
delay(100);  //調用延時函數
temp>>=1;
}
temp=0xFE;
for(i=0;i<8;i++) //8個流水燈依次全部點亮
{
P2=temp;
delay(100);  //調用延時函數
temp<<=1;
}
temp=0x7F;
for(i=0;i<8;i++) //8個流水燈依次反向全部點亮
{
P2=temp;
delay(100);  //調用延時函數
temp>>=1;
}
}

}
void delay(uint t)  //定義延時函數
{
register uint bt;
for(;t;t--)
for(bt=0;bt<255;bt++);
}
作者: timerzero    時間: 2021-5-22 16:53
沒看出來什么問題
作者: robinsonlin    時間: 2021-5-22 17:08
不知道你說的有用何解?  拿來娛樂一點問題都沒有。 如果做項目用, 沒有太大參考價值。 就問你一點, 那么多delay100ms,如何響應別的突發操作,比如按鍵。
作者: 嚕啦啦789    時間: 2021-5-23 14:51
用來初步學習還是可以的,沒什么太大問題,不過高級一點的就不行了
作者: NayobuX    時間: 2021-5-23 20:59
初步學習都是先做流水燈啊

作者: Lois_Lois    時間: 2021-5-23 21:31
對于一些基本的校內基礎科技競賽,應該夠拿獎了。還是有用的

作者: 1411044782    時間: 2021-5-24 14:01
學校學的嘛!我們也正在學呢哦,對于單片機理解很不錯,能自己搞懂就很好了
作者: cn_zhx    時間: 2021-5-24 16:08
存在即有合理性
作者: a18075128066    時間: 2021-6-11 09:43
#include<reg52.h>

#define uchar  unsigned char
#define uint   unsigned int

sbit LED1 = P2^0;
sbit LED2 = P2^1;
sbit LED3 = P2^2;
sbit LED4 = P2^3;
sbit LED5 = P2^4;
sbit LED6 = P2^5;
sbit LED7 = P2^6;
sbit LED8 = P2^7;

/* ********************************************* */
// 函數名稱: Delay()
// 函數功能:毫秒延時
/* ********************************************* */

void delay(uint z)
{
        uint x,y;
        for(x = 0; x < z; x++)
                for(y = 0; y < 113; y++);
}
// 函數名稱: main()
// 函數功能: 實現一個LED燈一閃一閃的效果
void main(void)
{
        while(1)
        {
                LED1 = 0;           //燈亮
                delay(1000);        //持續亮1s
                LED1 = 1;           //燈滅
                delay(1000);        //持續滅1s
                LED2 = 0;
                delay(1000);
                LED2 = 1;
                delay(1000);
                LED3 = 0;
                delay(1000);
                LED3 = 1;
                delay(1000);
                LED4 = 0;           //燈亮
                delay(1000);        //持續亮1s
                LED4 = 1;           //燈滅
                delay(1000);        //持續滅1s
                LED5 = 0;
                delay(1000);
                LED5 = 1;
                delay(1000);
                LED6 = 0;
                delay(1000);
                LED6 = 1;
                delay(1000);
                LED7 = 0;
                delay(1000);
                LED7 = 1;
                delay(1000);
        }       
}
作者: a18075128066    時間: 2021-6-11 10:24
timerzero 發表于 2021-5-22 16:53
沒看出來什么問題

#include<reg52.h>

#define uchar  unsigned char
#define uint   unsigned int

sbit LED1 = P2^0;
sbit LED2 = P2^1;
sbit LED3 = P2^2;
sbit LED4 = P2^3;
sbit LED5 = P2^4;
sbit LED6 = P2^5;
sbit LED7 = P2^6;
sbit LED8 = P2^7;

/* ********************************************* */
// 函數名稱: Delay()
// 函數功能:毫秒延時
/* ********************************************* */

void delay(uint z)
{
        uint x,y;
        for(x = 0; x < z; x++)
                for(y = 0; y < 113; y++);
}
// 函數名稱: main()
// 函數功能: 實現一個LED燈一閃一閃的效果
void main(void)
{
        while(1)
        {
                LED1 = 0;           //燈亮
                delay(1000);        //持續亮1s
                LED1 = 1;           //燈滅
                delay(1000);        //持續滅1s
                LED2 = 0;
                delay(1000);
                LED2 = 1;
                delay(1000);
                LED3 = 0;
                delay(1000);
                LED3 = 1;
                delay(1000);
                LED4 = 0;           //燈亮
                delay(1000);        //持續亮1s
                LED4 = 1;           //燈滅
                delay(1000);        //持續滅1s
                LED5 = 0;
                delay(1000);
                LED5 = 1;
                delay(1000);
                LED6 = 0;
                delay(1000);
                LED6 = 1;
                delay(1000);
                LED7 = 0;
                delay(1000);
                LED7 = 1;
                delay(1000);
        }       
}
作者: npn    時間: 2021-6-12 07:12
robinsonlin 發表于 2021-5-22 17:08
不知道你說的有用何解?  拿來娛樂一點問題都沒有。 如果做項目用, 沒有太大參考價值。 就問你一點, 那么 ...

外部中斷了解下
作者: bbxyliyang    時間: 2021-6-12 09:50
要了解下單片機定時器的使用,延時函數會阻塞單片機運行。




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1