minu_stupid
03-04-2012, 08:48 PM
chào mọi người!! em có cái code đồ án vdk viết bằng codevision theo kiểu chương trình con em không hiểu lắm mong cac pro giải đáp giùm..cảm ơn các pro nhìu:
#include <mega16.h>
#include <delay.h>
#define dulieu1 PORTD
#define dulieu2 PORTA
#define SER PORTC.0
#define SCLK PORTC.1
#define LCLK PORTC.2
#define G PORTC.3
unsigned char i,j,n;
int t;
unsigned char maled[]=
{
0x00,0x00,0x00,0x00,0x1C,0x04,0x04,0x04,0x04,0xFC, 0xFC,0xFC,0x04,0x04,0x04,0x04,
0x1C,0x04,0x04,0xFC,0xFC,0xFC,0x04,0x04,0x04,0x04, 0x0C,0xFC,0xF8,0xF0,0x00,0x00,
0x04,0x04,0xFC,0xFC,0xFC,0x04,0x04,0x00,0x00,0x00, 0x04,0x05,0xFD,0x07,0x05,0x00,
0xC0,0xF1,0xF9,0x3A,0x0C,0x04,0x05,0x05,0x07,0x0D, 0x38,0xF8,0xF0,0xC0,0x00,0x00,
0x04,0xFC,0x0C,0x1C,0x7C,0xF0,0xE0,0x80,0x00,0x04, 0x04,0xFC,0x04,0x04,0x00,0xC0,
0xF0,0xF8,0x38,0x0C,0x04,0x04,0x04,0x04,0x0C,0x08, 0x38,0x7C,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0xC0,0xF0,0xF8,0x38,0x0C,0x0C, 0x04,0x04,0x04,0x04,0x08,0x38,
0x7C,0x00,0x04,0x84,0xFC,0xFC,0xFC,0x84,0x04,0x04, 0x0C,0x0C,0x38,0xF8,0xF0,0xC0,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0xF0,0xF8, 0x38,0x0C,0x0C,0x04,0x04,0x04,
0x04,0x08,0x38,0x7C,0x00,0x00,0xC0,0xF0,0xF8,0x38, 0x0E,0x05,0x05,0x05,0x05,0x0E,
0x38,0xF8,0xF0,0xC0,0x00,0x00,0x04,0xFC,0x0C,0x1C, 0x7C,0xF0,0xE0,0x80,0x00,0x04,
0x04,0xFC,0x04,0x04,0x00,0xC0,0xF0,0xF8,0x38,0x0C, 0x04,0x04,0x04,0x04,0x0C,0x08,
0x38,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C, 0x04,0x04,0x04,0x04,0xFC,0xFC,
0xFC,0x04,0x04,0x04,0x04,0x1C,0x04,0x04,0xFC,0xFC, 0xFC,0x04,0x04,0x00,0x00,0x04,
0x04,0xFC,0xFC,0xFC,0x04,0x04,0x04,0x04,0xFC,0xFC, 0xFC,0x04,0x04,0x00,0x00,0x00,
0x04,0x05,0xFD,0x07,0x05,0x00,0xC0,0xF0,0xF8,0x38, 0x0C,0x04,0x05,0x05,0x07,0x0D,
0x38,0xF8,0xF0,0xC0,0x00,0x00,0x04,0xFC,0x0C,0x1C, 0x7C,0xF0,0xE0,0x80,0x00,0x04,
0x04,0xFC,0x04,0x04,0x00,0xC0,0xF0,0xF8,0x38,0x0C, 0x04,0x04,0x04,0x04,0x0C,0x08,
0x38,0x7C,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1C, 0x04,0x04,0x04,0x04,0xFC,0xFC,
0xFC,0x04,0x04,0x04,0x04,0x1C,0x04,0x04,0xFC,0xFC, 0xFC,0x04,0x04,0x04,0x04,0x0C,
0xF8,0xF8,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x04, 0x04,0xFC,0xFC,0xFC,0x04,0x04,
0x00,0x00,0x04,0x04,0xFC,0xFC,0xFC,0x04,0x04,0x00, 0xC0,0xF0,0xF8,0x38,0x0C,0x0C,
0x04,0x04,0x04,0x04,0x08,0x38,0x7C,0x00,0x04,0x04, 0xFC,0x1C,0xFC,0xFC,0xE0,0x80,
0x00,0x00,0x00,0x80,0x60,0x1C,0xFC,0xFC,0xFC,0x04, 0x04,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x04,0x04,0xFC,0xFC,0xFC,0x04,0x04,0x80, 0x40,0x20,0x14,0x0C,0x0C,0x04,
0x04,0x00,0x04,0x04,0xFC,0xFC,0xFC,0x04,0x04,0x00, 0x00,0x04,0x04,0xFC,0xFC,0xFC,
0x04,0x04,0x00,0xC0,0xF0,0xF8,0x38,0x0C,0x04,0x04, 0x04,0x04,0x0C,0x38,0xF8,0xF0,
0xC0,0x00,0x00,0x00,0x00,0x00,0x00,0xC0,0x30,0x7C, 0xFC,0xE0,0x80,0x00,0x00,0x00,
0x00,0x00,0x00,0xC0,0xC0,0xC0,0x00,0x00,0x04,0x84, 0xFC,0xFC,0xFC,0x84,0x04,0x04,
0x0C,0x0C,0x38,0xF8,0xF0,0xC0,0x00,0x04,0x84,0xFC, 0xFC,0xFC,0x84,0x04,0x04,0x0C,
0x0C,0x38,0xF8,0xF0,0xC0,0x00,0x1C,0x04,0x04,0x04, 0x04,0xFC,0xFC,0xFC,0x04,0x04,
0x04,0x04,0x1C,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x04,0x04,0xFC,0xFC,0xFC, 0x04,0x04,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0xC0,0xF0,0xF8,0x38,0x0C,0x04,0x05, 0x05,0x07,0x0D,0x3A,0xF9,0xF1,
0xC0,0x00,0x04,0x04,0xFC,0xFC,0xFC,0x04,0x04,0x04, 0x04,0x0C,0xF8,0xF8,0xF0,0x00,
0x00,0x00,0xC0,0xC0,0xC0,0x00,0x00,0x04,0x84,0xFC, 0xFC,0xFC,0x84,0x04,0x04,0x0C,
0x0C,0x38,0xF8,0xF0,0xC0,0x00,0x1C,0x04,0x04,0x04, 0x04,0xFC,0xFC,0xFC,0x04,0x04,
0x04,0x04,0x1C,0x00,0xC0,0xF0,0xF8,0x04,0x04,0x04, 0xF8,0xF0,0xE0,0x00,0x00,0xF0,
0xF8,0xFC,0x04,0x04,0x0C,0xF8,0xF8,0xE0,0x00,0x00, 0x04,0x04,0xFC,0xFC,0xFC,0x04,
0x04,0x04,0x8C,0xFC,0xF8,0x70,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
};
unsigned char maled1[]=
{
0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF,0x80,0x80, 0x00,0x00,0x00,0x80,0x80,0xFF,
0xFF,0xFF,0x82,0x82,0x06,0x1E,0x3F,0x7B,0xE1,0xC0, 0x80,0x80,0x00,0x00,0x1F,0x7F,
0x7F,0xC0,0x80,0x80,0x80,0x80,0x40,0x60,0x1F,0x00, 0x00,0x00,0x0F,0x3F,0x7F,0x70,
0xC0,0x80,0x80,0x80,0x80,0xC0,0x70,0x7F,0x3F,0x0F, 0x00,0x80,0x80,0xFF,0x80,0x80,
0x00,0x00,0x01,0x07,0x0F,0x1E,0x78,0xFF,0x00,0x00, 0x00,0x0F,0x3F,0x7F,0x70,0xC0,
0x80,0x80,0x80,0x84,0x84,0xFC,0x7C,0x7C,0x04,0x04, 0x00,0x00,0x00,0x00,0x00,0x00,
0x0F,0x3F,0x7F,0x70,0xC0,0xC0,0x80,0x80,0x80,0x80, 0x40,0x40,0x20,0x00,0x80,0x80,
0xFF,0xFF,0xFF,0x80,0x80,0x80,0x80,0xC0,0x70,0x7F, 0x3F,0x0F,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x0F,0x3F,0x7F,0x70,0xC0,0xC0,0x80, 0x80,0x80,0x80,0x40,0x40,0x20,
0x00,0x00,0x0F,0x3F,0x7F,0x70,0xC0,0x80,0x80,0x80, 0x80,0xC0,0x70,0x7F,0x3F,0x0F,
0x00,0x80,0x80,0xFF,0x80,0x80,0x00,0x00,0x01,0x07, 0x0F,0x1E,0x78,0xFF,0x00,0x00,
0x00,0x0F,0x3F,0x7F,0x70,0xC0,0x80,0x80,0x80,0x84, 0x84,0xFC,0x7C,0x7C,0x04,0x04,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80, 0xFF,0xFF,0xFF,0x80,0x80,0x00,
0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF,0x81,0x81,0x01, 0x01,0x81,0x81,0xFF,0xFF,0xFF,
0x80,0x80,0x00,0x00,0x1F,0x7F,0x7F,0xC0,0x80,0x80, 0x80,0x80,0x40,0x60,0x1F,0x00,
0x00,0x00,0x0F,0x3F,0x7F,0x70,0xC0,0x80,0x80,0x80, 0x80,0xC0,0x70,0x7F,0x3F,0x0F,
0x00,0x80,0x80,0xFF,0x80,0x80,0x00,0x00,0x01,0x07, 0x0F,0x1E,0x78,0xFF,0x00,0x00,
0x00,0x0F,0x3F,0x7F,0x70,0xC0,0x80,0x80,0x80,0x84, 0x84,0xFC,0x7C,0x7C,0x04,0x04,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80, 0xFF,0xFF,0xFF,0x80,0x80,0x00,
0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF,0x82,0x82,0x02, 0x02,0x03,0x01,0x01,0x00,0x00,
0x00,0xE0,0xE0,0xE0,0x00,0x80,0x80,0xFF,0xFF,0xFF, 0x81,0x81,0x01,0x01,0x81,0x81,
0xFF,0xFF,0xFF,0x80,0x80,0x00,0x0F,0x3F,0x7F,0x70, 0xC0,0xC0,0x80,0x80,0x80,0x80,
0x40,0x40,0x20,0x00,0x80,0x80,0xFF,0x80,0x80,0x03, 0x1F,0x7F,0xFC,0x30,0x0E,0x03,
0x80,0x80,0xFF,0xFF,0xFF,0x80,0x80,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x08,0x08,0x08,0x08,0x08,0x08,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x80,0x80,
0xFF,0xFF,0xFF,0x81,0x87,0x0F,0x1E,0xBC,0xF0,0xE0, 0xC0,0x80,0x80,0x00,0x80,0x80,
0xFF,0xFF,0xFF,0x81,0x81,0x01,0x01,0x81,0x81,0xFF, 0xFF,0xFF,0x80,0x80,0x00,0x0F,
0x3F,0x7F,0x70,0xC0,0x80,0x80,0x80,0x80,0xC0,0x70, 0x7F,0x3F,0x0F,0x00,0x80,0xC0,
0xE0,0x98,0x8F,0x08,0x08,0x08,0x0B,0x8F,0xFF,0xFC, 0xF0,0xC0,0x80,0x00,0x00,0xE1,
0xE1,0xE1,0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF,0x80, 0x80,0x80,0x80,0xC0,0x70,0x7F,
0x3F,0x0F,0x00,0x80,0x80,0xFF,0xFF,0xFF,0x80,0x80, 0x80,0x80,0xC0,0x70,0x7F,0x3F,
0x0F,0x00,0x00,0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF, 0x80,0x80,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x08,0x08,0x08,0x08,0x08,0x08, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x80,0x80,0xFF,0xFF,0xFF,0x80,0x80,0x80,0x80, 0x80,0xC0,0xF0,0x38,0x00,0x0F,
0x3F,0x7F,0x70,0xC0,0x80,0x80,0x80,0x80,0xC0,0x70, 0x7F,0x3F,0x0F,0x00,0x80,0x80,
0xFF,0xFF,0xFF,0x82,0x82,0x02,0x02,0x03,0x01,0x01, 0x00,0x00,0x00,0x00,0xE1,0xE1,
0xE1,0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF,0x80,0x80, 0x80,0x80,0xC0,0x70,0x7F,0x3F,
0x0F,0x00,0x00,0x00,0x00,0x80,0x80,0xFF,0xFF,0xFF, 0x80,0x80,0x00,0x00,0x00,0x00,
0x0F,0x3F,0x7F,0x80,0x80,0x80,0x7F,0x3F,0x0F,0x00, 0x00,0x81,0x83,0xC7,0x46,0x64,
0x3C,0x3F,0x0F,0x03,0x00,0x00,0x80,0x80,0xFF,0xFF, 0xFF,0x81,0x81,0x81,0x83,0xC7,
0xFE,0x7E,0x3C,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0x00,0x00,0x00,0x00,0x00,0x00,
};
void shift_left1(void) //DICH TU TRAI QUA PHAI
{
for(t=0;t<=648;t++)//TONG SO DU LIEU BANG DB
{
for(n=0;n<100;n++)// THOI GIAN DICH 1 O
{
for(i=0;i<=64;i++)// TONBG SO CIT HIEN CO
{
dulieu1=0xFF;
dulieu2=0xff;
SCLK=0;
if(i==0) {SER=0;}
else {SER=1;}
SCLK=1;
LCLK=0;
LCLK=1;
dulieu1=~maled[i+t];
dulieu2=~maled1[i+t];
delay_us(10);
};
};
};
};
void shift_right(void)//CHAY TU PHAI QUA TRAI
{
for(t=648;t>=0;t--) //GIAM T
{
for(n=0;n<100;n++) //TANG N
{
for(i=0;i<=64;i++)// TANG I
{
dulieu1=0xff;
dulieu2=0xff;
SCLK =0;
if(i==0) {SER=0;}
else {SER=1;}
SCLK=1;
LCLK=0;
LCLK=1;
dulieu1=~maled[i+t];
dulieu2=~maled1[i+t];
delay_us(10); // thoi gian delay
};
};
};
};
void main(void)
{
PORTC=0x00;
DDRC=0x7F;
PORTD=0x00;
DDRD=0xFF;
PORTB=0x00;
DDRB=0xFF;
DDRA=0XFF;
PORTA=0XFF;
while (1)
{
for(j=0;j<=64;j++){
dulieu1=0xff;
SER=0;
SCLK=1;
LCLK=1;
SCLK=0;
LCLK=0;
};
SER=0;
SCLK=0;
delay_us(50);
shift_left1();
shift_right();
}
}
vBulletin® v3.8.11, Copyright ©2000-2025, vBulletin Solutions Inc.