微控制器流水燈

2021-10-03 03:26:45 字數 1065 閱讀 6278

上篇給大家分享了單個led的點亮與閃爍,這次給大家分享一下怎樣用微控制器控制led實現流水燈效果。

所需元器件如下:

stc89c52rc晶元 *1

10k電阻 *1

330ω電阻 *8

10uf 電解電容 *1

22pf 瓷片電容 *2

12mhz晶振 *1

按鍵 *1

led燈 *8

電路圖如下:

**如下:

/*************** led流水燈****************/

#include

"reg52.h"

//此檔案中定義了微控制器的一些特殊功能暫存器

#include

//因為要用到左右移函式,所以加入這個標頭檔案

typedef

unsigned

int u16;

//對資料型別進行宣告定義

typedef

unsigned

char u8;

//對資料型別進行宣告定義

#define led p0

//將p0口定義為led後面就可以使用led代替p0口

void

delay

(u16 i)

//延時函式,i=1時,大約延時10us

void

main()

//主函式

}}

**電路圖如下:

後續會給大家分享呼吸燈,心形燈等**以及實物電路圖~

微控制器 流水燈

基礎知識 1.c語言預處理命令 define a p0 注意後邊不用加分號 在 中使用p0口時,可以直接用a代替,防止修改埠時大面積修改 2.迴圈左移和右移函式 crol a,b 迴圈左移函式,a是左移的值,b是左移的位數。包含在intrins.h庫函式裡面。cror a,b 迴圈右移函式,原理同上...

微控制器流水燈

微控制器c51流水燈實驗 1 基本的流水燈 設定延時函式使led燈依次有間隔的亮起 軟體延時採用程式delay j 可調整延時時間。2 簡單鍵控的流水燈。實現思路 由於是按下鍵不鬆手,鍵值一直保留,所以判斷if k10 即是按下k1,採用if k10 或if k1 1 後接while 1 迴圈的模式...

微控制器之流水燈

include include define uint unsigned int sbit led1 p1 0 埠宣告 sbit 移位 uint temp uint temp1 uint temp2 uint te void delay ms int time 延遲函式 作業要求 使用陣列 cror...