Witam
Mój problem jak w temacie. Poniższy, prościutki program ze strony http://en.radzio.dxp.pl/t6963/ pisze tekst jednocześnie w dwóch miejscach LCD DMF5005NY–LY 240x64.
Duże opóźnienia są po to, żeby móc dostrzec to zjawisko, każdy znak po znaku jest jednocześnie pisany w dwóch miejscach.
Próbowałem pisać tekst funkcją GLCD_WriteString(), ale efekt jest niestety ten sam, liczyłem na błąd właśnie w tej funkcji, jednak pisanie znak po znaku z oczekiwaniem pokazało, że tak nie jest.
Myśle, że na fotce widać to najlepiej, o co chodzi.
Z góry dziękuję za zainteresowanie i ewentualne wskazówki.
Pozdrawiam
PS Zauważyłem, że jedyne, co rozwiązuje problem, to wysoki stan na linii LCD_FS, ale w ten sposób nie można mieć mniejszej szerokości czcionki.
![[M162][C]LCDT6963C pisze tekst jedoczesnie w dwu miejscach [M162][C]LCDT6963C pisze tekst jedoczesnie w dwu miejscach](https://obrazki.elektroda.pl/40_1241931438_thumb.jpg)
Mój problem jak w temacie. Poniższy, prościutki program ze strony http://en.radzio.dxp.pl/t6963/ pisze tekst jednocześnie w dwóch miejscach LCD DMF5005NY–LY 240x64.
Duże opóźnienia są po to, żeby móc dostrzec to zjawisko, każdy znak po znaku jest jednocześnie pisany w dwóch miejscach.
Próbowałem pisać tekst funkcją GLCD_WriteString(), ale efekt jest niestety ten sam, liczyłem na błąd właśnie w tej funkcji, jednak pisanie znak po znaku z oczekiwaniem pokazało, że tak nie jest.
Myśle, że na fotce widać to najlepiej, o co chodzi.
Z góry dziękuję za zainteresowanie i ewentualne wskazówki.
Pozdrawiam
PS Zauważyłem, że jedyne, co rozwiązuje problem, to wysoki stan na linii LCD_FS, ale w ten sposób nie można mieć mniejszej szerokości czcionki.
#include <avr/io.h>
#include "T6963C.h"
int main(void)
{
DDRD |=(1<<0);
PORTD |=(1<<0);
_delay_ms(300);
_delay_ms(300);
//_delay_ms(300);
GLCD_Initalize();
PORTD &=~(1<<0);
_delay_ms(300);
_delay_ms(500);
_delay_ms(500);
// Initalize LCD
GLCD_ClearText(); // Clear text area
GLCD_ClearCG(); // Clear character generator area
GLCD_ClearGraphic(); // Clear graphic area
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
_delay_ms(500);
GLCD_TextGoTo(5,1);
//GLCD_WriteString("Proba t6963C");
GLCD_WriteChar('P');
_delay_ms(500);
_delay_ms(500);
GLCD_WriteChar('R');
_delay_ms(500);
_delay_ms(500);
GLCD_WriteChar('O');
_delay_ms(500);
_delay_ms(500);
GLCD_WriteChar('B');
_delay_ms(500);
_delay_ms(500);
GLCD_WriteChar('A');
_delay_ms(500);
_delay_ms(500);
GLCD_WriteChar('T');GLCD_WriteChar('6');GLCD_WriteChar('9');GLCD_WriteChar('6');GLCD_WriteChar('3');GLCD_WriteChar('C');
PORTD &=~(1<<1);
while(1);
return 0;
}