MKRODENETLEYCLER Mikrodenetleyici Yaps ve Programlamaya Giri SSTEM KONTROL

  • Slides: 60
Download presentation
MİKRODENETLEYİCİLER Mikrodenetleyici Yapısı ve Programlamaya Giriş SİSTEM KONTROL UYGULAMALARI SEFER KAYMAZ

MİKRODENETLEYİCİLER Mikrodenetleyici Yapısı ve Programlamaya Giriş SİSTEM KONTROL UYGULAMALARI SEFER KAYMAZ

İÇİNDEKİLER-HEDEFLER q Mikroişlemciler q Mikrodenetleyiciler q Bellekler q Mikrodenetleyicinin İç Yapısı q Mikrodenetleyicinin Birimleri

İÇİNDEKİLER-HEDEFLER q Mikroişlemciler q Mikrodenetleyiciler q Bellekler q Mikrodenetleyicinin İç Yapısı q Mikrodenetleyicinin Birimleri q Mikroişlemciler ve Mikrodenetleyicilerin Karşılaştırılması q Mikrodenetleyici Mimarileri q Mikroişlemci Komut Tasarım Mimarileri q Mikrodenetleyici Seçim Kriterleri q Bazı Mikrodenetleyicilerin Özellikleri q Clock Uçları ve Osilatör Devreleri q Besleme Bağlantısı q Reset Bağlantısı q Mikrodenetleyici Paket Kılıfları q Ürün Tanımlama Kod Açılımları

1. Hafta Mikroişlemciler Mikroişlemci, bilgisayarın değişik birimleri arasında veri akışı ve veri işleme görevlerini

1. Hafta Mikroişlemciler Mikroişlemci, bilgisayarın değişik birimleri arasında veri akışı ve veri işleme görevlerini yerine getiren büyük ölçekli entegre devredir. Mikroişlemci entegre devresi, yazılan programları meydana getiren makine kodlarını yorumlamak ve yerine getirmek için gerekli olan tüm mantıksal devreleri içerir.

1. Hafta Mikroişlemciler Genel amaçlı mikroişlemciler; genellikle bilgisayarlarda merkezi işlem birim (CPU, İşlemci, µF)

1. Hafta Mikroişlemciler Genel amaçlı mikroişlemciler; genellikle bilgisayarlarda merkezi işlem birim (CPU, İşlemci, µF) olarak kullanılır. CPU üzerinde RAM, ROM, I/O(Giriş/Çıkış) birimleri yoktur. Bir mikro işlemci görevlerini yerine getirebilmek için mutlaka, verilerin saklanacağı bellek birimine, dış dünyadan veri alışverişinin düzenli yapılmasını sağlayan giriş/çıkış birimine ihtiyaç duyar. Bunlar mikroişlemcili bir sistemde ayrı birimler(entegreler) şeklinde yerini alır. Aralarındaki iletişim için veri yolu ve adres yolları denilen iletim hatları kullanılır.

1. Hafta Mikrodenetleyiciler Bir mikroişlemcili sistemi meydana getiren temel bileşenlerden mikroişlemci (CPU), ROM, RAM,

1. Hafta Mikrodenetleyiciler Bir mikroişlemcili sistemi meydana getiren temel bileşenlerden mikroişlemci (CPU), ROM, RAM, I/O(giriş/çıkış) birimlerinin tek bir chip(entegre) içerisinde üretilmiş biçimine mikrodenetleyici (MCU-Micro Controller Unit) denir. Mikrodenetleyici kullanarak oluşturacağınız bir sistemde giriş-çıkış-bellek ünitelerine ve bu üniteler arasındaki iletişim için veri yollarına ihtiyaç duyulmayacağından(içerisinde barındırdığından) daha basit ve daha ucuz bir yapı oluşturmak mümkündür. Bilgisayar teknolojisi gerektiren uygulamalarda kullanılmak üzere tasarlanmış olan mikrodenetleyiciler, mikroişlemcilere göre çok daha basit ve ucuzdur. Mikrodenetleyiciler bilgisayarın küçük bir modeli gibidir.

1. Hafta BELLEKLER RAM Bellekler: Mikroişlemcinin çalışması esnasında her türlü değişkenin üzerinde yer aldığı

1. Hafta BELLEKLER RAM Bellekler: Mikroişlemcinin çalışması esnasında her türlü değişkenin üzerinde yer aldığı ve geçici işlemlerin yapıldığı birimi RAM belleklerdir. Özel bir sıra takip etmeden herhangi bir adrese erişildiği için rastgele erişimli bellek (Random Access Memory)–RAM olarak isimlendirilir. ROM Bellekler: Yalnız okunabilen birimlere ROM (Read Only Memory) bellekler denir. Bu bellek elemanlarının en büyük özelliği enerjisi kesildiğinde içindeki bilgilerin silinmemesidir. ROM belleklere bilgiler üretim aşamasında yüklenir. Kullanıcıların bellek içindeki bilgileri değiştirmesi mümkün değildir.

1. Hafta BELLEKLER ROM Bellek Çeşitleri Programlanabilir ROM Bellek (PROM): PROM’lar bir kez programlanabilir.

1. Hafta BELLEKLER ROM Bellek Çeşitleri Programlanabilir ROM Bellek (PROM): PROM’lar bir kez programlanabilir. Bu bellek elemanı entegre şeklindedir. Kaydedilen bilgiler enerji kesildiğinde silinmez. Üzerine program kodlarını veya verileri yazmak için PROM programlayıcı cihazlara ihtiyaç vardır. Silinebilir Programlanabilir ROM Bellek (EPROM): PROM”lar bellek hücrelerine elektrik sinyali uygulanarak programlama işlemi yapılır. Kaydedilen bilgiler enerji kesildiğinde silinmez. “EPROM” içindeki programın silinmemesi için cam pencereli kısım ışık geçirmeyen bantla örtülmelidir. Eprom belleğe yeniden yazma işlemi yapmak için “EPROM” üzerindeki bant kaldırılıp ultraviyole altında belirli bir süre tutmak gerekir. Bu şekilde içindeki bilgiler silinebilir. Elektriksel Yolla Değiştirilebilir ROM Bellek (EEPROM): Üzerindeki bilgiler, elektriksel olarak yazılabilen ve silinebilen bellek elemanlarıdır. “EEPROM”u besleyen enerji kesildiğinde üzerindeki bilgiler kaybolmaz. “EEPROM”daki bilgilerin silinmesi ve yazılması için özel silme ve yazma cihazlarına gerek yoktur. Programlayıcılar üzerinden gönderilen elektriksel sinyalle programlanır. “EEPROM”la aynı özellikleri taşıyan fakat yapısal olarak farklı ve daha hızlı olan, elektriksel olarak değiştirilebilir “ROM”lara flash bellek denir.

1. Hafta Mikrodenetleyici İç Yapısı

1. Hafta Mikrodenetleyici İç Yapısı

1. Hafta Mikrodenetleyicinin Birimleri Mikroişlemci Çekirdeği (CPU) : İşlemci, Merkezi İşlem Birimi (Central Processing

1. Hafta Mikrodenetleyicinin Birimleri Mikroişlemci Çekirdeği (CPU) : İşlemci, Merkezi İşlem Birimi (Central Processing Unit) ya da CPU olarak ta bilinir. Mikrodenetleyicinin program komutlarını program belleğinden aldıktan sonra kodlarını çözen ve karşılığı olan işlemleri yerine getiren merkez birimidir. Mikrodenetleyicinin(Mini Bilgisayarın) çalışmasını düzenler.

1. Hafta Mikrodenetleyicinin Birimleri Program Belleği (ROM) : Programların saklandığı ve defalarca yazılıp silinebilen

1. Hafta Mikrodenetleyicinin Birimleri Program Belleği (ROM) : Programların saklandığı ve defalarca yazılıp silinebilen flash bellektir. Çalıştırılacak programın kalıcı olarak saklandığı bellektir.

1. Hafta Mikrodenetleyicinin Birimleri Veri Belleği (RAM) : Programın çalışması esnasında geçici olarak saklanması

1. Hafta Mikrodenetleyicinin Birimleri Veri Belleği (RAM) : Programın çalışması esnasında geçici olarak saklanması gereken veriler için kullanılır. GBR (General Purpose Register – Genel Amaçlı Saklayıcı) olarak da adlandırılan bu bellekte programı yazılması esnasında değişkenler içerisine atanacak veriler bu alanda saklanır. Bu bellekte ayrıca SPR (Special Function Register-Özel Amaçlı Saklayıcı) adı verilen saklayıcılar da vardır. Bunlara PIC’in çalışma biçimini yönlendiren veriler yazılır.

1. Hafta Mikrodenetleyicinin Birimleri Veri Belleği (EEPROM) : Mikrodenetleyici üzerindeki gerilim kaldırılsa bile kaybolması

1. Hafta Mikrodenetleyicinin Birimleri Veri Belleği (EEPROM) : Mikrodenetleyici üzerindeki gerilim kaldırılsa bile kaybolması istenmeyen verilerin saklandığı bellektir. Bu bellek üzerine de defalarca veri yazma ve silme işlemi yapılabilir.

1. Hafta Mikrodenetleyicinin Birimleri Giriş/Çıkış (I/O-Input/Output) Birimleri(Ports): Mikrodenetleyicinin dış dünya iletişimini sağlayan girdi ve

1. Hafta Mikrodenetleyicinin Birimleri Giriş/Çıkış (I/O-Input/Output) Birimleri(Ports): Mikrodenetleyicinin dış dünya iletişimini sağlayan girdi ve çıktı şeklinde ayarlanabilen bağlantı pimleridir.

1. Hafta Mikrodenetleyicinin Birimleri Saat Sinyali Üreteci (Osilatör-Oscilator-Clock): Osilatör oluşturduğu clock sinyali ile mikrodenetleyicideki

1. Hafta Mikrodenetleyicinin Birimleri Saat Sinyali Üreteci (Osilatör-Oscilator-Clock): Osilatör oluşturduğu clock sinyali ile mikrodenetleyicideki tüm işlemlerin senkron-eşzamanlı olarak yapılmasını sağlar. Clock(saat) sinyalini bir komutanın askerlerin uyum için yürümesi için verdiği sağ-sol komutuna benzetebiliriz.

1. Hafta Mikrodenetleyicinin Birimleri Zamanlayıcılar (Timers): Timer birimi bir çalar saat gibi kurularak zaman

1. Hafta Mikrodenetleyicinin Birimleri Zamanlayıcılar (Timers): Timer birimi bir çalar saat gibi kurularak zaman dolduğunda mikrodenetleyicide kesme oluşturan birimdir. Clock darbelerinin yükselen ya da düşe kenarını sayarak ilgili registerlarda (kaydedicilerde) saklanan değere gelindiğinde kesme üretir. Ayrıca harici kaynaklardan gelen darbeleri de sayar.

1. Hafta Mikrodenetleyicinin Birimleri PWM(Darbe Genişlik Üreteci): Pulse Width Modulation (Darbe Genişlik Modülasyonu) kare

1. Hafta Mikrodenetleyicinin Birimleri PWM(Darbe Genişlik Üreteci): Pulse Width Modulation (Darbe Genişlik Modülasyonu) kare dalganın genişliklerini değiştirerek çıkışta istenen analog gerilim düzeyinin elde edilmesini sağlar.

1. Hafta Mikrodenetleyicinin Birimleri Analog Digital Converter (ADC): İsminden de anlaşılacağı gibi bu birim

1. Hafta Mikrodenetleyicinin Birimleri Analog Digital Converter (ADC): İsminden de anlaşılacağı gibi bu birim mikrodenetleyicinin ADC pinine gelen analog sinyali(2. 3 V-1, 2 V gibi) 1 ve 0 lardan oluşan dijital sinyale dönüştürerek mikrodenetleyicinin yorumlayabileceği bir veri halini almasını sağlar.

1. Hafta Mikrodenetleyicinin Birimleri Digital Analog Converter (DAC): Mikrodenetleyiciler analog girişleri anlamayacağı gibi analog

1. Hafta Mikrodenetleyicinin Birimleri Digital Analog Converter (DAC): Mikrodenetleyiciler analog girişleri anlamayacağı gibi analog çıkış da veremezler. Dijital Analog Çevirici PWM sinyalleri ile mikrodenetleyiciden analog sinyal üretilmesini sağlar.

1. Hafta Mikrodenetleyicinin Birimleri WDT (Watchdog Timer): Watchdog Timer(bekçi köpeği zamanlayıcısı) programın aksaması ya

1. Hafta Mikrodenetleyicinin Birimleri WDT (Watchdog Timer): Watchdog Timer(bekçi köpeği zamanlayıcısı) programın aksaması ya da tıkanması durumları için tasarlanmıştır. WDT belirli aralıklarla programı resetleyerek yeniden başlatır. Sistem saatinden bağımsız RC osilatöre sahiptir. Bu sayede mikrodenetleyici osilatörünün çalışmaması durumunda da devreye girebilir.

1. Hafta Mikrodenetleyicinin Birimleri Interrupts(Kesmeler): Mikrodenetleyiciler hafızalarında yazılan programı satır okuyarak ilgili komutun gerektirdiği

1. Hafta Mikrodenetleyicinin Birimleri Interrupts(Kesmeler): Mikrodenetleyiciler hafızalarında yazılan programı satır okuyarak ilgili komutun gerektirdiği işlemleri gerçekleştirirler. Programın akışına göre subroutine denilen alt programlara dallanabilirler. Fakat bazı durumlarda mikrodenetleyicinin program akışının dışına çıkması istenebilir. Bu durumlarda interruptlar(kesmeler) devreye girer.

1. Hafta Mikrodenetleyicinin Birimleri Interrupts(Kesmeler): Programın alt programa dallanması gereken yerler program yazılırken belirlenir.

1. Hafta Mikrodenetleyicinin Birimleri Interrupts(Kesmeler): Programın alt programa dallanması gereken yerler program yazılırken belirlenir. Fakat kesme program dışında bir dış uyarıcı ile gerçekleşir. Bu dış uyarıcı seri haberleşme biriminden gelen bir veri, timerın dolmasıyla oluşan bir sinyal, ya da bir sensörün bağlı olduğu pine gelen 5 v (lojik 1) olabilir. Kesme sinyali geldiğinde program kesme vektörüne dallanarak burada bulunan komutları işlemeye başlar.

1. Hafta Mikrodenetleyicinin Birimleri UART(Universal Asynchronous Receiver / Transmitter): Paralel haberleşmede 8 bitlik bir

1. Hafta Mikrodenetleyicinin Birimleri UART(Universal Asynchronous Receiver / Transmitter): Paralel haberleşmede 8 bitlik bir veri 8 ayrı kablo üzerinden bir defada iletilirken seri haberleşmede tek bir kablo üzerinden 8 defada iletilir. UART paralel veri ve seri veriyi birbirine dönüştürme işini yapar. Mikrodenetleyici sistem yolundaki paralel veri başka bir sisteme gönderilmeden önce seri veriye dönüştürülerek tek bir kablo üzerinden gönderilir. Karşı taraftaki UART modülü ise gelen veriyi paralel veriye dönüştürerek mikrodenetleyici yapısına uygun hale getirir. UART ile çift yönlü asenkron haberleşme gerçekleştirilebilir.

1. Hafta Mikroişlemci ve Mikrodenetleyicinin Karşılaştırılması MİCROİŞLEMCİLER MİKRODENETLEYİCİLER CPU tek başınadır, RAM, ROM, I/O,

1. Hafta Mikroişlemci ve Mikrodenetleyicinin Karşılaştırılması MİCROİŞLEMCİLER MİKRODENETLEYİCİLER CPU tek başınadır, RAM, ROM, I/O, Timer ayrık birimdir. CPU, RAM, ROM, I/O ve Timer birimleri tek chip içerisidedir. ROM, RAM ve I/O kullanıcı tarafından belirlenir. Chip üzerindeki ROM, RAM, I/O port sayıları sabittir, değiştirilmez. Komut sayısı 100’den fazladır. Komut Sayısı 100’den azdır. Genel amaçlıdır. Çoğunlukla tek amaçlıdır. Pahalıdır. Maliyet, enerji ve yer bakımından önemli olan uygulamalarda tercih edilirler. Çok yönlüdür.

1. Hafta Mikrodenetleyici Kullanım Alanları Mikro denetleyici uygulama alanlarına veya mikrodenetleyicilerin kullanıldığı cihazlara örnek

1. Hafta Mikrodenetleyici Kullanım Alanları Mikro denetleyici uygulama alanlarına veya mikrodenetleyicilerin kullanıldığı cihazlara örnek olarak; yalnızca evimizde kullandığımız buzdolabı, çamaşır ve bulaşık makineleri, mikrodalga fırın, TV, video, vb cihazlar değil, kullandığımız otomobildeki motor kontrol ünitelerini, ABS fren sistemlerini ve hız sabitleyicileri (cruise control) ile birlikte modern yaşamın parçası olarak gördüğümüz dijital kameralarını, cep telefonlarını, telefon ve faks cihazlarını, lazer yazıcıları, fotokopileri, vb cihazları sıralayabiliriz.

1. Hafta Mikrodenetleyici Mimarileri Mikroişlemci ve denetleyiciler hafıza kullanımı bakımından iki mimari üzerine tasarlanır

1. Hafta Mikrodenetleyici Mimarileri Mikroişlemci ve denetleyiciler hafıza kullanımı bakımından iki mimari üzerine tasarlanır Von Neuman Harvard Mimariler ABD savunma bakanlığının askeri amaçlı bir proje için açtığı tasarım yarışması sonucu ortaya çıkarılmışlardır. Geçmişte Von Neuman mimarisi tercih edilse de 1970’li yılların sonlarında Harvard mimarisi mikrodenetleyici tasarımında standart hale gelmiştir. Günümüzde bu iki mimari yapının özelliklerini de içeren mikrodenetleyiciler (MAXQ ailesi) de bulunmaktadır.

1. Hafta Mikrodenetleyici Mimarileri Von Neuman Veri ve Program alanı aynı hafıza haritası üzerinde

1. Hafta Mikrodenetleyici Mimarileri Von Neuman Veri ve Program alanı aynı hafıza haritası üzerinde bulunur Kullanan işlemciler: 80 X 86, 68 HC 11, v. b. Von Neuman mimarisi PC olarak bilinen kişisel bilgisayarlar arasında standarttır.

1. Hafta Mikrodenetleyici Mimarileri Harvard Veri ve Program alanı ayrı hafıza haritası üzerindedir Güvenilirdir

1. Hafta Mikrodenetleyici Mimarileri Harvard Veri ve Program alanı ayrı hafıza haritası üzerindedir Güvenilirdir Kullanan işlemciler: 8051 , PIC 8051’in iç yapısı Harvard mimarisine uygun tasarlanmıştır.

1. Hafta Mikrodenetleyici Komut Tasarım Mimarileri Mikrodenetleyici ya da mikroişlemciler genellikle komut işleme açsından

1. Hafta Mikrodenetleyici Komut Tasarım Mimarileri Mikrodenetleyici ya da mikroişlemciler genellikle komut işleme açsından iki grup mimari altında toplanabilir. CISC (Complex Instruction Set Computer, Karmaşık Komut Setli Bilgisayar) RISC (Reduced Instruction Set Computer, Azaltılmış Komut Setli Bilgisayar)

1. Hafta Mikrodenetleyici Komut Tasarım Mimarileri CISC Çekirdekler Mikroişlemci çok sayıda komut içerir ve

1. Hafta Mikrodenetleyici Komut Tasarım Mimarileri CISC Çekirdekler Mikroişlemci çok sayıda komut içerir ve her eylem için bir komut tanımlanmıştır. Temel prensip: donanım her zaman yazılımdan hızlıdır CISC Karmaşık Komut Set Bilgisayarı anlamına gelmektedir. Her işlem için farklı bir komut kullanmak işlemleri hızlandırır ancak donanımın yükü artar Çeşitli olan komutları çalıştırmak için mikro-kod kullanılmaktadır. Komutların çözümünde oldukça karmaşık devrelere (kod çözücülere) ihtiyaç vardır.

1. Hafta Mikrodenetleyici Komut Tasarım Mimarileri RISC Çekirdekler Karmaşık assembly dili komutlarının tamamı kullanılmamaktadır.

1. Hafta Mikrodenetleyici Komut Tasarım Mimarileri RISC Çekirdekler Karmaşık assembly dili komutlarının tamamı kullanılmamaktadır. Daha az, basit ve hızlı komutlar, uzun, karmaşık ve daha yavaş CISC komutlarından daha verimlidir. RISC mimari, daha basit komutlar kullanarak çip karmaşıklığını azaltmaktadır. RISC komutlarının daha kısa olması belirli bir görevin tamamlanabilmesi için daha fazla komuta gereksinim duyulmasına yol açabilir. RISC mimariler için üretilen derleyiciler daha önce CISC mimarisinde bulunan donanım birimlerinin görevini üstlenmek üzere ekstra komutlar kullanmaktadır.

1. Hafta Mikrodenetleyici Komut Tasarım Mimarilerinin Karşılaştırılması

1. Hafta Mikrodenetleyici Komut Tasarım Mimarilerinin Karşılaştırılması

1. Hafta Mikrodenetleyici Üreten Firmalar Günümüzde mikrodenetleyiciler, basit ve ucuz üretim maliyetleri dolayısıyla birçok

1. Hafta Mikrodenetleyici Üreten Firmalar Günümüzde mikrodenetleyiciler, basit ve ucuz üretim maliyetleri dolayısıyla birçok firma tarafından üretilmektedir. Bu firmalar; Intel: 8051, 8852(80 C 51 BH, AT 89 C 51…) Motorolla: HC 908(68 HC 11 D 0…) Atmel: AT 91 SAM 9260… Philips-NXP: LPC 2148… Zilog: e. Z 80 F 91, Z 8 F 0811… Cypress PSo. C: CY 8 C 27643… Mitsubishi Renesas: R 8 C/L 36 A… Texas: TMS 470 R 1 A 64… ST: STM 32 F 103… Parallax Basic Stamp: BS 1 -IC… Microchip: PIC 16 F 877, PIC 12 F 629….

1. Hafta Mikrodenetleyici Seçimi Farklı üreticiler tarafından üretilen mikro denetleyicilerin çekirdekleri/mimarileri de farklı yapıda

1. Hafta Mikrodenetleyici Seçimi Farklı üreticiler tarafından üretilen mikro denetleyicilerin çekirdekleri/mimarileri de farklı yapıda ve özellikte üretilmektedir. Mikro denetleyiciler arasında aşağıdaki farklar bulunabilir: Mimari farkı: Harvard, Von Neuman. Kelime genişliği: 4, 8, 16, 32, 64 bit. Komut setleri: RISC, CISC komut işleme tekniği. Kaydedici çeşitleri ve sayıları, Adresleme yöntemleri. Kesme sayıları ve özellikleri. Hız / güç / boyut özellikleri, Çalışma frekansları Gerekli çevresel birimler (USART, CAPTURE/COMPARE/PWM–CCP modülü vs) Programlama dilleri çeşitliliği (Basic, C, Pascal, Assembly, vs)

1. Hafta Mikrodenetleyici Seçimi Hangi üreticinin seçileceği konusunda genellikle tasarımcılar komut setini, programlamasını ve

1. Hafta Mikrodenetleyici Seçimi Hangi üreticinin seçileceği konusunda genellikle tasarımcılar komut setini, programlamasını ve programlama için gerekli programları iyi bildikleri üreticiyi seçmektedir. Zaten her üreticinin bir ürünü için, bir başka üreticinin ürettiği hemen aynı işi yapacak bir ürün bulunabilmektedir. Hangi üreticinin seçileceğine karar verildikten sonra sıra o üreticiye ait hangi mikrodenetleyicinin seçileceğine gelmiştir.

1. Hafta Mikrodenetleyici Kelime Genişliği(Uzunluğu) Mikrodenetleyicinin her saat darbesinde işlem yapabileceği bit sayısına kelime

1. Hafta Mikrodenetleyici Kelime Genişliği(Uzunluğu) Mikrodenetleyicinin her saat darbesinde işlem yapabileceği bit sayısına kelime uzunluğu denir. Mikrodenetleyiciler bu süre zarfında komutları yorumlar veya bellekteki veriler üzerinde işlem yapar. İşlenen veriler mikrodenetleyicinin özelliğine göre 4 -bit, 8 -bit, 16 -bit, 32 -bit uzunluğunda olabilir. Kelime uzunluğu veri yolu uzunluğuna eşittir. Mikrodenetleyicinin, her saat darbesinde işleyebildiği kelime uzunluğu ile tanımlanır. Intel 8086 işlemcisinin(CPU) kelime uzunluğu 16 -bit olduğu için 16 -bitlik mikroişlemci denir. PIC 16 F 887 mikrodenetleyicinin kelime uzunluğu 8 bittir.

1. Hafta Mikrodenetleyici Kelime Genişliği(Uzunluğu) 8 bitlik ve 16 bitlik mikrodenetleyicileri bir toplama işlemi

1. Hafta Mikrodenetleyici Kelime Genişliği(Uzunluğu) 8 bitlik ve 16 bitlik mikrodenetleyicileri bir toplama işlemi üzerinden karşılaştıralım. 8 bitlik Mikrodenetleyici 16 bitlik Mikrodenetleyici

2. Hafta Bazı Mikrodenetleyicilerin Özellikleri PIC 16 F 887 Mikrodenetleyicisi 35 kelimelik komut seti

2. Hafta Bazı Mikrodenetleyicilerin Özellikleri PIC 16 F 887 Mikrodenetleyicisi 35 kelimelik komut seti RISC mimarisi Çalışma Frekansı 0 -20 MHz Dahili Osilatör (8 Mhz-31 Khz) 35 adet genel amaçlı giriş/çıkış(I/O) pini 8 Kbytes Program Hafızası Devre üzerinde programlanabilme özelliği 256 Bytes EEPROM hafıza 368 Bytes RAM hafıza A/D çevirici 14 kanal, 10 bit çözünürlük 3 adet Zamanlayıcı/Sayıcı Kısır döngü sayacı (Watch Dog Timer) Analog Karşılaştırıcı PWN çıkış özeliği Gelişmiş USART(Seri Port) Modülü SPI(Seial Peripheral Interface) ve I 2 C desteği

2. Hafta Bazı Mikrodenetleyicilerin Özellikleri PIC 16 F 84 Mikrodenetleyicisi 18 pinli mikrodenetleyici RISC

2. Hafta Bazı Mikrodenetleyicilerin Özellikleri PIC 16 F 84 Mikrodenetleyicisi 18 pinli mikrodenetleyici RISC mimarisi Çalışma Frekansı 4 -20 MHz 13 adet genel amaçlı giriş/çıkış(I/O) pini 1 Kbytes Program Hafızası 64 Bytes EEPROM hafıza 68 x 8 Bytes RAM hafıza Çalışma Gerilimi: 2 V- 5, 5 V PIC ismi (Peripheral Interface Controller), Microchip firmasının ürettiği mikrodenetleyicilere verilen isimdir.

2. Hafta Bazı Mikrodenetleyicilerin Özellikleri Intel 8051 AH Mikrodenetleyicisi 40 pinli mikrodenetleyici 8 Bitlik

2. Hafta Bazı Mikrodenetleyicilerin Özellikleri Intel 8051 AH Mikrodenetleyicisi 40 pinli mikrodenetleyici 8 Bitlik mikrodenetleyici Çalışma Frekansı 3, 5 -12 MHz 32 adet genel amaçlı giriş/çıkış(I/O) pini 64 Kbytes Program Hafızası 4 KBytes EEPROM hafıza 64 KBytes RAM hafıza 2 Adet Zamanlayıcı/Sayıcı

2. Hafta Clock Uçları ve Osilatör Devreleri PIC bir mikroişlemcili sistem olduğundan, komutları işleyebilmesi

2. Hafta Clock Uçları ve Osilatör Devreleri PIC bir mikroişlemcili sistem olduğundan, komutları işleyebilmesi için saat(clock) sinyali dediğimiz, frekansı belli olan bir kare dalga işarete ihtiyaç duyar. PIC mikro denetleyicilerin saat sinyali girişi için kullanılan iki ucu vardır; bunlar OSC 1 (16 F 84 için 16. pin, 16 F 877 için 13. pin olmak üzere) ve OSC 2 (16 F 84 için 15. pin, 16 F 877 için 14. pin olmak üzere) uçlarıdır. Bu uçlara farklı tipte osilatörlerden elde edilen clock sinyalleri uygulanabilir. Seçilecek osilatör tipi Pic’in kontrol ettiği devrenin hız gereksinimine bağlı olarak seçilir. Clock osilatör tipleri şunlardır: RC: Direnç/Kondansatör XT: Kristal veya seramik resonetör HS: Yüksek hızlı kristal veya seramik resonetör LP: Düşük frekanslı kristal

2. Hafta Clock Uçları ve Osilatör Devreleri Pic’e bağlanan clock osilatörünün tipi programlama esnasında

2. Hafta Clock Uçları ve Osilatör Devreleri Pic’e bağlanan clock osilatörünün tipi programlama esnasında Pic içerisinde bulunan konfigürasyon bitlerine yazılmalıdır.

2. Hafta Clock Uçları ve Osilatör Devreleri RC Osilatör: Direnç ve kondansatörden oluşan osilatördür.

2. Hafta Clock Uçları ve Osilatör Devreleri RC Osilatör: Direnç ve kondansatörden oluşan osilatördür. Çalışma frekansının hassas olmadığı uygulamalarda kullanılır. Mikrodenetleyici devrelerde genellikle kristal (XT) veya RC osilatörler kullanılır.

2. Hafta Clock Uçları ve Osilatör Devreleri XT(Kristal) Osilatör: Kristal osilatör veya uygulamalarda kullanılır.

2. Hafta Clock Uçları ve Osilatör Devreleri XT(Kristal) Osilatör: Kristal osilatör veya uygulamalarda kullanılır. resonatör kullanılır. Zamanlamanın hassas olduğu Ø Kristal iki bacaklı bir elemandır. Kristalin bir bacağı PIC 16 F 84 ün 15 numaralı pinine, diğer bacağı ise 16 numaralı pine bağlanır. Ayrıca bu pinlerle şase arasına birer mercimek kondansatör bağlanmalıdır. Ø Seramik resonatörler içerisinde kristal ve iki adet mercimek kondansatörü hazır olarak bulunduran devre elemanlarıdır. Resonatör kullanıldığında; mercimek kondansatör kullanmaya gerek kalmaz. Resonatörlerin üç bacağı bulunur. Ortadaki bacak şaseye bağlanır. Diğer iki bacak ise; yönlerine bakılmaksızın 15 ve 16. Pinlere bağlanır. Ø Burada unutulmaması gereken bağlanan kondansatörlerin değerleri aynı olmalıdır.

2. Hafta Clock Uçları ve Osilatör Devreleri XT(Kristal) Osilatör: Kristal ve kondansatör kullanılarak yapılan

2. Hafta Clock Uçları ve Osilatör Devreleri XT(Kristal) Osilatör: Kristal ve kondansatör kullanılarak yapılan osilatörler zamanlamanın önemli olduğu yerlerde kullanılır. Kristal osilatörün kullanıldığı devrelerde kristale bağlanacak kondansatörün seçimine özen gösterilmelidir. Aşağıda tabloda hangi frekansta kaç µf’lık kondansatör kullanılacağını göstermektedir.

2. Hafta Clock Uçları ve Osilatör Devreleri XT(Kristal) Osilatör: Seçilen kondansatör değerlerinin gerekli değerlerden

2. Hafta Clock Uçları ve Osilatör Devreleri XT(Kristal) Osilatör: Seçilen kondansatör değerlerinin gerekli değerlerden yüksek olması, elde edilen kare dalganın bozuk olmasına ve Pic’in çalışmamasına neden olur. C 1 ve C 2 kondansatörünün birbirine eşit olması gerekir.

2. Hafta Besleme Gerilimi Besleme geriliminin bağlandığı bacaklar Vdd (PIC 16 F 84 için

2. Hafta Besleme Gerilimi Besleme geriliminin bağlandığı bacaklar Vdd (PIC 16 F 84 için 14 nolu bacak, PIC 16 F 877 için ise 11 ve 32 nolu iki farklı bacak) isimli bacaklardır. Toprak/Şase bağlantısı için ise Vss (PIC 16 F 84 için 5 nolu bacak, PIC 16 F 877 için ise 12 ve 31 nolu iki farklı bacak) isimli bacaklar kullanılır. Vdd' ile 'Vss' uçları arasına devreye ilk gerilim uygulaması anında (PIC'e enerji verme sırasında) olabilecek gerilim dalgalanmalarının sebep olabileceği arızaları önlemek amacıyla 0, 1 mikro. F'lık bir 'dekuplaj kondansatörü' bağlanır.

2. Hafta Besleme Gerilimi PIC’ler CMOS teknolojisi ile üretildiklerinden çok geniş besleme gerilimi aralığında

2. Hafta Besleme Gerilimi PIC’ler CMOS teknolojisi ile üretildiklerinden çok geniş besleme gerilimi aralığında (2 -6 V) çalışmalarına rağmen 5 Voltluk gerilim deneyler için ideal bir değerdir.

2. Hafta Reset Bağlantısı PIC’lerin çeşitli sıfırlama(resetleme) durumları mevcuttur. Bu durumlardan bazları denetleyici tarafından

2. Hafta Reset Bağlantısı PIC’lerin çeşitli sıfırlama(resetleme) durumları mevcuttur. Bu durumlardan bazları denetleyici tarafından kararlı bir çalışma sağlanması amacıyla otomatik olarak kullanılır. Sıfırlama işleminde tüm kaydedicilerin içerikleri sıfırlanmaz(veya başlangıç konumuna gelmez). Bu nedenle sıfırlama anında bazı belli kaydedicilerin içeriği sıfırlanırken bazı kaydedicilerin içeriği ise rasgele bir değer alacaktır.

2. Hafta Reset Bağlantısı Reset Çeşitleri: Besleme ilk verildiği anda sıfırlama – Power On

2. Hafta Reset Bağlantısı Reset Çeşitleri: Besleme ilk verildiği anda sıfırlama – Power On Reset (POR) Güç Zamanlayıcılı Sıfırlama – Power Up Timer (PWRT) Osilatör Başlama Zamanlayıcısı – Osilator Start-up Timer (OST) Gerilim Düşmesi Sıfırlama – Brown Out Reset (BOR) Normal Çalışmada MCLR Sıfırlaması Uyku(Sleep) Modunda MCLR Sıfırlaması Normal Çalışmada WDT (Watchdog Timer) Sıfırlama Uyku Modundan Çıkışta WDT Sıfırlama

2. Hafta Reset Bağlantısı Beslenme İlk Verildiği Anda Sıfırlama – Power On Reset (POR):

2. Hafta Reset Bağlantısı Beslenme İlk Verildiği Anda Sıfırlama – Power On Reset (POR): PIC 16 F 876 ve PIC 16 F 877’in besleme uçlarına gerilim uygulandığında PIC’e yüklenen programın başlangıç adresinden itibaren çalışmasını sağlayan bir reset devresi vardır. Bu reset devresi PIC içerisindedir ve «Power On Reset(POR)» olarak adlandırılır. Denetleyicinin pozitif besleme geriliminde (VDD) 1. 2 V ile 1. 7 V arasında bir gerilim yükselmesi saptandığında POR sıfırlama sinyali meydana gelir.

2. Hafta Reset Bağlantısı Güç Zamanlayıcılı Sıfırlama – Power Up Timer (PWRT): Bu resetleme

2. Hafta Reset Bağlantısı Güç Zamanlayıcılı Sıfırlama – Power Up Timer (PWRT): Bu resetleme durumu seçildiğinde PIC denetleyici yaklaşık 72 ms süre boyunca(TPWRT) reset konumunda kalır. Süre sonunda denetleyici hafızasındaki programı çalıştırmaya başlar. Denetleyici besleme gerilimi ilk anda hemen normal değerinde değildir. Belli bir süre sonra güç kaynağı istenen Vdd değerine ulaşır. İşte bu durumda denetleyicinin kararsız durumlar üretmesini önlemek için PWRT resetleme durumu seçebilir. TPWRT süresi değişik denetleyici versiyonlarında değişiktir. Kullandığınız denetleyicinin veri sayfalarında (data sheet) bu süre değerleri bulunmaktadır.

2. Hafta Reset Bağlantısı Osilatör Başlama Zamanlayıcısı – Oscillator Start-up Timer(OST): Osilatör başlama zamanlayıcısı

2. Hafta Reset Bağlantısı Osilatör Başlama Zamanlayıcısı – Oscillator Start-up Timer(OST): Osilatör başlama zamanlayıcısı 1024 adet çevrimlik bir gecikme zamanı süresince denetleyiciyi sıfırlama konumunda tutar. Bu süre kristal ve rezonatör osilatörlerin osilasyona başlama ve kararlı duruma gelmesi için ihtiyaç duyulan süreyi sağlar. OST zamanlayıcısı XT, LP ve HS Osilatör bağlantıları için geçerlidir.

2. Hafta Reset Bağlantısı Gerilim Düşmesi Sıfırlama –Brown Out Reset (BOR): BOR devresini PIC’i

2. Hafta Reset Bağlantısı Gerilim Düşmesi Sıfırlama –Brown Out Reset (BOR): BOR devresini PIC’i programlarken konfigürasyon bitleri ile açıp kapatabiliriz. Eğer VDD gerilimi VBOR gerilim değerinden (yaklaşık 4 V) aşağı düşerse ve bu TBOR süresi (yaklaşık 100 µsn) kadar devam ederse BOR aktif hale gelir ve PIC’i sıfırlar. VDD değeri VBOR değerine gelinceye kadar PIC sıfırlama konumunda kalmaya devam eder.

2. Hafta Reset Bağlantısı Watch Dog Timer (WDT) Sıfırlaması: WDT denetleyici içinde gömülü bulunan

2. Hafta Reset Bağlantısı Watch Dog Timer (WDT) Sıfırlaması: WDT denetleyici içinde gömülü bulunan ve ek olarak dışarıdan hiçbir elemanın bağlantısına gerek duymayan bir R/C osilatördür. WDT’yi açık(enable) veya kapalı (disable) yapmak için programlamada konfigürasyon bitlerinde bunun belirtilmesi gerekir. Konfigürasyon bitleri ile seçilen WDT açık veya kapalı durumu yazılım aşamasında program komutlarıyla değiştirilemez. Normal çalışma sırasında WDT belli bir süre sonunda oluşturduğu sinyal ile denetleyiciyi sıfırlar.

2. Hafta Reset Bağlantısı MCLR Sıfırlaması: MCLR sıfırlaması, dışarıdan sinyal uygulanarak mikrodenetleyiciyi sıfırlamaya yarar.

2. Hafta Reset Bağlantısı MCLR Sıfırlaması: MCLR sıfırlaması, dışarıdan sinyal uygulanarak mikrodenetleyiciyi sıfırlamaya yarar. MCLR ucu lojik-0’da aktiftir. Normal çalışmada denetleyicinin hep sıfırlama yapmaması için bu uç çeşitli sıfırlama devrelerine bağlanmalıdır. Böylece bir buton üzerinden denetleyicinin kendini resetlemesi sağlanır.

2. Hafta PIC 16 F 877 Mikrodenetleyicisinin Temel Bağlantı Şeması

2. Hafta PIC 16 F 877 Mikrodenetleyicisinin Temel Bağlantı Şeması

2. Hafta Mikrodenetleyici Paket Kılıfları PDIP TQFP SOIC PLCC İnce PDIP MQFP

2. Hafta Mikrodenetleyici Paket Kılıfları PDIP TQFP SOIC PLCC İnce PDIP MQFP

2. Hafta Ürün Tanımlama Kod Açılımları PIC 16 F 87 X ürünlerinin kılıflarının üstünde

2. Hafta Ürün Tanımlama Kod Açılımları PIC 16 F 87 X ürünlerinin kılıflarının üstünde değişik anlamlar ifade eden kodlamalar vardır. Bu kodlar sayesinde kullandığımız PIC ürünü hakkında bazı bilgiler elde ederiz. ******* XX X Denetleyici İsmi En Yüksek Çalışma Frekansı Çalışma Sıcaklığı Aralığı / XX XXX Paket Kılıfı Tipi Patern No Denetleyici İsmi PIC 16 F 87 X, PIC 16 F 87 XT Besleme Gerilimi 4 V – 5. 5 V (F) PIC 16 LF 87, PIC 16 LF 87 XT Besleme Gerilimi 2 V – 5. 5 V (L) ( F=CMOS Flash, L=Düşük Güçlü, T=Şerit ve Makara içinde satılan SOIC, PLCC, TQFP kılıfları için. ) En Yüksek Çalışma Frekansı 04 10 20 = = = 4 10 20 Çalışma Sıcaklığı Aralığı Boş I E = = = 0 ile 70 derece Ticari -40 ile +85 derece Endüstriyel -40 ile +125 derece Genişletilmiş Mhz Mhz

2. Hafta Ürün Tanımlama Kod Açılımları Bu kodlar sayesinde kullandığımız PIC ürünü hakkında bazı

2. Hafta Ürün Tanımlama Kod Açılımları Bu kodlar sayesinde kullandığımız PIC ürünü hakkında bazı bilgiler elde ederiz. ******* XX X Denetleyici İsmi En Yüksek Çalışma Frekansı Çalışma Sıcaklığı Aralığı Paket Kılıfı PQ PT SO SP P L = = = / XX XXX Paket Kılıfı Tipi Patern No MQFP TQFP SOIC İnce PDIP PLCC Örneğin denetleyici kılıfı üzerinde PIC 16 F 877 – 10 I/P yazıyorsa; Denetleyici ismi : PIC 16 F 877 En Yüksek Çalışma Frekansı : 10 Mhz Çalışma Sıcaklığı Aralığı : -40 ile +85 derece Paket Kılıfı : PDIP Besleme Gerilimi : 4 V – 5. 5 V Bellek Yapısı : CMOS Flash

Bölüm Sonu Göstermiş olduğunuz ilgiden dolayı teşekkür ederiz… Sefer KAYMAZ Genel Koordinatör Bilişim Teknolojileri

Bölüm Sonu Göstermiş olduğunuz ilgiden dolayı teşekkür ederiz… Sefer KAYMAZ Genel Koordinatör Bilişim Teknolojileri Alan Şefi KAYNAKÇA CCS C ile PIC Programlama Serdar ÇİÇEK ALTAŞ YAYINCILIK ve ELEKTRONİK TİC. LTD. ŞTİ. Öğr. Gör. Bülent ÇOBANOĞLU’nun DERS NOTLARI OLTU MESLEKİ ve TEKNİK ANADOLU LİSESİ Bilişim Teknolojileri Alanı Teknik Servis Dalı 2017/2018 Eğitim-Öğretim Yılı