51微控制器 LED點陣

2021-10-09 08:01:37 字數 985 閱讀 5635

這次的程式是通過控制led點陣,點亮乙個+號。我們使用的是乙個8×8的電子,需要操作16bit,實現對行和列的管理,這點其實和矩陣按鍵是有些類似,只不過乙個是輸入,乙個是輸出,都是通過逐行掃瞄實現的(矩陣按鍵由於每次只檢查乙個按鍵,也可以使用行列掃瞄)。

下面是led點陣的原理圖

從上圖可以看出,每乙個led都是乙個發光二極體,要讓某乙個led發光,就需要在一端設定為高電平(1),另一端是低電平(0);按照上圖的實現,行是要設定為高電平,列設定為低電平,行列交叉的led就會被點亮。每次可以控制一行或一列的led,然後進行逐行或逐列掃瞄即可。

下面是實現**:

#include

#include

typedef

unsigned

int u16;

typedef

unsigned

char u8;

sbit ser=p3^4;

sbit srclk=p3^6;

sbit rclk=p3^5;

#define leds p0

u8 tmp,i;

u8 lednum;

u8 plus[8]

=;//顯示+號需要一次顯示的內容

void

hc595sendbyte

(u8 byte)

//這個函式是用來傳送串轉並的資料,每次傳送乙個位元組,對應8個行引腳

rclk=0;

//讓rclk輸入乙個上公升沿,並口輸出資料

rclk=1;

}void

delay_ms

(u16 n)

}void

main()

}

上面就是led點陣的實現**了,是通過逐列掃瞄實現的,當然也可以通過逐行事項,需要注意的就是殘影的消除。

自學51微控制器 7 LED點陣學習

3 取模軟體簡單介紹 4 點陣動畫顯示 5.收穫 led點陣由多個led小燈構成,以8 8led點陣介紹,實物圖和內部原理圖如下。圖7 2左側8個引腳為內部led小燈陽極,上側8個引腳為陰極。點亮led點陣與點亮led小燈原理相似,根據led點陣電路圖分析即可,詳細見第三章。利用定時器中斷和數碼管動...

51微控制器LED點陣重影(74HC595)

如下 include include intrins.h typedef unsigned char u8 typedef unsigned int u16 sbit srclk p3 6 sbit rclk p3 5 sbit ser p3 4 u8 a u16 code c u16 code b...

51微控制器控制LED顯示漢字

2007 12 25 12 34 26 用51微控制器控制led顯示漢字,電路中行方向由p0口和p2口完成掃瞄,由於p0口沒有上拉電阻,因此接乙個4.7k 8的排阻上拉。如沒有排阻,也可用8個普通的4.7k 1 8w電阻。為提供負載能力,接16個2n5551的npn三極體驅動。列方向則由4 16解碼...