Hej,
Mam przygotowaną funkcję do wyświetlania napisu na ekranie LCD (chodzi o programowanie mikrokontrolerów aduc 831). Czy możecie pomóc mi ją przerobić, żeby otrzymywała ona stringa i jego wyświetlała na ekranie?
Obecny kod:
void bouncing(unsigned char* short_line)
{
unsigned char location_index;
unsigned char direction;
int display_length = 20;
location_index = display_length - strlen(short_line);
direction = 1;
LCD_czysc();
LCD_wyswietlslowo(short_line, location_index);
Delay_us(1000);
if(direction == 1)
{
if(location_index > 0)
{
location_index--;
}
else
{
direction = 0;
}
}
else
{
if(location_index < (display_length - strlen(short_line)))
{
location_index++;
}
else
{
direction = 1;
}
}
}
Dodatkowo dwie funkcje z których korzystam:
void LCD_wyswietlslowo(char* slowo, unsigned char start_bajt)
{
unsigned int i, dlugosc;
LCD_RS = 1;
LCD_RW = 0;
dlugosc = strlen(slowo);
for(i=0; i<dlugosc; i++)
{
LCD_adresDD(i+start_bajt);
Delay_us(40);
LCD_wyswietlznak(slowo[i]);
}
}
void LCD_czysc(void)
{
LCD_wyslij(0x01, 0, 0, 1640);
}
Pozdrawiam
Łukasz