51小程式 流水燈 花樣燈

2021-08-21 15:37:22 字數 1625 閱讀 4021

//該程式為燈乙個乙個亮

void main(void)

u8 w,i;

while(1)

for(i = 0, w = 0x01; i < 8; i++)

port = ~w;

w <<= 1;

delay(2000);

//只有乙個燈進行流水

//花樣流水燈

名稱:花樣流水燈

編寫:jam

日期:2018.7.21

修改:無

功能:花樣燈

第一遍:led1~led8乙個燈流水一遍

第二遍:led8~led1乙個燈流水一遍

第三遍:led1~led8依次點亮所有燈

第四遍:led8~led1依次熄滅所有燈

第五遍:通過查表將預存的花式燈點亮

#include

typedef unsigned char u8;

typedef unsigned int u16;

#define port p1

u8 f_led = ;

void delay(u16 t)

while(--t);

void main(void)

u8 i;

u8 temp;

port = 0xff;

while(1)

//從第乙個燈開始亮

for(i = 0, temp = 0x01; i < 8; i++)

port = ~temp;

temp <<= 1;

delay(20000);

for(i = 0, temp = 0x80; i < 8; i++)

port = ~temp;

temp >>= 1;

delay(20000);

for(i = 0; i < 8; i++)

port <<= 1;

delay(20000);

port = 0x80;

for(i = 0,temp = 0x80; i < 8; i++)

port |=(temp >>= 1);

delay(20000);

for(i= 0; i < 8; i++)

port = f_led[i];

delay(20000);

51微控制器100例 第四例 花樣流水燈

說明 本系列51微控制器的100個例子都採用的是stc15f2k60s2增強型的單週期微控制器。1 需求 將連線在p0口的led燈d1 d8,實現各種燈亮的效果。例如 單個左移燈亮,間隔乙個左移燈亮,相鄰四個左移燈亮等效果。2 硬體電路 3 程式設計 include void delay ms un...

C51微控制器學習筆記 二 花樣流水燈的實現

也稱振盪週期,是時鐘頻率的倒數,就看晶振是多少hz的,若是12mhz的,時鐘週期就是1 12微秒,他是微控制器中最小的時間單位,在乙個時鐘週期內微控制器僅能完成乙個最基本的動作。是微控制器的基本操作週期,為時鐘週期的12倍,在乙個機器週期內可以完成乙個取指令的動作。指微控制器完成一條指令所需的時間,...

STC微控制器 閃爍燈,LED流水燈 程式講解

所謂的閃爍燈就像警車一樣,嗶哩嗶哩閃爍。led閃爍其實就是將乙個燈開一下,關一下。在迴圈中不斷的進行開關,這就是邏輯其實挺簡單的,但是中間需要有乙個延時,如果不延時就不會看到效果。在這裡需要用到c語言裡面的乙個重定義關鍵字 int 分為無符號 unsigned 和有符號 signed 兩種型別,預設...