/* 名称:按键控制 8X8LED 点阵屏显
示图形
说明:每次按下 K1 时,会使 8X8LED
点阵屏循环显示不同图形。
本例同时使用外部中断和定
时中断。
*/
#includereg51.h>
#includeintrins.h>
#define uchar unsigned char
#define uint unsigned int
//待显示图形编码
uchar code M[][8]=
{
{0x00,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x00}, //图 1
{0x00,0x38,0x44,0x54,0x44,0x38,0x00,0x00}, //图 2
{0x00,0x20,0x30,0x38,0x3c,0x3e,0x00,0x00} //图 3
};
uchar i,j;
//主程序
void main()
{
P0=0xff;
P1=0xff;
TMOD=0x01; //T0 方式 1
TH0=(65536-2000)/256;//2ms 定时
TL0=(65536-2000)%256;
IT0=1; //下降沿触发
IE=0x83; //允许定时器 0、外部 0 中断
i=0xff; //i 的初值设为 0xff,加 1 后将从 0 开始
while(1);
}