16F88 CROSSING PAGE BOUNDRY HATASI

Başlatan EMKE, 07 Ekim 2015, 14:52:24

EMKE

Arkadaşlar herkese iyi günler 16F88 ile bir program yazıyorum ve artık program uzadıkça program sayfası aşımı hataları almaya başladım ama pıcbasıc bunu kendisi hallediyor diye devam ettim programı yazmaya  hala bellekte yer var ama işlemciyi karta taktığımda program çalışmıyor bu hatayı nasıl çözebilirim

Burak

#1
Programın başına ;

@ ERRORLEVEL -306


kod parçacığını ekleyin.

Ayrıca yazdığın program derleyicide kaç word olarak hesaplanmış ?

Burak
Ω Gens Una Sumus Ω

ete

Cross boundary bir hata değil ikazdır. Programda kullanılan komutların bazılarına göre sorun olabilir ama genelde pek sorun çıkarmayan ikazdır. Zira sayfa aşımı meselelerini Basic derleyicisi kendisi halletmektedir.
@ ERRORLEVEL -306 ifadesi ise derleme esnasında bu ikazı verdirme anlamına gelir.
Programın çalışmama sebebini başka yerde aramak gerekiyor. Yada programda Branch komutu kullandı isen sorun olabilir.

Ete

F®T

Fazladan bir byte değişken tanımlarsanız düzeliyor .Ama hocaların dediği gibi bir mahsuru yok.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

EMKE

#4
Ete hocam haklısınız hata yazmışım aslında bir mesaj sadece zaten bende bu yüzden önemsememiştim ama pıc'i karta alınca program hiç bir iş yapmıyor açıkçası anlamadım donanımda bir sıkıntı yoktu gayet stabil çalışıyordu, burak 2600 words var derleme sonucunda 16f88 datashette 4096 words görünüyor  senin dediğinide denicem şimdi cevaplar için teşekkür ederim sonuçları yazarım deneyip.

EMKE

F.T dediğini tam anlayamadım  kullanmasam bile bir byte dseğişken tanımlayınca düzelicekmi diyorsun , burak bu arada senin dediğin gibi program başına @ ERRORLEVEL-306 yazınca hata kayboldu ama program hala çalışmıyor.

F®T

#6
Bu hata tam bank geçişlerinde oluşuyor.Onun için bir byte değişken tanımlayınca hata kayboluyor.kullanacağın değişken olursa daha iyi tabi.Ama kullanmasanda farketmez.
"Hakk" şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

EMKE

#7
Sorunu çözdüm ete hocam burak ve f.t  problem cmcon registerini kullanıma kapatmıştım program başında gerektiğinde analog sensör  seçimi yapıldığında porta'yı analog moda geçiren blog içerisinde açmak için kapatmıştım ama virgülü kaldırıp aktif edince program düzeldi  bunun neden  problem yarattığını anlayamadım siz biliyormusunuz?, programın stabil çalışıp çalışmadığını deneyip yazıcam.

PAUSE 500
TRISA=%00000000
TRISB=%11110000
PORTA=0
PORTB=0
OPTION_REG.7=0        ; DAHİLİ PULL_UP DİRENÇLERİ İPTAL
;OSCCON=%01100110      ; OSCCON 4 MHZ'E EŞİTLENDİ
;CMCON=0
ANSEL=0

Powered by EzPortal