PIC12F683-I/P DIP-8 20MHz Mikrodenetleyici
PIC12F683-I/P, Microchip firmasının ürettiği, 8 uçlu DIP-8 gövdeli 8-bit bir mikrodenetleyicidir. Orta seviye mimari üzerine kurulu olan bu çip; 2K kelimelik Flash program belleği, 128 bayt SRAM ve 128 bayt EEPROM ile küçük ölçekli kontrol ve otomasyon devrelerinde tek başına "beyin" görevi görebilir. Fabrikada kalibre edilmiş dahili osilatörü sayesinde harici kristale ihtiyaç duymadan çalışır; istenirse harici osilatörle 20 MHz'e kadar hızlanabilir. 4 kanallı 10-bit ADC girişi, PWM üretebilen CCP modülü ve dahili analog karşılaştırıcısıyla sensör okuma, motor sürme ve zamanlama işlerini az sayıda dış bileşenle yürütür. GPIO pimlerindeki değişimde kesme (interrupt-on-change) ve dahili zayıf çekme (weak pull-up) dirençleri sayesinde buton ve anahtar girişleri için ek harici direnç eklemeye çoğunlukla gerek kalmaz, bu da devre kartını sadeleştirir.
Teknik Özellikler
| Mikrodenetleyici Ailesi | Microchip PIC12F6xx serisi, 8-bit orta seviye (mid-range) mimari |
| Gövde / Paket | 8 pimli DIP (PDIP-8) |
| Sıcaklık Sınıfı | Endüstriyel ("-I" kodu): -40°C ile +85°C arası |
| Çalışma Gerilimi (VDD) | 2,0V - 5,5V |
| Maksimum Harici Osilatör Frekansı | 20 MHz (HS modu) |
| Dahili Osilatör | Fabrika kalibreli 8 MHz INTOSC; 31 kHz - 8 MHz arasında yazılımla seçilebilir |
| Komut Çevrim Hızı | Fosc/4; 20 MHz osilatörde yaklaşık 5 milyon komut/saniye (5 MIPS) |
| Program Belleği (Flash) | 2048 x 14 bit (2K kelime) |
| Veri Belleği (SRAM) | 128 bayt |
| Veri EEPROM | 256 bayt |
| I/O Pin Sayısı | 6 adet GPIO (GP0-GP5); GP3 sadece giriş olarak çalışır (MCLR ile paylaşımlı) |
| Analog-Dijital Çevirici | 10-bit çözünürlük, 4 kanal (AN0-AN3) |
| Analog Karşılaştırıcı | 1 adet, programlanabilir referans gerilimli (CVref) |
| Zamanlayıcılar | Timer0 (8-bit), Timer1 (16-bit), Timer2 (8-bit, PWM periyot desteği) |
| PWM / CCP Modülü | 1 adet CCP modülü (Capture/Compare/PWM), tek çıkışlı PWM üretimi |
| Komut Seti | 35 adet tek kelimelik komut, çoğu tek çevrimde tamamlanır |
| Programlama Arayüzü | ICSP (In-Circuit Serial Programming), 2 hat üzerinden (ICSPDAT/ICSPCLK) |
| Watchdog Timer | Bağımsız dahili RC osilatörlü WDT, isteğe bağlı etkinleştirme |
Öne Çıkan Özellikler
- Sadece 8 pimli DIP-8 gövdesiyle çok küçük bir devre alanında kendi başına çalışabilen tam teşekküllü bir mikrodenetleyicidir.
- Fabrikada kalibre edilmiş dahili 8 MHz osilatör sayesinde harici kristal veya rezonatöre ihtiyaç duymadan çalışabilir.
- İstendiğinde harici osilatör bağlanarak 20 MHz'e kadar saat hızına çıkabilir, bu da yaklaşık 5 milyon komut/saniyelik işlem kapasitesi sağlar.
- 2048 kelimelik Flash program belleği, 128 bayt SRAM ve 256 bayt EEPROM ile hem program kodunu hem de kalıcı verileri (örneğin kalibrasyon değerlerini) saklayabilir.
- 4 kanallı 10-bit ADC girişi sayesinde sıcaklık, nem, ışık veya gerilim gibi analog sinyalleri doğrudan okuyabilir.
- Dahili analog karşılaştırıcı ve CCP modülü ile ek bir çip eklemeden motor hızı kontrolü veya LED parlaklık ayarı yapılabilir.
- 2,0V-5,5V geniş besleme aralığı sayesinde hem 3,3V hem 5V devrelerde ek bir gerilim regülatörü gerekmeden kullanılabilir.
- GPIO pimlerinde bulunan dahili zayıf pull-up dirençleri ve pim değişiminde kesme özelliği, buton veya anahtar girişlerinde harici direnç ihtiyacını azaltır.
Kullanım Alanları
- Bir potansiyometreden veya LDR'den gelen analog sinyali ADC ile okuyup buna göre bir LED şeridinin parlaklığını PWM ile ayarlamak.
- Tek pille çalışan basit bir sıcaklık alarmı kurmak: NTC termistörden okunan değeri bir eşikle karşılaştırıp buzzer'ı tetiklemek.
- Bir buton girişine göre röle sürerek küçük bir motoru veya elektrikli kilidi açıp kapatan basit bir otomasyon devresi tasarlamak.
- Timer1 veya Timer2 modüllerini kullanarak belirli aralıklarla bir çıkışı tetikleyen basit bir zaman rölesi yapmak.
- Sera veya saksı bitkisi için toprak nem sensöründen gelen analog veriyi okuyup değer eşiğin altına düşünce sulama pompasını çalıştırmak.
- Taşınabilir ölçüm cihazlarında sleep modunda düşük akım çekerek pil ömrünü uzatan bir kontrol birimi olarak kullanmak.
- Küçük bir robot kolunun tek bir servo motorunu CCP modülünün ürettiği PWM sinyaliyle konumlandırmak.
- Bir kapı veya pencere sensöründen (manyetik reed switch) gelen sinyali GPIO'dan okuyup açık kaldığında düşük güçte bir uyarı LED'ini yakan basit bir güvenlik devresi kurmak.
Bağlantı ve Kullanım
Devrede 1 numaralı pim VDD'ye (2,0V-5,5V), 8 numaralı pim ise VSS/GND hattına bağlanır. 4 numaralı pim (GP3/MCLR) varsayılan olarak reset girişidir; çipin kararlı çalışması için bu pimin yaklaşık 10 kΩ'luk bir dirençle VDD'ye çekilmesi (pull-up) önerilir, konfigürasyon bitleri değiştirilerek dijital giriş olarak da kullanılabilir. Programlama, GP0 (ICSPDAT) ve GP1 (ICSPCLK) pimleri üzerinden PICkit veya ICD gibi bir ICSP programlayıcı ile yapılır; bu iki pim devrede başka bir amaçla da kullanılacaksa programlama sırasındaki etkileşimi önlemek için gerekli izolasyon (örneğin seri direnç) düşünülmelidir. Analog girişler AN0-AN3 kanalları üzerinden, PWM çıkışı ise CCP1 fonksiyonunu taşıyan pimden alınır; harici kristal kullanılacaksa OSC1/OSC2 fonksiyonlu pimler bu amaca ayrılır ve genel amaçlı I/O olarak kullanılamaz. Diğer mikrodenetleyicilerde olduğu gibi, VDD ve VSS pimleri arasına devre kartı üzerinde çipe yakın konumda 100 nF'lık bir seramik baypas kondansatörü eklemek, besleme hattındaki gürültüyü azaltarak kararlı çalışmaya katkı sağlar.
Paket İçeriği
- 1 adet PIC12F683-I/P mikrodenetleyici, DIP-8 (Plastik Dual In-line) gövde
- Elektrostatik deşarja (ESD) karşı koruma sağlayan antistatik ambalaj
- Programlayıcı, geliştirme kartı, breadboard veya bağlantı kablosu pakete dahil değildir
- Basılı kullanım kılavuzu veya datasheet kutuda bulunmaz; teknik dokümantasyon üretici (Microchip) web sitesinden temin edilir
Dikkat Edilmesi Gerekenler
- CMOS yapıdaki bu mikrodenetleyici statik elektriğe (ESD) karşı hassastır; devreye takmadan önce topraklama önlemi alınmalı ve pimlere doğrudan elle dokunulmamalıdır.
- VDD ve VSS pimlerinin yönü karıştırılırsa çip kalıcı hasar görebilir; gövde üzerindeki pim 1 çentiği mutlaka kontrol edilerek doğru yönde takılmalıdır.
- GP3/MCLR pimi sadece giriş olarak çalışır, çıkış (output) olarak yapılandırılamaz; bu pimi genel amaçlı çıkış pimi sanıp doğrudan röle veya motor sürmeye çalışmak sık yapılan bir tasarım hatasıdır.
- Bu, programlanmamış (boş) bir çiptir; kullanılabilmesi için PICkit, ICD veya benzeri bir ICSP programlayıcı ve MPLAB gibi bir geliştirme ortamı gerekir, kutudan hazır çalışan bir devre çıkmaz.
- Besleme gerilimi 5,5V'u aşarsa veya ters polarite ile bağlanırsa mikrodenetleyici kalıcı olarak zarar görür; güç bağlantısı yapılmadan önce mutlaka multimetre ile kontrol edilmelidir.
- Osilatör konfigürasyon bitleri (config word) yanlış ayarlanırsa (örneğin harici kristal seçiliyken devrede kristal yoksa) çip hiç çalışmıyormuş gibi görünebilir; INTOSC/harici osilatör seçimi koda yazılmadan önce doğru yapılandırılmalıdır.
- Çipi doğrudan devre kartına lehimlemek yerine bir DIP-8 IC soketi kullanmak, hem lehim ısısı riskini ortadan kaldırır hem de yeniden programlama gerektiğinde çipin sökülüp takılmasını kolaylaştırır.