Estou tentando entender o que é essa instrução: SCROLL_TEXT.
Tenho uma rotina que tem esse "instrução eu acho", mas vasculhei o mikcro C e não achei ela, o que é esse argumento?
Olhem só o programa e me ajudem a clarear as ideias...Essa instrução é utilizada para chamar uma tabela de caracteres.
PACIÊNCIA COMIGO, VEJAM QUE O VELHO VONNILMAM ESA APRENDENDO "C", PEGUEI ESSA ROTINA PARA ENTENDER, OK
A ROTINA EM SÍ, É UMA MATRIZ DE 64 LEDS (8X8) PARA APRESENTAR MENSAGENS.
Obrigado,
cpp code
#include "FONT.c"
char colPort at PORTD;
char rowPort at PORTB;
char buff[24];//local para armazenar dois caracteres
void print_chr(char c, char time)
{
char i;
while(time--)
{
for(i=0;i<8;i++)
{
rowPort = 255;
colPort = 1<<(i);
rowPort = ~Font8x8[c - 32][i];
delay_us(90);
}
}
}
void scroll_text(char *str){
char i=0;
char k=0;//deslocamento no buffer
char cnt=0;
char buff[17];//buffer
while(*(str+1) != 0)
{
for(i=0;i<16;i++)
{
if(i<8) *(buff+i) = Font8x8[*(str) - 32][i];
else *(buff+i) = Font8x8[*(str+1) - 32][i-8];
}
for(k = 0;k < 8;k++)
{
for(cnt = 60; cnt > 0; cnt--)
{
for(i=0;i<8;i++)
{
rowPort=255;
colPort = 1<<(i);
rowPort = ~buff[i+k];
delay_us(125);
}
}
}
str++;
}
rowPort = 255;
colPort = 0;
}
void main()
{
TRISD = 0;
TRISB = 0;
colPort = 0;
rowPort = 0;
while(1)
{
scroll_text(" 1234 ");
delay_ms(500);
scroll_text(" 0000 ");
delay_ms(500);
}
}