pıc basıc de 18f4520 config ayarları

Başlatan colddanger, 11 Nisan 2013, 01:08:14

colddanger

Merhaba Arkadaşlar,

pıc basıc için 18f4520 config ayarları nasıldır.Forumda 18f2550 ( http://etepic.com/index.php/topic,128.0.html ) derleme ayarları var acaba 4520 ile aynımıdır.
Açıkcası verilen linkdeki ( http://hades.mech.northwestern.edu/images/e/e3/PIC18_config_settings.pdf ) pdf dosyasına baktım fakat anlıyamadım saat geç oldu ondan mı bilmiyorum :)
Yardımlarınız için teşekkürler.

colddanger

Forumdaki konulara tek tek baktım ve ete hocanın kullandığı config tanımlamalarını buldum.Teşekkürler ete hocam.
http://www.picproje.org/index.php/topic,30255.0.html

Hattuşa

slm ete hocam bişey sormak istiyorum ayıp olmasa, ayıp olmasa diyorum zira son 5 yıldır 18f4520 ile çalışıyorum ve 16f1827 yi incelerken aklıma düştü.
bu 18F4520 de dahili 8mhz kristal mi var?  ;D

ve aktif etmek için OSC=? ayarında ne demeliyiz. son olarak dahili kristal kullanmak ile haricten kristal bağlamanın + ve - yönleri varmıdır?

ete

Bu gibi durumlarda önce PBP klasörü içinden 18F4520.INC dosyasını açarım. Alt kısımda yer alan sigorta ayar satırlarını kopyalar alırım. Başına bir ASM kelimesi ekler sonunada ENDASM eklerim. Bu benim header yani sigorta ayar kalıbım olur.
 ASM
   __CONFIG    _CONFIG1H, _OSC_INTIO67_1H & _FCMEN_OFF_1H & _IESO_OFF_1H
   __CONFIG    _CONFIG2H, _WDT_ON_2H & _WDTPS_512_2H
   __CONFIG    _CONFIG3H, _CCP2MX_PORTC_3H & _PBADEN_OFF_3H & _LPT1OSC_OFF_3H & _MCLRE_ON_3H
   __CONFIG    _CONFIG4L,  _STVREN_ON_4L & _LVP_OFF_4L & _XINST_OFF_4L
ENDASM

Sonra Proteus>>LabcenterElectronic>>Tools>>MPASM klasörü içinde yer alan P18F4520.INC dosyasını açarım. Dosyanın en alt kısımlarında bütün sigorta ayar seçenekleri birer birer verilmiştir.
Orada INT ile başlayan bir osilatör seçeneği ararım. Senin işlemcin için verilen seçenekler şunlar;
;----- CONFIG1H Options --------------------------------------------------
_OSC_LP_1H           EQU  H'F0'    ; LP oscillator
_OSC_XT_1H           EQU  H'F1'    ; XT oscillator
_OSC_HS_1H           EQU  H'F2'    ; HS oscillator
_OSC_RC_1H           EQU  H'F3'    ; External RC oscillator, CLKO function on RA6
_OSC_EC_1H           EQU  H'F4'    ; EC oscillator, CLKO function on RA6
_OSC_ECIO6_1H        EQU  H'F5'    ; EC oscillator, port function on RA6
_OSC_HSPLL_1H        EQU  H'F6'    ; HS oscillator, PLL enabled (Clock Frequency = 4 x FOSC1)
_OSC_RCIO6_1H        EQU  H'F7'    ; External RC oscillator, port function on RA6
_OSC_INTIO67_1H      EQU  H'F8'    ; Internal oscillator block, port function on RA6 and RA7
_OSC_INTIO7_1H       EQU  H'F9'    ; Internal oscillator block, CLKO function on RA6, port function on RA7

Alttan ikinci seçenek aradığımız seçenek oluyor. Dahili OSC ve PORTA.6 ve PORTA.7 ye normal pin fonksiyonlarının verildiği seçenek. Bunu kopyalayıp doğruca yukarıdaki sigorta ayarlarında yer alan OSC seçeneği üzerine yapıştırırm. Zira mevcut olanda HS OSC seçilmiş bulunmakta idi.
Örnekte bu işi ben yapmış oldum. Bir şey daha ilave etmek gerek. İşlemcide aynı zamanda PLL özelliğide mevcut. Şayet OSCTUNE registeri 6 nolu biti ni SET dersen dahili OSC nin 4 ve 8 Mhz seçeneklerinde PLL aktif olarak 4>>16Mhz olarak, 8>>32Mhz olarak çalıştırabilirsin işlemciyi.

Bu aşamadan sonra seçilen dahili OSC nin OSCCON registerinden ayarlanması gerekir.
Bu registerin 6-5-4 nolu bitleri bu seçimi yapar. Ben yukarıda 8 Mhz seçtim.
%x110xxxx = 4 Mhz olarak ayarlayacaktır.
Son olarak birde DEFINE OSC 8 yazdınmı işin tamam demektir.
Umarım bundan sonra başka bir işlemci için aynı şey lazım olunca  kendin bulabilirsin bu açıklamalara bakarak.

Ete

Hattuşa

detaylı bilgilendirmeniz için tşk ederim hocam. kopyala yaptır öğrencisiyiz sonuçta, zaman içinde kopyala yapıştırda çizginin dışına çıkmak istendiğinde böylesi traji-komik tırmalamalar yaşıyoruz.

hocam dahili osc ile dışardan kristalle elde edilen osc arasında fark varmıdır?

ete

Fark olup olmadığını bilmiyorum. Bildiğim tek şey kristal osc ( yani harici ) nin daima daha stabil ve verilen değere yakın olduğudur. Çok kritik zamanlama işlerinde harici kullanmak daha doğru olur.
Ete

~ENES~

hocam konuyla alakalı olduğundan yeni konu açmak istemedim.. 18f8722 kullanma çabası içindeyim gerek hafızası olsun gerek pinler olsun işime iyi yarıyor fakat benim mpasm 3.50 versiiyonunda unun ınc dosyası yok ufak bir program yazdım hatalar veriyor mecburen bu mpasmnin farklı sürümü varsa elinizde ekleyebilir misiniz nette bulamadım bi turlu ... :-\
ALLAH'a teslim olmuş bir insan ! Ne sultan tanir , ne sadrazam !

ete

Neden Proteus >>Tools>Mpasm yi kullanmıyorsun. İçinde olması gerek.
Bende farklı bir şey yok maalesef.

Ete

~ENES~

HOCAM 18F87k22 var ama 8722 yokki ikisi farklı sanırsam ayrıca mcs 18f87k22 ye program yazamıyor işlemci seçme kısmında yok ? sizde 18f8722 gözüküyor mu ?
ALLAH'a teslim olmuş bir insan ! Ne sultan tanir , ne sadrazam !

ete


~ENES~

klasörü koyabilirseniz buraya minnettar kalırım size hocam bulamadım bir türlü
ALLAH'a teslim olmuş bir insan ! Ne sultan tanir , ne sadrazam !

ete

PBP260 kullanıyorsan buna ait yamalarında (A-B-C diye 3 yama mevcut) yapılmış olması gerekir. Yamaları yapmamış isen gözükmez aradığın. Buraya klasör falan koyamam yanlış olur.

Klasörü koysamda işine yaramaz bu iş ancak yama ile hallolur.
Ete

~ENES~

yamaları nasıl yaparız hocam anlatığınız başlık falan varsa oradan bakayım
ALLAH'a teslim olmuş bir insan ! Ne sultan tanir , ne sadrazam !

Hattuşa

#13
slm arkadaşlar şu değişkenlerle ilgili kafama takılan bir konu var

kodum söyle;
dim ADC[16] as word
dim SONUC[16] as word
dim X as byte


MaIn:
for x =0 t0 15
adc[x] =adin 0
while adcon0.2 ==1:wend
sonuc[x] =((sonuc[x] *9) +adc[x] )/10
next


tamam bu kodda sorun yok, ancak ben sonuc değerlerimi daha hassas bir ölçümle yani float değişkenimle hesaplatmak istiyorum ama derleyicim (proton) hata veriyor.
ben sonuc[16] değerimi nasıl float olarak tanımlayabilirim veya daha hassas matematiksel işlemi nasıl yaptırabilirim.

ete

Yamaları bir yerden indiriyorsun. Direk çalıştırıyorsun. O gidip dosyaların yerini kendi buluyor ve yamaları yapıyor.
Ancak şayet bazı INC dosyalarını değiştirdin ise yamalar çalışmıyor. En güzeli derleyiciyi uninstall yapıp yeniden kurmak ve sonra yamaları yapmak.
İlişikteki dosyaya bak.

Ete

Powered by EzPortal