Şimdi Ara

uzmanına sorular - PIC BELLEK

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
3
Cevap
0
Favori
297
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • merhaba, sorular 16F628A hakkında ama tüm picler için geçerli..

    PIC program belleği 14 bit genişlikte. 2K flash program belleği var. Program Counter ise 13 bit.

    1) 13 bit PC 2^13=8K adresleyebiliyor. O zaman neden 11 bit PC kullanılmamış?
    2) 2048 - 8192 arasındaki program belleği hücreleri ne işe yarıyor
    3) kitapta "MOVLW 0x55" komutunun program belleğindeki karşılığının 1100XX01010101 olduğu geçmekte. Buradan son 8 bitin sabit için kullanıldığını anlıyoruz. (sanırım X bitlerinin ne olduğu önemli değil)
    örneğin başka bir komut olan "BCF 0x03,5" (status saklayıcısının 5. bitini sıfırla) ondört bitlik hücreye yerleşimi nasıldır? bunu soruyorum çünkü adres için zaten 8 bit harcanıyor, 3 bit de basamağı belirtmek için harcanıyor. Geriye kalıyor 3 bit (8+3=12). 3 bit de tüm komutları tanımlamak için yetmez

    4) Kitapta RAM dışında EEPROM olan veri belleğinden bahsedilmiş. Hatta block diagramda çizilmiş. Böyle bir veri belleği pic de var mı?



    bahsettiğim kitap çok kıymetli Orhan Altınabaşak'ın kitabıdır



    < Bu mesaj bu kişi tarafından değiştirildi M@rKSm@N -- 15 Aralık 2014; 1:59:10 >







  • 1) Aynı mimari, farklı hafıza seçenekleri ile farklı ürünler çıkarılabilir böylece. Örneğin 16f627A'da 10bit PC kullansalardı, 16f628A olmayacaktı. Bir ürünü kırparak, daha ucuz ürünler çıkarmak herkes için daha karlı bir seçenek.
    2) 16f628A'da 0005h - 07FFh arası program belleğidir. Yazılan programın komutlarını, değişken tanımlamalarını vs içerir.
    3) Komutun içerisinde adres bilgisi olmaz. X adresinde Y komutu olur. PC register'ı sürekli saymakla yükümlüdür. Sayacın denk geldiği program belleği konumundaki komut çalıştırılır.
    Komut 6 bit + 8 bit = 14 bit. 8 bit'lik bölümde 1 byte'lık değişken/akü bulunur, 6 bitlik bölüm ise komutu tanımlar. Bu PIC'te 35 farklı komut olduğu için 6 bit uzunluk yeterlidir.
    4) Evet var. Datasheet'i açarsanız ilk sayfada Flash program hafızası, SRAM ve EEPROM veri hafızalarının olduğunu görürsünüz.

    Datasheet'teki Architectural Overview, Memory Management ve Instruction Set Summary bölümlerini inceleyerek sorularınızın daha detaylı cevaplarını edinebilirsiniz.
    http://ww1.microchip.com/downloads/en/DeviceDoc/40044E.pdf




  • 3) dediğiniz gibi datasheet de instruction set bölümünde bilgi mevcut. Yanlız komutun içinde adres bilgisi olmaz derken yaz siz beni yanlış anladınız ya da galiba yanılıyorsunuz. ffff ile belirtilen bitler file adresleri. ancak burda faklı bir soru işareti oluştu, 7 bit file adresileri tüm RAM i adreslemeye nasıl yetiyor?

    örneğin CLRF komutu şu şekilde verilmiş "000001 lfffffff" peki "CLRF TRISB" komutu h'86' adresindeki hücreyi nasıl temizler? h'86' adresini 8 bit ile ancak adresleyebilir. Bunun dışınd RAM 1FFh adresine kadar devam ediyor. Buralar kullanılmıyor mu?
    edit: derken anladım :) bank değiştirerek yapılıyor sanırım. her bank h'7F' büyüklüğünde ve 7 bit, adreslemeye yetiyor. RAM lar bu nedenle BANK lara bölünüyor demek ki yoksa instruction setin bit boyu hiç yetmezdi belkide.

     uzmanına sorular - PIC BELLEK
     uzmanına sorular - PIC BELLEK



    < Bu mesaj bu kişi tarafından değiştirildi M@rKSm@N -- 15 Aralık 2014; 22:46:51 >




  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.