Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Microchip PIC => Konuyu başlatan: mame - 03 Kasım 2006, 05:45:52

Başlık: 877 lcd 5.yazıdan sonra resetleniyor
Gönderen: mame - 03 Kasım 2006, 05:45:52
arkadaslar yaptıgım projede yaklasık 20 mesaj görüntülüycem ama asagıda kodlarını verdigim programda 5. mesajdan sonra 6. mesaj görüntülenmiyor 1. mesaja dönüyor lütfen yardım

'****************************************************************
'*  Name    : 877 lcd.BAS                                      *
'*  Author  : [select VIEW...EDITOR OPTIONS]                    *
'*  Notice  : Copyright (c) 2006 [select VIEW...EDITOR OPTIONS] *
'*          : All Rights Reserved                               *
'*  Date    : 03.11.2006                                        *
'*  Version : 1.0                                               *
'*  Notes   : processor pic16f877                                                  *
'*          :                                                   *
'****************************************************************
Define ONINT_USED 1


Define  LCD_DREG        PORTD
Define  LCD_DBIT        4
Define  LCD_RSREG       PORTE
Define  LCD_RSBIT       0
Define  LCD_EREG        PORTE
Define  LCD_EBIT        1
DEFINE LCD_RWREG PORTE
DEFINE LCD_RWBIT 2
DEFINE LCD_BITS 4
DEFINE LCD_LINES 2


ADCON1 = 7      
Low PORTE.2    
Pause 100      
loop:   Lcdout $fe, 1   ' Clear screen
       Pause 500      
       Lcdout "deneme1"  
       Pause 500      
       Lcdout $fe, $c0, "deneme2"   ' Move to line 2  and display
       Pause 500      
       Lcdout $fe, 1
       Lcdout "deneme3"  
       Pause 500      
       Lcdout $fe, $c0, "deneme4"
       Pause 500      
       Lcdout $fe, 1
       Lcdout "deneme5"  
       Pause 500      
       Lcdout $fe, $c0, "deneme6"
       Goto loop      
       
       End
Başlık: 877 lcd 5.yazıdan sonra resetleniyor
Gönderen: ete - 03 Kasım 2006, 07:35:45
Aslında resetlenmiyor.
Sen Deneme6 yazısını ekranda görecek kadar bir süre koymamışsın. O yüzden göremiyorsun. Program aslında ekrana Deneme6 yazıyor fakat hemen ardından LCDOUT $FE,1 komutu bu yazıyı sildiği için sen göremiyorsun.

Son satırları şöyle yazarsan sonucu görebilirsin.;


Lcdout $fe,$C0,"deneme6"
pause 500
Goto loop  


Yada sona Pause 500  komutunu aşağıya koyma ancak Loop satırını şöyle yaz;

Loop:
        Pause 500
        LCDOUT $Fe,1



Yani Pause 500 gecikmesini ekranı silmeden önce verirsen her şey düzelecek.
Kolay Gelsin
Başlık: 877 lcd 5.yazıdan sonra resetleniyor
Gönderen: mame - 03 Kasım 2006, 07:44:38
ete bey tesekkür ederim gözümden kacmıs asm de de aynı sorunu yasayınca programdan süphelenmemistim.denedim su an normal.