18F Serisi Register Kontrolü

Başlatan ugurer, 12 Ocak 2017, 17:09:25

ugurer

Merhaba arkadaşlar, bir proje için 18f47k40 serisi kullanacağım. Datasheet'ine bakarken registerları oynarak baya bir değişiklik yapılabildiğini gördüm. Örnek vermek gerekirse normalde tanımlı olan haberleşme portlarını registerları değiştirerek farklı bir porta aktarabiliyormuşuz. Yani kabaca PERIPHERAL PIN SELECT (PPS) MODULE'ü nasıl kullanıyoruz. Datasheet'te sayfa 212'den itibaren,
http://ww1.microchip.com/downloads/en/DeviceDoc/40001844B.pdf

OG

Evet, doğrudur. Bu özellik çok zamandır microchip'in çok ürününde var.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

apsis

Kullandım ve gerçekten çoğu zaman işimi kolaylaştırıyorlar. Config'ler ile kolayca ayarlanabiliyorlar.
"Makineye Beyin" MEKATRONİK

ugurer

Kullanımı nasıl oluyor ya peki, ben CCS C kullannıyorum da datasheet'te ki örneklerden pek bir şey anlamadım.

apsis

Ben 18f25k22 CCP çıkışını başka bir pine taşımıştım. Tabi istediğin pine taşıma yapamıyorsun ve sadece üreticinin gösterdiği pinlerden birini seçebiliyorsun.
#pragma config CCP2MX = PORTC1  // CCP2 MUX bit (CCP2 input/output is multiplexed with RC1)
#pragma config PBADEN = ON    // PORTB A/D Enable bit (PORTB<5:0> pins are configured as digital I/O on Reset)
#pragma config CCP3MX = PORTC6  // P3A/CCP3 Mux bit (P3A/CCP3 input/output is mulitplexed with RC6)
#pragma config HFOFST = ON     // HFINTOSC Fast Start-up (HFINTOSC output and ready status are not delayed by the oscillator stable status)
#pragma config T3CMX = PORTC0   // Timer3 Clock input mux bit (T3CKI is on RC0)
#pragma config P2BMX = PORTB5   // ECCP2 B output mux bit (P2B is on RB5)
#pragma config MCLRE = INTMCLR  // MCLR Pin Enable bit (MCLR pin enabled, RE3 input pin disabled)

Ben XC8 kullanıyorum, CSS C yi bilmem ama bu ayarlar konfigürasyonlar ile yapılıyor. İlgili işlemcinin config. registerlerini incelersen bulabilirsin.
Yukarıdaki örnekte  CCP2MX= PORTC1 ye tanımalamışım. İstersem PORTB3'e de tanımlayabilirdim. CCP3MX, T3CMX VE P2PMX için de benzer durumlar geçerli. Yani bunları kullanmak için özel bir algoritmaya gerek yok.
"Makineye Beyin" MEKATRONİK

ugurer

@apsis teşekkürler, datasheet'te dediğiniz gibi neyi nereye taşıyabileceğim bilgisi var. CCS C için biraz daha araştırayım bakalım.

apsis

@ugurer CCS C için de aynı durum smz konusu. Siz CCS'de #FUSES bitlerini yazmayı biliyorsanız bunu yapabilirsiniz.
"Makineye Beyin" MEKATRONİK

ugurer

@apsis aynen bugün ya da pazartesi bakmaya çalışacağım gelişme olursa haberdar ederim. Tekrar teşekkürler yardımlarınız için