How to use Interrupt in PIC16F877A in C..??

I just drew that in paint... Have you downloaded FASTLcd? If you draw a bitmap in paint ( black and white bmp ) you can load it into FASTLcd then output a "*.BAS" file.. I then convert it to C in Textpad by renaming all the "&H" to "0x" and put it in a file so I can include it in my C build...

The best results are achieved by using Photoshop or Paint shop pro... With these you can bring a picture down to 1 bit neater...
 
OK, for making clear pic i should use 24x40 LED so, i should do this in layout PCB design i am confused as i have made 16x40 led in pcb123 but how to add 24x40 will be bit more complicated...
i will order to pcb power for making pcb...may be double side!!
 

I am using Photoshop 7 and image size at 16x40 Led and what should be the resolution of it???
 
I need your help again with Photoshop as ghosting image is coming in output how to remove it????

I don't know what you mean...

If you mean that when you reduce the colours its a bit smudgy... Or what!
 
Hi,

today i have completed new code with row scanning...
now i want to know how to add effect and scrolling in t...
one thing more use of reset in shift register or not because i it with code when new data is sent....
 
The original tutorial was with row scanning.

which one?

What shift register are you using?
I am using 74Hc164....













Code:
#include <htc.h>
__CONFIG(LVP_OFF & BOREN_OFF & PWRTE_ON & WDTE_OFF & FOSC_HS);
#define _XTAL_FREQ 20000000


#define DAD PORTB
#define RST RC6
#define CLK RC3
#define DATA RC4
extern const char Font2[];unsigned char leds[32];
unsigned char pow[] = {128,64,32,16,8,4,2,1};
 display(char *str);
int data( int p);

int t;
char b,e;
main (){
TRISC=0B00000000;
TRISB=0B00000000;


while(1){
              display("Ram..");



char u=-1;


b=0b00000001;

for(int r=0;r<8;r++){

DAD=pow[r];
__delay_ms(10);

RST=0;
RST=1;
u++;


for(int a=0;a<32;a++){
DAD=0;
RST=1;
char t,n;
n=leds[a];
n>>=u;

t=(n & b);


DATA=t;
CLK=1;


CLK=0;





}


}
}
}



 display(char *str)   
{

int addr;                                                      
int z;
while(*str!=0){
 addr = ((int)*str++ - 0x20); 
addr *= 5;
int y=0;
for(z=0;z<5;z++){
        leds[z] = Font2[addr+y];
y++;
}

addr = ((int)*str++ - 0x20); 
addr *= 5;
int y=0;
for(z=6;z<11;z++){
leds[z] = Font2[addr+y];
y++;
}
addr = ((int)*str++ - 0x20); 
addr *= 5;
int y=0;
for(z=12;z<17;z++){
leds[z] = Font2[addr+y];
y++;
}
addr = ((int)*str++ - 0x20); 
addr *= 5;
int y=0;
for(z=18;z<23;z++){
leds[z] = Font2[addr+y];
y++;
}
addr = ((int)*str++ - 0x20); 
addr *= 5;
int y=0;
for(z=24;z<29;z++){
leds[z] = Font2[addr+y];
y++;
}


}
}
 
Cookies are required to use this site. You must accept them to continue using the site. Learn more…