logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[M162][C]LCDT6963C pisze tekst jedoczesnie w dwu miejscach

Pawel1812 10 Maj 2009 06:57 926 0
REKLAMA
  • #1 6511253
    Pawel1812
    Poziom 26  
    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.

    
    #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;
    }
    
    


    [M162][C]LCDT6963C pisze tekst jedoczesnie w dwu miejscach
  • REKLAMA
REKLAMA