?? led8x8.c
字號:
/**********************************************************************
*
* 文件名: LED8X8.C (for ELITE-III)
*
* 版本號: 0.1
*
* 原作者: ZeroStar < boylinxing@tom.com >
*
* 修改者: ZeroStar < boylinxing@tom.com >
*
* 創建日期: 01 / 17 / 2007
*
* 更新日期: 01 / 17 / 2007
*
* 文件功能:
*
* 占用資源:
*
* 使用說明:
*
**********************************************************************/
#include <reg51.h>
#include <intrins.h>
#include "elite-iii.h"
#include "led8x8.h"
// 調用 LED8X8_SET_ROW(row_mask[i]) 將選中第 i 行
static unsigned char code row_mask[8] = {
0xfe, 0xfd, 0xfb, 0xf7, 0xbf, 0xdf, 0xef, 0x7f
};
/*
* 函數:delay
* ------------------------------------------------------------------
* 延時函數
*/
static void delay(unsigned char t) { while (t--) ; }
/*
* 函數:led8x8_display
* ------------------------------------------------------------------
* 將點陣數據 mat[] 中 8 個元素的值分別在 8 x 8 LED 點陣的 8 行上
* 動態掃描顯示一遍。例如:
*
* unsigned char code H[8] = {
* 0xff, 0xff, 0x18, 0xbd, 0x81, 0xbd, 0x18, 0xff
* };
* while (1) {
* led8x8_display(H);
* }
*
* 將顯示:
*
* . . . . . . . .
* . . . . . . . .
* o o o . . o o o
* . o . . . . o .
* . o o o o o o .
* . o . . . . o .
* o o o . . o o o
* . . . . . . . .
*/
void led8x8_display(unsigned char mat[])
{
unsigned char i;
for (i = 0; i < 8; i++) {
LED8X8_SET_ROW(row_mask[i]);
LED8X8_SET_COL(mat[i]);
delay(100);
LED8X8_SET_COL(0xff);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -