amitdeepvij
Newbie level 1
I have used a 555 timer for generating interrupt instead of moc7811.
My program is working correctly.
I just wanna know that how can i synchronize the dc motor RPM with the delay of interrupt so the pattern will appear.Below is my C program.Just tell me what alterations i have 2 do in this program
#include <reg51.h>
#define DISPL 80
#define MESS 984 // 984 bytes
#define DATAP P1
void DISP_SHOW();
void DISP_LOAD_BYTE(unsigned char A, unsigned char D);
void DISP_LOAD_BLOCK(unsigned char bf, unsigned char bt);
void DISP_LSHIFT(unsigned char DATA);
void DEL(unsigned int x);
xdata unsigned char MESSAGE[MESS]= {
0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x30, 0xA0,
0x30, 0x20, 0x38, 0x04, 0x02, 0xFD, 0x00, 0x60,
0x50, 0x48, 0xF8, 0x80, 0x80, 0x82, 0x84, 0xF6,
0x84, 0x82, 0x80, 0x80, 0xFC, 0x00, 0xFC, 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,
0x7E, 0xFE, 0xC0, 0x70, 0x70, 0xC0, 0xFE, 0x7E,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xC6, 0x44, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// W
// E
// L
// C
// O
// M
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
// T
// O
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x10, 0x10, 0xFE, 0xFE, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// T
// H
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x12, 0x02, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
// F
// I
// N
// A
// L
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x1E, 0x0C, 0x00,
0x00, 0xFE, 0xFE, 0x32, 0x72, 0xDE, 0x8C, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0x60, 0xE0, 0x82, 0xFE, 0x7E, 0x02, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xC6, 0x44, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
// P
// R
// O
// J
// E
// C
// T
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x82, 0xC6, 0x7C, 0x38, 0x00,
// D
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x32, 0x72, 0xDE, 0x8C, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
// E
// M
// O
// N
// S
// T
// R
// A
// T
// I
// O
// N
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x12, 0x02, 0x00,
// O
// F
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x10, 0x10, 0xFE, 0xFE, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// T
// H
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x32, 0x72, 0xDE, 0x8C, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0x7C, 0xFE, 0x92, 0x92, 0xF6, 0xF4, 0x00,
// R
// O
// T
// A
// T
// I
// N
// G
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0xFE, 0xFE, 0x82, 0xC6, 0x7C, 0x38, 0x00,
// L
// E
// D
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC , 0x00,
0x00, 0x7C, 0xFE, 0x92, 0x92, 0xF6, 0xF4, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// M
// E
// S
// S
// A
// G
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x82, 0xC6, 0x7C, 0x38, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x1E, 0x0C, 0x00,
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0x0E, 0x1E, 0xF0, 0xF0, 0x1E, 0x0E, 0x00,
// D
// I
// S
// P
// L
// A
// Y
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0x0E, 0x1E, 0xF0, 0xF0, 0x1E, 0x0E, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
// S
// Y
// S
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
// T
// E
// M
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x10, 0x10, 0xFE, 0xFE, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0xFE, 0xFE, 0x38, 0x6C, 0xC6, 0x82, 0x00,
// T
// H
// A
// N
// K
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x0E, 0x1E, 0xF0, 0xF0, 0x1E, 0x0E, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0x7E, 0xFE, 0x80, 0x80, 0xFE, 0x7E, 0x00,
// Y
// O
// U
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 MEMORY[DISPL]= {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0 };
sbit P3b2 = P3^2;
void main (void)
{
unsigned int N= 0;
P1= 0;
P3= 255;
N=0;
DISP_LOAD_BLOCK(0, DISPL-1);
while(1) {
while(P3b2);
while(!P3b2);
DISP_SHOW();
DISP_LSHIFT(MESSAGE[N]);
N++;
N=N%MESS;
}
}
void DISP_LOAD_BYTE(unsigned char A, unsigned char D) {
MEMORY[A]= D;
}
void DISP_LOAD_BLOCK(unsigned char bf, unsigned char bt) {
int I;
for(I=bf;I<bt;I++)
MEMORY= MESSAGE;
}
void DISP_SHOW() {
int I;
for(I=1;I<DISPL+1;I++) {
DATAP= MEMORY[DISPL - I];
DEL(20); }
DATAP= 0; }
void DISP_LSHIFT(unsigned char DATA)
{
int I;
for(I=0;I<(DISPL-1);I++)
MEMORY= MEMORY[I+1];
MEMORY[DISPL-1]= DATA;
}
void DEL(unsigned int x)
{
unsigned int i,j;
for(i=0;i<x;i++)
for(j=0;j<1275;j++);
}
What alteration i should do in the DEL() fn. so that the rpm of dc motor get synchronized with the interrupt delay from 555 timer.
My program is working correctly.
I just wanna know that how can i synchronize the dc motor RPM with the delay of interrupt so the pattern will appear.Below is my C program.Just tell me what alterations i have 2 do in this program
#include <reg51.h>
#define DISPL 80
#define MESS 984 // 984 bytes
#define DATAP P1
void DISP_SHOW();
void DISP_LOAD_BYTE(unsigned char A, unsigned char D);
void DISP_LOAD_BLOCK(unsigned char bf, unsigned char bt);
void DISP_LSHIFT(unsigned char DATA);
void DEL(unsigned int x);
xdata unsigned char MESSAGE[MESS]= {
0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x30, 0xA0,
0x30, 0x20, 0x38, 0x04, 0x02, 0xFD, 0x00, 0x60,
0x50, 0x48, 0xF8, 0x80, 0x80, 0x82, 0x84, 0xF6,
0x84, 0x82, 0x80, 0x80, 0xFC, 0x00, 0xFC, 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,
0x7E, 0xFE, 0xC0, 0x70, 0x70, 0xC0, 0xFE, 0x7E,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xC6, 0x44, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// W
// E
// L
// C
// O
// M
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
// T
// O
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x10, 0x10, 0xFE, 0xFE, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// T
// H
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x12, 0x02, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
// F
// I
// N
// A
// L
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00 , 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x1E, 0x0C, 0x00,
0x00, 0xFE, 0xFE, 0x32, 0x72, 0xDE, 0x8C, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0x60, 0xE0, 0x82, 0xFE, 0x7E, 0x02, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xC6, 0x44, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
// P
// R
// O
// J
// E
// C
// T
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x82, 0xC6, 0x7C, 0x38, 0x00,
// D
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x32, 0x72, 0xDE, 0x8C, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
// E
// M
// O
// N
// S
// T
// R
// A
// T
// I
// O
// N
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x12, 0x02, 0x00,
// O
// F
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x10, 0x10, 0xFE, 0xFE, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// T
// H
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x32, 0x72, 0xDE, 0x8C, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0x7C, 0xFE, 0x92, 0x92, 0xF6, 0xF4, 0x00,
// R
// O
// T
// A
// T
// I
// N
// G
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0xFE, 0xFE, 0x82, 0xC6, 0x7C, 0x38, 0x00,
// L
// E
// D
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC , 0x00,
0x00, 0x7C, 0xFE, 0x92, 0x92, 0xF6, 0xF4, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
// M
// E
// S
// S
// A
// G
// E
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0xFE, 0xFE, 0x82, 0xC6, 0x7C, 0x38, 0x00,
0x00, 0x00, 0x82, 0xFE, 0xFE, 0x82, 0x00, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0xFE, 0xFE, 0x12, 0x12, 0x1E, 0x0C, 0x00,
0x00, 0xFE, 0xFE, 0x80, 0x80, 0x80, 0x80, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0x0E, 0x1E, 0xF0, 0xF0, 0x1E, 0x0E, 0x00,
// D
// I
// S
// P
// L
// A
// Y
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
0x00, 0x0E, 0x1E, 0xF0, 0xF0, 0x1E, 0x0E, 0x00,
0x00, 0x4C, 0xDE, 0x92, 0x92, 0xF6, 0x64, 0x00,
// S
// Y
// S
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x92, 0x92, 0x92, 0x82, 0x00,
0xFC, 0xFE, 0x0E, 0x3C, 0x3C, 0x0E, 0xFE, 0xFC,
// T
// E
// M
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x06, 0x06, 0xFE, 0xFE, 0x06, 0x06, 0x00,
0x00, 0xFE, 0xFE, 0x10, 0x10, 0xFE, 0xFE, 0x00,
0x00, 0xFC, 0xFE, 0x26, 0x26, 0xFE, 0xFC, 0x00,
0x00, 0xFE, 0xFE, 0x18, 0x30, 0xFE, 0xFE, 0x00,
0x00, 0xFE, 0xFE, 0x38, 0x6C, 0xC6, 0x82, 0x00,
// T
// H
// A
// N
// K
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
//(space)
//(space)
0x00, 0x0E, 0x1E, 0xF0, 0xF0, 0x1E, 0x0E, 0x00,
0x00, 0x7C, 0xFE, 0x82, 0x82, 0xFE, 0x7C, 0x00,
0x00, 0x7E, 0xFE, 0x80, 0x80, 0xFE, 0x7E, 0x00,
// Y
// O
// U
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 MEMORY[DISPL]= {
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0 };
sbit P3b2 = P3^2;
void main (void)
{
unsigned int N= 0;
P1= 0;
P3= 255;
N=0;
DISP_LOAD_BLOCK(0, DISPL-1);
while(1) {
while(P3b2);
while(!P3b2);
DISP_SHOW();
DISP_LSHIFT(MESSAGE[N]);
N++;
N=N%MESS;
}
}
void DISP_LOAD_BYTE(unsigned char A, unsigned char D) {
MEMORY[A]= D;
}
void DISP_LOAD_BLOCK(unsigned char bf, unsigned char bt) {
int I;
for(I=bf;I<bt;I++)
MEMORY= MESSAGE;
}
void DISP_SHOW() {
int I;
for(I=1;I<DISPL+1;I++) {
DATAP= MEMORY[DISPL - I];
DEL(20); }
DATAP= 0; }
void DISP_LSHIFT(unsigned char DATA)
{
int I;
for(I=0;I<(DISPL-1);I++)
MEMORY= MEMORY[I+1];
MEMORY[DISPL-1]= DATA;
}
void DEL(unsigned int x)
{
unsigned int i,j;
for(i=0;i<x;i++)
for(j=0;j<1275;j++);
}
What alteration i should do in the DEL() fn. so that the rpm of dc motor get synchronized with the interrupt delay from 555 timer.