2x16 karakter LCD ters gösteriyor

Başlatan Ruzgar, 11 Ocak 2014, 13:05:22

Ruzgar

Geçenlerde aldığım lcd ile bu gün pic16f628a(dahili osc) ile birlikte uygulama yaptım fakat lcd ekran ters yazıyor.Acaba düzeltme imkanımız var mı yada kodlar da mı sorun var bilemiyorum ama ısıs simülasyonunda gayet normal çalışıyor fotoğraflar , kodlar ve ısıs dosyası ;
sbit LCD_RS at RB1_bit;
sbit LCD_EN at RB3_bit;
sbit LCD_d4 at rb4_bit;
sbit LCD_d5 at rb5_bit;
sbit LCD_d6 at rb6_bit;
sbit LCD_d7 at rb7_bit;
sbit LCD_RS_direction at trisb1_bit;
sbit LCD_EN_direction at trisb3_bit;
sbit LCD_d4_direction at trisb4_bit;
sbit LCD_d5_direction at trisb5_bit;
sbit LCD_d6_direction at trisb6_bit;
sbit LCD_d7_direction at trisb7_bit;
char *text1; //karakter tipinde işaretçi tanımlanıyor.
char txt1[] = \"mikroElektronika\";
char txt2[] = \"EasyPIC6\";
char txt3[] = \"Lcd4bit\";
char txt4[] = \"example\";

char i;                              // Loop variable

void Move_Delay() {                  // Function used for text moving
  Delay_ms(500);                     // You can change the moving speed here
}

void ayarlar(){
trisb=0;
portb=0;
INTCON=0;
CMCON=0x07;
Lcd_Init();
LCD_cmd(_LCD_CURSOR_OFF);
LCD_cmd(_LCD_Clear);
}
void main(){
ayarlar();
Lcd_Cmd(_LCD_CLEAR);               // Clear display
  Lcd_Cmd(_LCD_CURSOR_OFF);          // Cursor off
  Lcd_Out(1,6,txt3);                 // Write text in first row

  Lcd_Out(2,6,txt4);                 // Write text in second row
  Delay_ms(2000);
  Lcd_Cmd(_LCD_CLEAR);               // Clear display

  Lcd_Out(1,1,txt1);                 // Write text in first row
  Lcd_Out(2,5,txt2);                 // Write text in second row

  Delay_ms(2000);

  // Moving text
  for(i=0; i<4; i++) {               // Move text to the right 4 times
    Lcd_Cmd(_LCD_SHIFT_RIGHT);
    Move_Delay();
  }

  while(1) {                         // Endless loop
    for(i=0; i<8; i++) {             // Move text to the left 7 times
      Lcd_Cmd(_LCD_SHIFT_LEFT);
      Move_Delay();
    }

    for(i=0; i<8; i++) {             // Move text to the right 7 times
      Lcd_Cmd(_LCD_SHIFT_RIGHT);
      Move_Delay();
    }
  }


}






Isıs şeması ,kodlar ,resimler : https://www.mediafire.com/?9vrp95stddp19wv
Bu sözcüğü seviyorum ,başarısız. İnsanın kaderi bu başarısızlıktan başarısızlığa...

cevat1

Ekranda ters yazma diye bir şey yok. Display türleri farklı olduğundan kaynaklanıyor. İki bağlantılı display bulabilirseniz, bundan kullanın. Fiyatları aynı..


Ruzgar

Bu sözcüğü seviyorum ,başarısız. İnsanın kaderi bu başarısızlıktan başarısızlığa...

tc-can

#3
Selamlar     lcd ters basmıyor   ekranı ters tutuyorsun   lcd montajı sıklıkla  baglantı  uçları üste gelicek şekilde baglanır  header pinlerini  dik lehimlersen  bir problem kalmayacaktır  ;)

Ruzgar

Alıntı yapılan: tc-can - 19 Ocak 2014, 19:31:16Selamlar     lcd ters basmıyor   ekranı ters tutuyorsun   lcd montajı sıklıkla  baglantı  uçları üste gelicek şekilde baglanır  header pinlerini  dik lehimlersen  bir problem kalmayacaktır  ;)
Lcd üzerindeki yazıların yönüne bakarak bağladım pinleri. Herhalde aynı yöne aşağı doğrudur diye sonra her şey ters çıktı aldandık  :) Ama sorun halloldu 180 derecelik pinler ile halletim lehimleri sökmek biraz zor oldu ama onuda halletim sağolasınız yardımlar için :)
Bu sözcüğü seviyorum ,başarısız. İnsanın kaderi bu başarısızlıktan başarısızlığa...

Hızlı Yanıt

Not: Bu konu bir moderatör tarafından onaylanmadan görüntülenmeyecektir.

Adı:
E-Posta:
Doğrulama:
Lütfen bu kutuyu boş bırakın:
IRFP250 Nedir:
kısayollar: göndermek için alt+s veya önizleme yapmak için alt+p'ye basın