久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2655|回復: 11
打印 上一主題 下一主題
收起左側

這個單片機流水燈程序有用嗎

[復制鏈接]
跳轉到指定樓層
樓主
ID:917238 發表于 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++);
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:917199 發表于 2021-5-22 16:53 | 只看該作者
沒看出來什么問題
回復

使用道具 舉報

板凳
ID:451718 發表于 2021-5-22 17:08 | 只看該作者
不知道你說的有用何解?  拿來娛樂一點問題都沒有。 如果做項目用, 沒有太大參考價值。 就問你一點, 那么多delay100ms,如何響應別的突發操作,比如按鍵。
回復

使用道具 舉報

地板
ID:925693 發表于 2021-5-23 14:51 | 只看該作者
用來初步學習還是可以的,沒什么太大問題,不過高級一點的就不行了
回復

使用道具 舉報

5#
ID:926081 發表于 2021-5-23 20:59 | 只看該作者
初步學習都是先做流水燈啊
回復

使用道具 舉報

6#
ID:926092 發表于 2021-5-23 21:31 | 只看該作者
對于一些基本的校內基礎科技競賽,應該夠拿獎了。還是有用的
回復

使用道具 舉報

7#
ID:926364 發表于 2021-5-24 14:01 | 只看該作者
學校學的嘛!我們也正在學呢哦,對于單片機理解很不錯,能自己搞懂就很好了
回復

使用道具 舉報

8#
ID:883031 發表于 2021-5-24 16:08 | 只看該作者
存在即有合理性
回復

使用道具 舉報

9#
ID:917238 發表于 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);
        }       
}
回復

使用道具 舉報

10#
ID:917238 發表于 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);
        }       
}
回復

使用道具 舉報

11#
ID:57657 發表于 2021-6-12 07:12 | 只看該作者
robinsonlin 發表于 2021-5-22 17:08
不知道你說的有用何解?  拿來娛樂一點問題都沒有。 如果做項目用, 沒有太大參考價值。 就問你一點, 那么 ...

外部中斷了解下
回復

使用道具 舉報

12#
ID:190577 發表于 2021-6-12 09:50 | 只看該作者
要了解下單片機定時器的使用,延時函數會阻塞單片機運行。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品一区二区在线观看 | 一区二区三区影院 | 操操日| 国产精品视频一二三区 | 99re视频在线观看 | 81精品国产乱码久久久久久 | 久久免费精品视频 | 欧美日韩在线成人 | 日韩第一区 | 一区二区av | 伦理二区| 久久精品成人 | 日本人麻豆 | 国产激情第一页 | 欧美一区二区在线观看 | 日韩三级免费网站 | 欧美男人天堂 | 国产大片一区 | 亚洲精品一区国产精品 | 午夜视频免费网站 | 九九在线视频 | 欧美福利影院 | 爱爱小视频 | 中日字幕大片在线播放 | 欧美中文字幕在线 | 亚洲精品久久久一区二区三区 | 精品一区二区免费视频 | 做a视频在线观看 | 成人不卡| 久久久免费少妇高潮毛片 | 在线免费观看亚洲 | 99精品欧美一区二区蜜桃免费 | 天天夜夜操 | www.日韩av.com| jlzzjlzz国产精品久久 | 在线观看日本高清二区 | 久久影院一区 | 中文字幕视频在线 | 欧美一区二区在线观看 | 久久国内精品 | 欧美h视频 |