PIC16F OPTION_REG ve RBPU bitin XC8'de tanınmaması ?

Başlatan Saruman, 04 Mayıs 2014, 00:49:03

Saruman

Selamlar,

XC8'de kod yazarken ilginç bir problemle karşılaşıyorum.

RBPU bitini tanımıyor.  Bilgiler aşağıdaki gibi :

Datasheet:



pic16f887_legacy.h dosyası :



Sonra aşağıdaki dosyayı buldum  pic16f883.inc :



nRBPU=0;
şeklinde kullanınca hata vermiyor. Diğer hiç bir registerlarda problem çıkmazken bu RBPU bu şekliyle yazılamıyor.

Legacy dosyasına göre RBPU veya RABPU yazımı legal olmalıydı ama bu bitlerin tanınmadığına dair hata alıyorum.









subram

çok ilginç bir sorun bir deneme yapayım bakalm.
http://www.elektronark.org  Türkiyede Elektronik Kültürünü Değiştirmeye Geliyoruz

mehmet

Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr

subram

dediğin gibi RBPU olarak değilde nRBPU olarak tanıyor. MPLAB X'de kod tamamlama kısmında direk olarak nRBPU çıktı. Elle "düzeltince" uyarı veriyor.
http://www.elektronark.org  Türkiyede Elektronik Kültürünü Değiştirmeye Geliyoruz

kantirici

Bu şekilde bir ön ek ile tanımlanmış bir kaç register ismine daha denk geldim. Neden böyle tanımlamışlar bimiyorum ama 'n' ön eki herhalde bir şeyi referans ediyor olsa gerek.

Tagli

n ön eki "not" anlamına geliyor, yani o özelliğin etkinleştirilmesi için bitin 0 olması gerektiğini vurguluyor. Örneğin, pullup'ları etkinleştirmek istiyorsak nRBPU = 0 diyoruz. Dikkat edilirse, datasheet'te de RBPU üstü çizili olarak gösterilmiş.
Gökçe Tağlıoğlu

Saruman

#6
Alıntı yapılan: Tagli - 04 Mayıs 2014, 09:09:20
n ön eki "not" anlamına geliyor, yani o özelliğin etkinleştirilmesi için bitin 0 olması gerektiğini vurguluyor. Örneğin, pullup'ları etkinleştirmek istiyorsak nRBPU = 0 diyoruz. Dikkat edilirse, datasheet'te de RBPU üstü çizili olarak gösterilmiş.

Evet aslında dikkatli bakınca diğer tüm zero active bitler de n ön ekiyle tanımlanmışlar.

Tagli hocam dikkat açıcı etkileriniz var bunu kullanmalısınız  ;)