大家看下我的程序有錯(cuò)誤嗎?另求一份16*16漢字點(diǎn)陣原理圖。
#include<reg52.h>
#include<74HC595.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table_L[]={0xff,0x7f, 0xff,0xbf, 0xff,0xdf, 0xff,0xef, 0xff,0xf7, 0xff,0xfb, 0xff,0xfd, 0xff,0xfe,
0x7f,0xff, 0xbf,0xff, 0xdf,0xff, 0xef,0xff, 0xf7,0xff, 0xfb,0xff, 0xfd,0xff, 0xfe,0xff};
uchar code table_H[]={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",0*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,/*" ",1*/
0x08,0x00,0x08,0x08,0x08,0x88,0x7E,0x88,0x08,0x50,0x0A,0x50,0xFF,0x20,0x08,0x20,
0x28,0x50,0x2E,0x48,0x28,0x8C,0x39,0x04,0x48,0x00,0x44,0x06,0x83,0xFC,0x00,0x00,/*"趙",0*/
0x10,0x00,0x11,0xFE,0x95,0x04,0x56,0x40,0x38,0x48,0x11,0xFC,0xFE,0x80,0x29,0x20,
0x29,0xFC,0x28,0x20,0x28,0x24,0x2B,0xFE,0x4C,0x20,0x48,0x20,0x80,0x20,0x00,0x20,/*"輝",1*/
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x0C,0x00,0x1E,0x00,0x1E,0x00,0x0C,0x00,0x04,0x00,0x08,0x00,0x10,0x00,0x00,0x00,/*",",2*/
0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x0F,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,
0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x1F,0xF8,0x00,0x00,0x00,0x00,/*"1",3*/
0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xF8,0x0C,0x38,0x18,0x10,0x38,0x00,0x3F,0xF8,
0x7C,0x1C,0x78,0x0C,0x38,0x0E,0x38,0x0C,0x1C,0x18,0x0F,0xF0,0x00,0x00,0x00,0x00,/*"6",4*/
0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xC0,0x0F,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,
0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x01,0xC0,0x1F,0xF8,0x00,0x00,0x00,0x00,/*"1",5*/
0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xF8,0x0C,0x38,0x18,0x10,0x38,0x00,0x3F,0xF8,
0x7C,0x1C,0x78,0x0C,0x38,0x0E,0x38,0x0C,0x1C,0x18,0x0F,0xF0,0x00,0x00,0x00,0x00,/*"6,6*/
0x10,0x00,0x11,0xFE,0x95,0x04,0x56,0x40,0x38,0x48,0x11,0xFC,0xFE,0x80,0x29,0x20,
0x29,0xFC,0x28,0x20,0x28,0x24,0x2B,0xFE,0x4C,0x20,0x48,0x20,0x80,0x20,0x00,0x20,/*"1",7*/
0x10,0x00,0x11,0xFE,0x95,0x04,0x56,0x40,0x38,0x48,0x11,0xFC,0xFE,0x80,0x29,0x20,
0x29,0xFC,0x28,0x20,0x28,0x24,0x2B,0xFE,0x4C,0x20,0x48,0x20,0x80,0x20,0x00,0x20,/*"1",8*/
};
uchar L=0,H=0;
uint t=0,x=0;
#define h sizeof(table_H)
void main()
{
// extern uint h;
EA=1;
ET0=1;
TMOD=0x01;
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
TR0=1;
// h=sizeof(table_H);
while(1)
{
if(L==32)
{
L=0;
H=0;
}
}
}
void T0_time() interrupt 1
{
TH0=(65536-1000)/256;
TL0=(65536-1000)%256;
Input(table_L[L]);
Input(table_L[L+1]);
Input(table_H[H+x]);
Input(table_H[H+x+1]);
Output();
L=L+2;
// if(L==32)L=0;
H=H+2;
// if(H==32)H=0;
t++;
if(t==100)//移動(dòng)
{
t=0;
x=x+2;
if(x>=h-32)x=0;
}
}
|