3、取模軟體簡單介紹
4、點陣動畫顯示
5.收穫
led點陣由多個led小燈構成,以8*8led點陣介紹,實物圖和內部原理圖如下。
圖7-2左側8個引腳為內部led小燈陽極,上側8個引腳為陰極。
點亮led點陣與點亮led小燈原理相似,根據led點陣電路圖分析即可,詳細見第三章。
利用定時器中斷和數碼管動態顯示原理,就不進行說明,詳細見第六章
取模軟體可以將led位圖形的資料轉換為程式中的資料。取模軟體中黑色為led熄滅,值為1,白色為led點亮,值為0。如下圖繪製了乙個心形。
下面來說明取模軟體引數的選取。
取模方式:根據led點陣結構原理圖,po口控制的是一行,選擇「橫向取模」,控制的是一列,則選擇「縱向取模」。
位元組倒序:根據led點陣結構原理圖,若po口左側控制的是低位,右側控制高位,勾選該選項,否則不勾選。
//led點陣i love you 左右橫向移動
#include
sbit addr0 = p1^0;
sbit addr1 = p1^1;
sbit addr2 = p1^2;
sbit addr3 = p1^3;
sbit enled = p1^4;
unsigned
char code image[60]
[8]=
,//往左動畫
,//動畫幀2,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,//動畫幀 30
,//往右動畫,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,,
,,,//動畫幀60};
void
main()
void
intertupttimer0
() interrupt 1
//以下**完成每250ms改變一幀影象
tmr++;if
(tmr >=
250)
//達到250ms改變一次索引
}}
左右移動動畫和上下移動動畫,會因led點陣原理圖中是橫向取模或縱向取模而顯得難度不同,若led點陣是橫向取模,則上下移動動畫容易實現(因不同字模資料是連續的),而左右移動動畫不易實現(因不同字模資料是不連續的)。博主用的led點陣為橫向取模,上下移動動畫程式就不展示了,上面展示了左右移動動畫程式。
//led點陣動畫9-0倒計時
#include
sbit addr0 = p1^0;
sbit addr1 = p1^1;
sbit addr2 = p1^2;
sbit addr3 = p1^3;
sbit enled = p1^4;
unsigned
char code image[11]
[8]=
,//數字0
,//數字1
,//數字2
,//數字3
,//數字4
,//數字5
,//數字6
,//數字7
,//數字8
,//數字9
,//全亮};
void
main()
void
intertupttimer0
() interrupt 1
//以下**完成每1s改變一幀影象
tmr++;if
(tmr >=
1000
)//達到1s改變一次索引
}}
#include
sbit addr0 = p1^0;
sbit addr1 = p1^1;
sbit addr2 = p1^2;
sbit addr3 = p1^3;
sbit enled = p1^4;
void
main()
//以下為定時器t1的中斷函式
void
interrupttimer1
() interrupt 3
}
有前面章節的鋪墊,本章內容並不難,原理與數碼管的動態掃瞄相似。小燈部分從這節就結束了,總體偏簡單,接下來是通訊部分,聽說有點難度,還是加油學吧,部落格以後也寫簡練點了,保證這個暑假能學完這本書,奧里給奧列給!! 51微控制器 LED點陣
這次的程式是通過控制led點陣,點亮乙個 號。我們使用的是乙個8 8的電子,需要操作16bit,實現對行和列的管理,這點其實和矩陣按鍵是有些類似,只不過乙個是輸入,乙個是輸出,都是通過逐行掃瞄實現的 矩陣按鍵由於每次只檢查乙個按鍵,也可以使用行列掃瞄 下面是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微控制器自學筆記
中斷tmod 定時器工作方式暫存器 tcon 定時器控制暫存器 thx,tlx計算方法 定時器 計數器高階應用 52微控制器特有的定時器2 計數功能的應用 數碼管按鍵 序列口通訊 i 2 c通訊 spi通訊 數模轉換 esp8266wifi模組 目前正在準備寫乙個51微控制器庫,希望能實現51的大多...