MİKRODENETLEYİCİLER MCU Micro Controller Unit Mikrodenetleyici Birimi İşlemci ile birlikte I/O ve bellek birimlerinin tek bir entegre olarak paketlendiği elektronik birime mikrodenetleyici (microcontroller) adı verilmektedir. Adres Yolu (Address Bus) CPU Central Processing Unit MİB Merkezi İşlem Birimi Bellek Birimi I/O Arabirimi Veri Yolu (Databus) Kontrol Yolu (Control bus) Şekil xxx. Mikrodenetleyici genel blok şeması Kaynak : PIC Microcontrollers - Programming in C (www.mikroe.com) -27-
MicroChip firması tarafından üretilen mikrodenetleyicilere PIC adı verilmektedir. PIC Peripheral Interface Controller (Çevresel Arabirim Denetleyici) PIC16F84, PIC18F877, PIC18F854 vb. Atmel firması tarafından üretilen mikrodenetleyiciler AVR adını almaktadır. Atmega8, Atmega16, Atmega32, Atmega64, Atmega128 vb. ATmega16 Mikrodenetleyici Şekil. Atmel AVR ailesi Atmega16 mikrodenetleyici Şekil. Atmel AVR ailesi Atmega16 mikrodenetleyici pin diyagramı -28-
ATmega16 Mikrodenetleyici Genel Özellikleri Yüksek performanslı düşük güçlü AVR 8-bit Mikro denetleyici Gelişmiş RISC mimarisi 32 x 8 Genel Amaçlı Çalışan Yazmaçlar (Kütükler-Registers) Tamamıyla Statik (sabit) İşleyiş 16 MHz de 16 MIPS e Kadar Çıkabilme Çip üzerinde 2 çevrimli çarpım Yüksek Dayanıklı Geçici Olmayan (Non-volatile) Bellek Bölümleri 16KByte Flash Program Belleği 512 Byte EEPROM 1KByte Dahili SRAM Yaz/Sil Sayısı: 10,000 Flash/100,000 EEPROM Veri (Data) Saklama: 20 yıl 85 C de/100 yıl 25 C de(1) JTAG (IEEE std. 1149.1 Compliant) Arayüzü Programlanabilir Flash, EEPROM, Sigortalar ve JTAG arayüzünde Kilit Bitleri Arayüz Özellikleri 2 Adet 8-bit Zamanlayıcı/Sayıcı (Timer/Counters) ile Ayrık Prescalers ve Karşılaştırma Modları Bir adet 16-bit Zamanlayıcı/Sayıcı (Timer/Counter with Ayrık Prescaler ve Karşılaştırma ve Capture Modu Ayrık osilatör ile gerçek zamanlı sayaç 4 PWM Kanalı 8 Kanallı, 10-bit ADC - 8 Single-ended Kanal Byte-yönelimli 2 kablolu seri arayüz Programlanabilir Seri USART Master/Slave SPI Seri Arayüz Programlanabilir Watchdog Timer ile Ayrık On-chip Osilatörü On-chip Analog Karşılaştırıcı Özel Mikro denetleyici Özellikleri Power-on Reset ve Programlanabilir Brown-out Detection Dahili Ayarlı RC Osilatör Harici ve Dahili Kesme Kaynakları 6 Çeşit Uyku Modu : Idle, ADC Gürültü Azaltma (Noise Reduction), Powersave, Power-down, Standby ve Extended Standby I/O ve Paketler(modüller) 32 Programlanabilir Giriş/Çıkış (I/O) Dizisi 40-pin PDIP, 44-lead TQFP, and 44-pad QFN/MLF Çalışma Voltajı 2.7 5.5V ATmega16L için 4.5 5.5V ATmega16 için Hız Seviyeleri 0 8 MHz ATmega16L için 0 16 MHz ATmega16 için Güç Tüketimi @ 1 MHz, 3V, ve 25 C ATmega16L için Aktif: 1.1 ma Çalışmazken(Idle Mode): 0.35 ma Kapatıldığında (Power-down Mode): < 1 μa -29-
Mikrodenetleyici Pin İfadeleri PORT B Port B (PB0..PB7), her biri dahili Pull-Up (XCK/T0) PB0 1 40 PA0 (ADC0) (T1) PB1 2 Atmega16 39 PA1 (ADC1) (INT2/AIN0) PB2 3 38 PA2 (ADC2) (OC0/AIN1) PB3 4 37 PA3 (ADC3) ( ) PB4 5 36 PA4 (ADC4) (MOSI) PB5 6 35 PA5 (ADC5) (MISO) PB6 7 34 PA6 (ADC6) (SCK) PB7 8 33 PA7 (ADC7) PORT A Port A (A0.. A7) 8 Kanal 10 bit Analog Giriş Port A (PA0..PA7), her biri dahili Pull-Up Reset Girişi 9 32 AREF ADC Ref. V. DC Besleme VCC 10 31 GND Toprak Toprak GND 11 30 AVCC ADC Besleme OSC Çıkışı XTAL2 12 29 PC7 (TOSC2) OSC Girişi XTAL1 13 28 PC6 (TOSC1) PORT D Port B (PD0..PD7), her biri dahili Pull- Up direncine sahip 8-bit iki yönlü I/O porttudur. (RXD) PD0 14 27 PC5 (TDI) (TXD) PD1 15 26 PC4 (TDO) (INT0) PD2 16 25 PC3 (TMS) (INT1) PD3 17 24 PC2 (TCK) (OC1B) PD4 18 23 PC1 (SDA) (OC1A) PD5 19 22 PC0 (SCL) PORT C Port C (PC0..PC7), her biri dahili Pull-Up (ICP1 ) PD6 20 21 PD7 (OC2) PORT D ADC Girişi AREF = 5V ADC Çözünürlük = 10 Bit ADC giriş ölçüm hassasiyeti =? -30-
Pin No Pin Adı Pin Açıklaması 1 PB0 (XCK/T0) Atmega16 Mikrodenetleyici Pin Tanımları 2 PB1 (T1) 3 PB2 (INT2/AIN0) 4 PB3 (OC0/AIN1) 5 PB4 ( ) 6 PB5 (MOSI) 7 PB6 (MISO) 8 PB7 (SCK) 9 Reset Girişi (GND ye bağlanırsa Reset yapılmış olur.) 10 VCC Besleme Gerilimi 11 GND Ground (Toprak) 12 XTAL2 Osilatör Çıkışı 13 XTAL1 Osilatör Girişi 14 PD0 (RXD) 15 PD1 (TXD) 16 PD2 (INT0) 17 PD3 (INT1) 18 PD4 (OC1B) 19 PD5 (OC1A) 20 PD6 (ICP1 ) 21 PD7 (OC2) 22 PC0 (SCL) 23 PC1 (SDA) 24 PC2 (TCK) 25 PC3 (TMS) 26 PC4 (TDO) 27 PC5 (TDI) 28 PC6 (TOSC1) 29 PC7 (TOSC2) 30 AVCC Port A ve A/D Dönüştürücü için Besleme Gerilimi. ADC kullanılmasa bile AVCC nin harici olarak VCC ye bağlanması gerekir. ADC kullanılırsa, AVCC nin alçak geçiren filtre üzerinden VCC ye bağlanması gerekir. 31 GND Toprak 32 AREF A/D Dönüştürücü için Analog Referans pini 33 PA7 (ADC7) 34 PA6 (ADC6) 35 PA5 (ADC5) 36 PA4 (ADC4) 37 PA3 (ADC3) 38 PA2 (ADC2) 39 PA1 (ADC1) 40 PA0 (ADC0) -31-