Arama butonu
Bu konudaki kullanıcılar: 1 misafir
21
Cevap
2583
Tıklama
0
Öne Çıkarma
Cevap: 8051 yardıım C kullanmaya çalışıyorum (2. sayfa)
C
15 yıl
Yüzbaşı

quote:

Orijinalden alıntı: Th3r4p1sT


quote:

Orijinalden alıntı: controller_

Tam olarak kullandığın 8051'in modeli nedir? Bazı firmaların dahili EEPROM lu 8051 modelleri mevcut.

Ayrcıa ilk mesajındaki olayı hiç assembly karıştırmadan c de pointer ile yapabilirsin.



hocam kullandığım entegre 89c51rd2

bunda dahili bir eeprom olduğunu biliyorum. buralarda değişken tanımlayabiliyorum ama bana bu değişkenlerin adresi gerekli ve o adresin işlemci her açıldığında aynı olması gerekli. ama bildiğimiz kadarıyla işlemci, biz bir değişken tanımladığımıda ona bellekten herhangi bir satır ayırıyor yani adresi sabit kalmıyor.

ilk mesajdaki olayı yapmak için benim de ilk aklıma gelen pointer olmuştu ama pointer in içine direkt adress bilgisini atamadığımız için o iş yatmıştı.




Hocam bilgi eksikliğiniz var. Pointer in amacı zaten istediğimiz adresi atayabilmektir. İstediğimiz adresi atayamıyorsak o zaten pointer olmaz.

Yukarıdaki yazdıklarınızın tamamı c de pointer ile yapılabilir ve yapıyoruzda.

Ayrıca kodunuzda malloc tarzı dinamik bellek kullanımı yoksa, işlemcinin (daha doğrusu derleyicinin) değişkenlere atadığı adres her açılışta aynı olur. İsterseniz simulasyondan inceleyin.

Son olarak EEPROM 89c51ED2 modelinde mevcut. RD2 de eeprom yok.





< Bu mesaj bu kişi tarafından değiştirildi controller_ -- 21 Aralık 2010; 23:34:09 >
Bu mesaja 1 cevap geldi.
E
15 yıl
Yüzbaşı

Bütün mesajları okuyamadım, asm ile de aram pek iyi değil ama CCS C de #BYTE komutu aradığın şey olabilir mi acaba ?

#byte reg=0x05
reg=0x03

ile 0x05 adresine 0x03 değerini atayabiliyoduk diye hatırlıyorum.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.