كود:
const unsigned short Alphabets[] ={
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //view no 1
0x00,0x00,0x00,0x00,0x00,0x00,0x00, 0xFC, // view no 2
0x00,0x00,0x00,0x00,0x00,0x00, 0xFC,0x12, // view no 3
0x00,0x00,0x00,0x00,0x00, 0xFC,0x12,0x12, //view no 4
0x00,0x00,0x00,0x00, 0xFC,0x12,0x12,0xFC, //view no 5
0x00,0x00,0x00, 0xFC,0x12,0x12,0xFC,0x00, //view no 6
0x00,0x00,0xFC,0x12,0x12,0xFC,0x00,0xFE, // new view no 7
0x00,0xFC,0x12,0x12,0xFC,0x00,0xFE,0x90, // new view no 8
0xFC,0x12,0x12,0xFC,0x00,0xFE,0x90, 0x90, // new view no 9
0x12,0x12,0xFC,0x00,0xFE,0x90, 0x90,0x60, // new view no 10
0x12,0xFC,0x00,0xFE,0x90, 0x90,0x60,0x00, // new view no 11
0xFC,0x00,0xFE,0x90, 0x90,0x60,0x00,0x00, // new view no 12
0x00,0xFE,0x90, 0x90,0x60,0x00,0x00,0x00, // new view no 13
0xFE,0x90, 0x90,0x60,0x00,0x00,0x00,0x00, // new view no 14
0x90, 0x90,0x60,0x00,0x00,0x00,0x00,0x00, //new view no 15
0x90,0x60,0x00,0x00,0x00,0x00,0x00,0x00, // new view no 16
0x60,0x00,0x00,0x00,0x00,0x00,0x00,0x00, // new view no 17
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; // new view no 18
unsigned short count, column, num, repeat;
void main() {
TRISB = 0b00000000; // Set PORTB direction to be output
TRISD = 0x00; // Set PORTD direction to be output
PORTB = 0x00; // Turn OFF LEDs on PORTB
do{
// Scrolling A letter
for (num=0; num<18; num++) { // ÍáÞÉ ÊßÑÇÑ ÎÇÑÌíÉ áÚÏÏ 18 ãÔåÏ ãä ÇáÕÝÑ áÃÞá ãä 18
for (repeat=0; repeat<100; repeat++){ // ÍáÞÉ ÊßÑÇÑ æÓØì 100 ãÑÉ áßá ãÔåÏ ÍÊì íÓÊÞÑ
column = 0b00000001; // ULN2003ÊæÕíá ÇáãæÌÈ ááÚÇãæÏ ÇáÃæá æÚßÓå ÈæÇÓØÉ
for(count = num*8;count < (num*8+8);count++){//ÇáÍáÞÉ ÇáÏÇÎáíÉ ÊÊßÑÑ áßá ÚÇãæÏ
PORTD = ~column;// ãäÝÐ ÇáÃÚãÏÉ
PORTB = Alphabets[count];// ãäÝÐ ÇáÕÝæÝ
Delay_us(200);// ÊÃÎíÑ Òãäì ÞÕíÑ ßÝÇÕá Èíä ÇáÚÇãæÏ ãÓÍ ÇáÚÇãæÏ æÇáÂÎÑ ãäÚÇ áÊÏÇÎá ÇáÈíÇäÇÊ
column = column<<1;// ÇáÇäÊÞÇá Åáì ÇáÚÇãæÏ ÇáÊÇáì ÈÚãáíÉ ÅÒÇÍÉ Åáì ÇáíÓÇÑ ÈãÞÏÇÑ ÎÇäÉ æÇÍÏÉ
}
}
}
} while(1);
}