Huynh Thanh San
27-07-2009, 11:01 PM
================================================== =================
Doan chuong trinh cua em nhu sau :
#include <16f877a.h>
#use delay(clock=20000000)
#define hang PORTD
#define cot PORTB
#define Cot1 PORTC
#byte PORTD =0x08
#byte PORTB =0x06
#byte PORTC =0x07
#byte trisc =0x87
#byte trisb =0x86
#byte trisd =0x88
const unsigned char chuA[]={ 0b00010000, //BitRB4
0b00011000,0b00010100,0b00011100,0b00010010,0b0001 1010,0b00010110,0b00011110,
0b00100000, //BitRB5
0b00101000,0b00100100,0b00101100,0b00100010,0b0010 1010,0b00100110,0b00101110,
0b01000000, //BitRB6
0b01001000,0b01000100,0b01001100,0b01000010,0b0100 1010,0b01000110,0b01001110,
0b10000000, //BitRB7
0b10001000,0b10000100,0b10001100,0b10000010,0b1000 1010,0b10000110,0b10001110};
const unsigned char font[]={251,224,219,255,192,247,247,207,255,231,219,219, 195,255,195,251,251,199,255,192,247,247,207,255,25 5,255,255,217,182,182,205,255,231,219,219,195,255, 195,
251,251,199,255,239,87,87,135,255,255,255,129,126, 126,129,255,241,110,110,129,255,254,14,246,248,255 ,231,235,237,0,239,255,110,110,110,145,255,125,0,1 27,
255,29,110,118,121,255,125,0,127,255,29,110,118,12 1,255,110,110,110,145,255,255,63,63,255,255,255,25 5,255,255,255,255,255};
void Display(unsigned char timer1,unsigned char k) {
unsigned char i,j,m;
set_tris_d(0);
set_tris_b(0);
set_tris_c(0);
for(i=0;i<timer1;i++)
{
m = 0;
for(j=0;j<=20;j++)
{
Cot = chuA[j];
Cot1 = chuA[j+32];
hang = 0xff;
if(j>=k)
{
hang = font[m];
m ++;
}
}
}
}
void main()
{
while(true){
unsigned char k=33,m=0;
while(true)
{
Display(33,k);
k=k-1;
if(k==0)
{
while(true)
{
Display(1000,k);
for(m=0;m<=20;m++)
{
font[m]=font[m+1];
hang = 0xff;
}
}
}
}
}
}
================================================== =============
Doan chuong trinh cua em nhu sau :
#include <16f877a.h>
#use delay(clock=20000000)
#define hang PORTD
#define cot PORTB
#define Cot1 PORTC
#byte PORTD =0x08
#byte PORTB =0x06
#byte PORTC =0x07
#byte trisc =0x87
#byte trisb =0x86
#byte trisd =0x88
const unsigned char chuA[]={ 0b00010000, //BitRB4
0b00011000,0b00010100,0b00011100,0b00010010,0b0001 1010,0b00010110,0b00011110,
0b00100000, //BitRB5
0b00101000,0b00100100,0b00101100,0b00100010,0b0010 1010,0b00100110,0b00101110,
0b01000000, //BitRB6
0b01001000,0b01000100,0b01001100,0b01000010,0b0100 1010,0b01000110,0b01001110,
0b10000000, //BitRB7
0b10001000,0b10000100,0b10001100,0b10000010,0b1000 1010,0b10000110,0b10001110};
const unsigned char font[]={251,224,219,255,192,247,247,207,255,231,219,219, 195,255,195,251,251,199,255,192,247,247,207,255,25 5,255,255,217,182,182,205,255,231,219,219,195,255, 195,
251,251,199,255,239,87,87,135,255,255,255,129,126, 126,129,255,241,110,110,129,255,254,14,246,248,255 ,231,235,237,0,239,255,110,110,110,145,255,125,0,1 27,
255,29,110,118,121,255,125,0,127,255,29,110,118,12 1,255,110,110,110,145,255,255,63,63,255,255,255,25 5,255,255,255,255,255};
void Display(unsigned char timer1,unsigned char k) {
unsigned char i,j,m;
set_tris_d(0);
set_tris_b(0);
set_tris_c(0);
for(i=0;i<timer1;i++)
{
m = 0;
for(j=0;j<=20;j++)
{
Cot = chuA[j];
Cot1 = chuA[j+32];
hang = 0xff;
if(j>=k)
{
hang = font[m];
m ++;
}
}
}
}
void main()
{
while(true){
unsigned char k=33,m=0;
while(true)
{
Display(33,k);
k=k-1;
if(k==0)
{
while(true)
{
Display(1000,k);
for(m=0;m<=20;m++)
{
font[m]=font[m+1];
hang = 0xff;
}
}
}
}
}
}
================================================== =============