pcbway

BU HATANIN ANLAMI NE ?

Başlatan ocs61, 14 Mayıs 2013, 16:34:38

ocs61

14 Mayıs 2013, 16:34:38 Son düzenlenme: 14 Mayıs 2013, 16:35:52 ocs61
PROGRAMIM KARA ŞİMŞEK DEVRESİ.. ANLOG GİRİŞİ KULLANARAK HIZ KONTROLÜ YAPIYORUM. 16F877 ENTEGRESİNİN B-C-D PORTLARINDAKİ LEDLERİNİ SIRAYLA YAKIYORUM.

PORTB.0=1
PAUSE SAYI
PORTB.0=0
PORTB.1=1
PAUSE SAYI

BÖYLE DEVAM EDİYOR PROGRAM. HER \"PAUSE SAYI\" KOMUTUNDAN SONRA
YAKLAŞIK 50 SATIRLIK ANALOG GİRİŞ SORGULAMA KOMUTU KULLANIYORUM SORUNSUZ ÇALIŞIYOR.
HER PAUSE SATIRINDAN SONRA KOYMAYA BAŞLADIĞIM ZAMAN BELLİ SAYIDAN SONRA
HATA KODU 587,661 HATALARINI ALIYORUM AMA PROGRAM HEX DOSYASINI VERİYOR VE SORUNSUZ ÇALIŞIYOR.
SON OLARAK PORTD YEDE ANALOG GİRİŞ SATIR KOMUTLARINI GİRDİĞİMDE
560 581 587 NOLU HATA KODLARINI ALIYORUM.. PROGRAMIM YAKLAŞIK 2500 SATIR OLUYOR

YARDIMLARINIZI BEKLİYORUM
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

pwm.c

16F877 hafızasını tamamen  doldurmuşun. aldığın uyarı bu.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

ocs61

peki bu sorunu aşmanın bir yolu var mı ?
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

pwm.c

PIC18F452 kullanabilirsin.
aslında bu tür yazılımları FOR NEXT döngüsüyle yaparsan boyutta bir miktar daha azalma olur.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

ocs61

hocam dediğin gibi 18f452 yi kullandım oldu teşkkür ediyorum.. bi sorum olacak

1) pic in hafızası yazdığımız programın satır sayısı ilemi ilgili ? örneyin 16f877 ye 1000 satr yazılırken 18f452 ye 2000 satrmı yazabiliriz ? bunların hafızalarının ne kadar olduğunu nasıl anlarız ?
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

pwm.c

sadece satır sayısı ile ilgili değil. PIC basicde bazı komutları yazınca arka planda çok sayıda işlem yapıyor.
komutları derlemeden nekadar yer kaplayacağını kestirmek çok zor. sadece ASM dilinde yazılmış ise satır sayısına göre tahmin edebilirsin.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

ocs61

hocam şimdi ısıs de 18f452 yi açtım porta nın 0. bitinede analog grş için potans fln bağladım.. hex dosyanınıda yükledm ısıs e.. ama çalşmaı.. analog giriş ucu mavi diğer uclar gri gözüküyor...

örneğin 16f877 de analog girş kllanmak için acdon0 ve adcon1 de bazı sayılar yüklüyorz.. 18f452 içinde aynı komutlarımı kullanacaz.. internette biraz araştrdım ama bulamadım kayda değer bilgi.. acaba siz yardımcı olabilrmisinz ?
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

pwm.c

Alıntı yapılan: ocs61 - 15 Mayıs 2013, 23:56:14hocam şimdi ısıs de 18f452 yi açtım porta nın 0. bitinede analog grş için potans fln bağladım.. hex dosyanınıda yükledm ısıs e.. ama çalşmaı.. analog giriş ucu mavi diğer uclar gri gözüküyor...

örneğin 16f877 de analog girş kllanmak için acdon0 ve adcon1 de bazı sayılar yüklüyorz.. 18f452 içinde aynı komutlarımı kullanacaz.. internette biraz araştrdım ama bulamadım kayda değer bilgi.. acaba siz yardımcı olabilrmisinz ?

sanırım MCLR bacağını boş bırakmış olmalısın. buraya +5v ver.
ben şöyle bir deneme yaptım. gayet normal çalıştı.

\'-----------------------------------------------------------------
DEFINE LCD_DREG PORTB \'LCD data bacakları hangi porta bağlı?
DEFINE LCD_DBIT 4 \'LCD data bacakları hangi bitten başlıyor?
DEFINE LCD_EREG PORTB \'LCD Enable Bacağı Hangi Porta bağlı?
DEFINE LCD_EBIT 3 \'LCD Enable Bacağı Hangi bite bağlı ?
define LCD RWREG         PORTB    \'LCD R/W Bacağı Hangi Porta bağlı?
define LCD_RWBIT    2        \'LCD R/W Bacağı Hangi bite bağlı ?
DEFINE LCD_RSREG PORTB \'LCD RS Bacağı Hangi Porta bağlı ?
DEFINE LCD_RSBIT 1 \'LCD RS bacağı Hangi Bite bağlı  ?
DEFINE LCD_BITS 4 \'LCD 4 bit mi yoksa 8 bit olarak bağlı?
DEFINE LCD_LINES 2 \'LCD Kaç sıra yazabiliyor
\'-------------------------------------------------------------------------
DEFINE ADC_BITS 10
DEFINE ADC_CLOCK 2
DEFINE ADC_SAMPLEUS 50
TRISA = 255
TRISB = 0
TRISC = 0
ADCON1=%10000000

ADCSONUC VAR word
ADCSONUC=0
PORTB=0
PORTC=0
LCDOUT $FE,1

BASLA:
PAUSE 100
ADCIN 0, ADCSONUC
LCDOUT $FE,$80,\"ADC=\",DEC ADCSONUC,\"      \"
GOTO BASLA

END
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

ocs61

evet hocam dediğini yapınca MCLR ucuna 5v tu 10k dirençlen bağladığım zaman çalştı.. 16f877 ile 18f452 herşeyi ile aynı 18f452 in hafızası daha fazla sağdece.. adcon0 ve adcon1 ler aynı çalışıyor

ilgilendiğin için teşkkrler :)
Erdemlerimiz ve kusurlarımız birbirinden ayrılamaz, güç ve madde gibi. Onlar ayrıldığında insan bir hiçtir.
-Nikola Tesla-

pwm.c

Herşey aynı değil. örneğin, CONFIG ayarları çok farklı. buna dikkat et.
ayrıntılar için datasheet inceleyin.
_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-