Salvo
Kayıtlı Üye
16F84 ÖZELLİKLERİ
PIC MicroController ( 16F84 & 16C84 ) Özellikleri
Microchip in PIC serisi mikroişlemcilerinden en popüleri olan 16C84/16F84 tanıtımı.
PIC16F84 Microcontroller
Genel Özellikler:
Sadece 35 komut ile programlama
13 adet giriş/çıkış portu
Çalışma hızı DC-10 MHz
8 bit data
1Kx14 EEPROM Program Hafızası
64 Byte EEPROM Data Hafızası
Direkt/Dolaylı Adresleyebilme
4 adet Kesme Fonksiyonu. (PB0,TMR0,RB Change,EEPROM Write)
1 milyondan fazla yazma silme
Kolay ve ucuz programlayabilme
Her bir pinden 25 mA e kadar akım verebilme
8 bit programlanabilir Timer
Aşağıda microcontroller in pin diyagramı verilmiştir.
16F84 Pin Diyagramı
16F84 13 adet giriş çıkış portu bulunmaktadır. Bunlardan 8 bitlik olanına PortB, 5 bitlik olanına da PortA denir. PortA nın 4 numaralı pini open kollektör olup giriş çıkış yapmak için bir direnç ile +5 e çekmek gerekmektedir. Diğer portlardan hiçbir ek elemana ihtiyaç duymadan giriş/çıkış yapılabilir.
Microcontroller programlamadan önce Register haritasını bilmemiz gerekmektedir. PIC mimarisinde genelde tüm işlemler W (work) register üzerinden yapılır. Program yazmadan önce hangi porttan giriş hangi porttan çıkış yapılacağının belirlenip bunun microcontrollere anlatılması gerekmektedir. Bu da TrisA ve TrisB registerlarına degerler atayarak olur. Şekil de 16F84 ün register haritası görülmektedir.
Register Haritası
Dikkat edilirse Bank0 ve Bank1 olarak 2 bölme vardır. Bank1 de bilmemiz gereken en önemli registerlar Option,TrisA ve TrisB dir. Bank0 da ise Status,PortA,PortB,TMR0 ve Intcon dur. Bu register ların bit-bit açıklaması aşağıda verilmiştir.
Şimdi bu registerları kısa kısa açıklayalım.
PORTA: 5 adet giriş/çıkış pini vardır.
PORTB: 8 adet giriş/çıkış pini vardır.
TRISA: PortA dan giriş mi yoksa çıkış mı yapılacağını belirleyen register dir. İlgili gözelere 1 yüklenirse Giriş, 0 yüklenirse Çıkış yapılır. Örnek olarak
MOVLW b'00000011'
MOVWF TRISA
Bu komut satırları ile PortA nın 0,1 nolu pinleri Giriş, 2,3,4 nolu pinleri ise çıkış olarak tanımlanmış olur.
TRISB: TrisA ile aynı şekilde ayarlanır.
STATUS REGISTER:
Bit7:IPR 0: Bank0-1
1: Bank2-3
Bit6-5:RP0-RP1 00
ank0
01
ank1
10
ank2
11
ank3
Bit4:TO Süre Aşım Biti
0:WDT süre aşım işlemi yapmışşa
1:CRWDT yada SLEEP yapılmışşa
Bit3D Güç Kesme Biti
0:SLEEP den sonra
1:CLRWDT dan sonra
Bit2:Z 0:Yapılan aritmetik işlemin sonucu sıfırdan farklı ise
1: Yapılan aritmetik işlemin sonucu sıfır ise
Bit1C 1: 8 bitin Düşük anlamlı ilk 4 bitinden taşma olursa
0: Taşma olazsa (ADD komutları ile değişir)
Bit0:C 1:8 bitten taşma olursa
0:Taşma olmazsa(ADD komutları ile değişir)
OPTION REGISTER:
Bit7:RBPU 0: PortB Pull-Up disable
1: PortB Pull-Up enable
Bit6:INTEDG 0B0 düşen kenarda interrupt kabul eder.
1B0 yükselen kenarda interrupt kabul eder.
Bit5:T0CS 0:T0CKI den gelen darbeler Clock kabul edilir
1:Clock kaynagı XTAL in ürettigi dahili darbeler olur.
Bit4:T0SE (T0CS=1 ise)
0:T0CKI den gelen darbeler yükselen kenarda clock u arttırır.
1: T0CKI den gelen darbeler düşen kenarda clock u arttırır.
Bit3SA 0rescaler TMR0 için ayarlı
1rescaler WDT için ayarlı
Bit2,1,0: Prescaler set etme
PS2,PS1,PS0 TMR0 WDT
000 1:2 1:1
001 1:4 1:2
010 1:8 1:4
011 1:16 1:8
100 1:32 1:16
101 1:64 1:32
110 1:128 1:64
111 1:256 1:128
PIC MicroController ( 16F84 & 16C84 ) Özellikleri
Microchip in PIC serisi mikroişlemcilerinden en popüleri olan 16C84/16F84 tanıtımı.
PIC16F84 Microcontroller
Genel Özellikler:
Sadece 35 komut ile programlama
13 adet giriş/çıkış portu
Çalışma hızı DC-10 MHz
8 bit data
1Kx14 EEPROM Program Hafızası
64 Byte EEPROM Data Hafızası
Direkt/Dolaylı Adresleyebilme
4 adet Kesme Fonksiyonu. (PB0,TMR0,RB Change,EEPROM Write)
1 milyondan fazla yazma silme
Kolay ve ucuz programlayabilme
Her bir pinden 25 mA e kadar akım verebilme
8 bit programlanabilir Timer
Aşağıda microcontroller in pin diyagramı verilmiştir.
16F84 Pin Diyagramı
16F84 13 adet giriş çıkış portu bulunmaktadır. Bunlardan 8 bitlik olanına PortB, 5 bitlik olanına da PortA denir. PortA nın 4 numaralı pini open kollektör olup giriş çıkış yapmak için bir direnç ile +5 e çekmek gerekmektedir. Diğer portlardan hiçbir ek elemana ihtiyaç duymadan giriş/çıkış yapılabilir.
Microcontroller programlamadan önce Register haritasını bilmemiz gerekmektedir. PIC mimarisinde genelde tüm işlemler W (work) register üzerinden yapılır. Program yazmadan önce hangi porttan giriş hangi porttan çıkış yapılacağının belirlenip bunun microcontrollere anlatılması gerekmektedir. Bu da TrisA ve TrisB registerlarına degerler atayarak olur. Şekil de 16F84 ün register haritası görülmektedir.
Register Haritası
Dikkat edilirse Bank0 ve Bank1 olarak 2 bölme vardır. Bank1 de bilmemiz gereken en önemli registerlar Option,TrisA ve TrisB dir. Bank0 da ise Status,PortA,PortB,TMR0 ve Intcon dur. Bu register ların bit-bit açıklaması aşağıda verilmiştir.
Şimdi bu registerları kısa kısa açıklayalım.
PORTA: 5 adet giriş/çıkış pini vardır.
PORTB: 8 adet giriş/çıkış pini vardır.
TRISA: PortA dan giriş mi yoksa çıkış mı yapılacağını belirleyen register dir. İlgili gözelere 1 yüklenirse Giriş, 0 yüklenirse Çıkış yapılır. Örnek olarak
MOVLW b'00000011'
MOVWF TRISA
Bu komut satırları ile PortA nın 0,1 nolu pinleri Giriş, 2,3,4 nolu pinleri ise çıkış olarak tanımlanmış olur.
TRISB: TrisA ile aynı şekilde ayarlanır.
STATUS REGISTER:
Bit7:IPR 0: Bank0-1
1: Bank2-3
Bit6-5:RP0-RP1 00
01
10
11
Bit4:TO Süre Aşım Biti
0:WDT süre aşım işlemi yapmışşa
1:CRWDT yada SLEEP yapılmışşa
Bit3D Güç Kesme Biti
0:SLEEP den sonra
1:CLRWDT dan sonra
Bit2:Z 0:Yapılan aritmetik işlemin sonucu sıfırdan farklı ise
1: Yapılan aritmetik işlemin sonucu sıfır ise
Bit1C 1: 8 bitin Düşük anlamlı ilk 4 bitinden taşma olursa
0: Taşma olazsa (ADD komutları ile değişir)
Bit0:C 1:8 bitten taşma olursa
0:Taşma olmazsa(ADD komutları ile değişir)
OPTION REGISTER:
Bit7:RBPU 0: PortB Pull-Up disable
1: PortB Pull-Up enable
Bit6:INTEDG 0B0 düşen kenarda interrupt kabul eder.
1B0 yükselen kenarda interrupt kabul eder.
Bit5:T0CS 0:T0CKI den gelen darbeler Clock kabul edilir
1:Clock kaynagı XTAL in ürettigi dahili darbeler olur.
Bit4:T0SE (T0CS=1 ise)
0:T0CKI den gelen darbeler yükselen kenarda clock u arttırır.
1: T0CKI den gelen darbeler düşen kenarda clock u arttırır.
Bit3SA 0rescaler TMR0 için ayarlı
1rescaler WDT için ayarlı
Bit2,1,0: Prescaler set etme
PS2,PS1,PS0 TMR0 WDT
000 1:2 1:1
001 1:4 1:2
010 1:8 1:4
011 1:16 1:8
100 1:32 1:16
101 1:64 1:32
110 1:128 1:64
111 1:256 1:128