K

Tuş hatası lütfen yardım ?

Başlatan kulinx, 25 Temmuz 2012, 23:21:27

kulinx

Gerçekten ben bayadır çaılışorum ama ete hocanın dediği gibi hep eksıklık kaldı bende
şöyle bir program yazdım demeyımde birleştirdim ama ondada bi dünya hata var sanırsam bütün sitelere girip yardım istedım ama kımse yok tilkinin dönüp dolaşıp geleceği yere hocama geldim :)
hocam bu dersleri 67projede arkadaşların videolarından ve sizin notlardan aldım ama hatamı yazılarınızı okudukdan sonra anladım şimdi başlıyorum zaten bütün dersleri defalarca okuyacam
ama şu olaya bi el atsanız memnun olcam :)
şimdiden herkese teşekkürler

merhaba
dongu yaptım ama ra.1 karasımsek
ra.2 ye ise 1 led yaktım ve söndürdüm
fakat ra.1 bastıgımda karasımsek 1 kere çalısıyor ,
ra.2 ise 1kere yanıyor ve program donup kalıyor
biraz yardımcı olurmusunuz dongulerde ne yapmalıyım
birden fazla tuş ve işlemlerde devamlılık olması için nelerı atlıyorum

Teşekkürler.

@ DEVICE pic16F628A                      'islemci 16F628A
@ DEVICE pic16F628A, WDT_on       'Watch Dog timer kapalı
@ DEVICE pic16F628A, PWRT_ON      'Power on timer açık
@ DEVICE pic16F628A, PROTECT_OFF  'Kod Protek kapalı
@ DEVICE pic16F628A, XT_OSC       '4 MHz Kristal osilatör kullandık

TRISB=0   'port b ıkış olarak ayarlandı
TRISA=1
PORTA=0
PORTB=0

LED VAR BYTE

ANA:
LED=0
IF PORTA.0 = 1 THEN KARASIMSEK
IF PORTA.1 = 1 THEN DONGU
GOTO ANA

KARASIMSEK:
LED=0
FOR LED=0 TO 7
HIGH LED
PAUSE 200
LOW LED
NEXT LED
PORTB=0
FOR LED=7 TO 0 STEP -1
HIGH LED
PAUSE 200
LOW LED
PAUSE 200
next led
RETURN

DONGU:           
LED=0
HIGH PORTB=%00000001
PAUSE 200
LOW PORTB=%00000001
PAUSE 200
RETURN


END

onur

Dostum programın hazır tepe tepe kullan :)



TRISB=0   
TRISA=%00011
LED VAR byte
PORTA=0
PORTB=0
LED=0
ANA:
IF PORTA.0 = 1 THEN GOTO KARASIMSEK
IF PORTA.1 = 1 THEN GOTO DONGU
LED=0
GOTO ANA
KARASIMSEK:
FOR LED=0 TO 7
HIGH LED
PAUSE 100
LOW LED
NEXT LED
PORTB=0
FOR LED=7 TO 0 STEP -1
HIGH LED
PAUSE 100
LOW LED
next led
GOTO ANA
DONGU:           
HIGH 0
PAUSE 200
LOW 0
PAUSE 200
goto ana
END
Küfür şeytana mahsustur, tövbe insana.. Aşk kadına yakışır, sevmek adama

ete

Picproje de de aynı soruyu sormuşsun orada yanıtladım sorunu.

Kusur bir;  programin basina acılıs gecikmesi ver . Pause 250
Kusur iki; programin basina cmcon=7  komut satırını ilave et. Bu default açılan komparatörleri iptal eder.
Kusur uc; kara şimşek alt programina goto ile gidip Return ile donmeye calisıyorsun.
"Then karasimsek" yerine then gosub karasimsek yaz.
Aynı kusur Dongu isimli alt program icinde gecerli
Ete



kulinx

#3
evet hocam hersey ıcın teşekkürler
onur senın program ıcınde teşekkürler

onur

ETE hocam yukarda programın başına açılış gecikmesi ver demişsiniz, bunu ne amaçla kullanmalıyız.
Her yazılan program için böyle bir gecikme koymak mümkünmüdür?
Küfür şeytana mahsustur, tövbe insana.. Aşk kadına yakışır, sevmek adama

greatgonzo

Teknik olarak tüm programlara konması lazım zira registerlara ayar veiyorsun , değişken sembol tanımlıyorsun, değişkene değer veriyorsun tüm bunları  pic in sıhatli olarak yapması için zamana  ihtiyaç duyar ki sen bekleme koyduğunda ufak tefek saçmalasada bu beklemeye denk gelir program satırların başladığında tam olarak hazır olur. Ayrıca LCD tanımlaması yaptıysan onada ayrıca bekleme vermen lazım ki lcd komut almaya hazır hale gelsin. ETE hocam, daha evvelde bu konuda uyarmıştı. Belki her program da olmasına gerek olmaz. Çok basit ayarlarla az değişkende gerekli olmayabilir ama bence  alışkanlık haline getirmekte fayda var. Program satırların düzgün iken bu gecikme olmamasından dolayı hata alırsan zor çözersin sorunu:-)

İyi çalışmalar...

onur

greatgonzo lcd için tamam ona gecikme belirliyorum sanırım normal program içinde ne demek istediğini anladım teşekkürler
Küfür şeytana mahsustur, tövbe insana.. Aşk kadına yakışır, sevmek adama

Powered by EzPortal