XC8 Başlangıç

Başlatan Mucit23, 04 Mayıs 2014, 01:08:52

ahuramazda

Alıntı Yap#define led1 PORTEbits.RE0
#define led2 PORTEbits.RE1

#define led1 LATEbits.LATE0
#define led2 LATEbits.LATE1

tomi

çok teşekkür ederim çalıştı ama çok şaşırdım, daha önce ne yazarken nede derlerken ne hata verdi ne de başka bir şey bu kadar vasat olmamalı diye düşünüyorum mplab x ?

tomi

bir şey daha soracagım ,
#define but1 PORTBbits.RB6
#define but2 PORTBbits.RB7 bu tanımlamaları kabul edip,

#define led1 PORTEbits.RE0 neden kabul etmiyor yanlış çalışıyor anlamadım?

tomi

yazınızı şimdi okudum ahuramazda arkadaşım lat tanımlaması çıkış pinleri içinmiş ,:-) bu arada xc8 için önerebilecegin bir döküman varmı aynı ete kardeşimizin basıc hakkındaki o muhteşem dökümanı gibi?

ahuramazda

Microchip'in sitesinde başlangıç için güzel dökümanlar mevcut. Bir de Youtube'da forum üyelerinden bir arkadaşın çalışmaları var. Kanalının ismi genç mucitler gibi bir şeydi hatırladığım kadarıyla

tomi

tamam teşekkür ederim :)

tomi

Arkadaşlar merhaba,
char c; tipinde bir değişkenim var ve bu değişkenin 8 bitine ayrı ayrı isim vermek istiyorum.Hep hata alıyorum yardım ederseniz çok sevinirim.
Mesela c değişkeninin 0. bitini nasıl ifade edebilirim?

mehmet

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

tomi

maalesef linkte aradığım bilgi yok, yine de teşekkür ederim.

power20

char c;

BYTE b;
...

b = (BYTE) c;

 olsun.
b nin her bitine isim vermek zor bir iş değil. Son satırdaki gibi c yi bayt olarak yorumlayıp sonra b nin bit isimleri kullanılabilir

tomi

valla anladım desem yalan olacak :-)
şimdi,

yukarıdaki c degişkeninin, 0. bitini led0 olarak nasıl tanımlarız?

#define led0 cbits.c0;     degil sanırım ?İşte sormak istediğim bu.Birde 3 adet 1 bit degişken tanımlamak istiyorum oda;

bit x,y,z ; şeklinde olmuyor? Anlayacağınız 2 adet problemim var. :-)

power20


MCansız

merhaba,

mplab x üzerinde plugin olarak MCCyi kurun ve işlemcinin tüm ayarlarını programdan yapabilirsiniz. sizce kullanacağınuız işlemler için kod üretecektir. üretilen kütüphaneleri incelediğinizde konuyu çok daha rahat anlayacaksınız ve bir daha ccs c ye bakmayacaksınız.

RaMu

Verilen cevaplar güzelde sorulan sorunun cevabı değil.

Alıntı yapılan: tomi - 26 Mart 2021, 02:26:50...
yukarıdaki c degişkeninin, 0. bitini led0 olarak nasıl tanımlarız?

#define led0 cbits.c0;     degil sanırım ?
...

Böyle bir tanım yapıp
led0 = 1;
gibi kullanmayı istiyorsun.

Byteadı.bitadı
gibi uzun uzun yazmak yerine
direk noktasız tek isim ile rahat rahat kullanmak istiyorsun.

Bildiğim kadarıyla böyle bir şeyi yapamıyorsun.
C dilinin özelliklerinden kaynaklanıyor diye biliyorum bu durum.

Konuyu:
"C'de byteAdi.bitAdi=1; yerine mybit = 1; nasıl yapılabilir? "

gibi bir başlıkla yeniden aç istersen
bilen varsa yardımcı olur.
Sorularınıza hızlı cevap alın: http://www.picproje.org/index.php/topic,57135.0.html

tomi

 ilgilenen cevap veren tüm arkadaşlarıma teşekkür ederim.Bu güne kadar gerek asm ile gerek basic pro ile yazmadıgım program kalmadı, fakat işe bak sadece 8 bitlik bir değişkenin bitlerine isim veremiyoruz, ne acaip şeymiş bu, xc8 e devam ama bitleri ile artık uğraşmıyacagım ...