em đang test led matrix 8x8 mà sao khi viết code cho nó chạy thì một số chữ nó lại bị thiếu mất 1 cột, VD như chữ này.....
Phần cứng: Port 3 qua uln 2803 để quét cột, data xuất ra hàng qua Port 2
đây là code ạ....
còn 1 vấn đề nữa là sau mỗi lần cuộn thì có 1 cột lại lóe sáng lên.....ko hiểu vì sao nữa.........mong mọi người giúp đỡ ạ.....thanks all
Phần cứng: Port 3 qua uln 2803 để quét cột, data xuất ra hàng qua Port 2
đây là code ạ....
#include <AT89x52.h>
unsigned char cot[8] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80 };
unsigned char const hang[] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x7f, 0x30, 0x18, 0x0c, 0x06, 0x7f, 0x00, (chữ N)
0x3e, 0x41, 0x41, 0x45, 0x26, 0x04, 0x00, (chữ G)
0x7f, 0x08, 0x08, 0x08, 0x7f, 0x00, (Chữ H)
0x7f, 0x49, 0x49, 0x41, 0x00, (chữ E)
0x00, 0x00, 0x00, (trắng)
0x1f, 0x24, 0x44, 0x24, 0x1f, 0x00, (Chữ A)
0x7f, 0x30, 0x18, 0x0c, 0x06, 0x7f, 0x00, (Chữ N)
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
unsigned char i,j,k;
void delay(unsigned int time)
{
while(time--);
}
void main(void)
{
for(i=0;i<49;i++)
{
for(k=0;k<50;k++)
{
for(j=i;j<(i+8);j++)
{
P3=cot[j-i];
P2=hang[j];
delay(75);
}
}
}
}
unsigned char cot[8] = {0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80 };
unsigned char const hang[] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x7f, 0x30, 0x18, 0x0c, 0x06, 0x7f, 0x00, (chữ N)
0x3e, 0x41, 0x41, 0x45, 0x26, 0x04, 0x00, (chữ G)
0x7f, 0x08, 0x08, 0x08, 0x7f, 0x00, (Chữ H)
0x7f, 0x49, 0x49, 0x41, 0x00, (chữ E)
0x00, 0x00, 0x00, (trắng)
0x1f, 0x24, 0x44, 0x24, 0x1f, 0x00, (Chữ A)
0x7f, 0x30, 0x18, 0x0c, 0x06, 0x7f, 0x00, (Chữ N)
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};
unsigned char i,j,k;
void delay(unsigned int time)
{
while(time--);
}
void main(void)
{
for(i=0;i<49;i++)
{
for(k=0;k<50;k++)
{
for(j=i;j<(i+8);j++)
{
P3=cot[j-i];
P2=hang[j];
delay(75);
}
}
}
}
còn 1 vấn đề nữa là sau mỗi lần cuộn thì có 1 cột lại lóe sáng lên.....ko hiểu vì sao nữa.........mong mọi người giúp đỡ ạ.....thanks all
Comment