• Sonuç bulunamadı

Mikrodenetleyiciler Mikrodenetleyiciler

N/A
N/A
Protected

Academic year: 2021

Share "Mikrodenetleyiciler Mikrodenetleyiciler"

Copied!
36
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Mikrodenetleyiciler Mikrodenetleyiciler

Ders Notu

(2)

Dersin İşlenişi ve Değerlendirme Dersin İşlenişi ve Değerlendirme

Mikrodenetleyiciler 2

Sınavlar, Ödevler ve Projeler

Ara Sınav %35

Final %50

Ödev (Zorunlu) %15

Proje (İsteğe Bağlı) %20 (Bonus)

Zorunlu Ödev

Derste İşlenen Uygulamalara benzer, EasyPIC4 setinde test edilecek bir konuda öğrencinin tercihine bırakılmış bir proje.

Rapor: Max. 3 sayfa, kapak olmayacak, Öğrenci Adı, Numarası, Proje Kaynak Kodu ve Amacı , Isis simülayon ekranı.

Uygulama: Yazılmış uygulamalar Öğretim Elemanı gözetiminde Laboratuarda öğrenci tarafından yüklenip test edilecektir.

(3)

İçerik İçerik

 Gömülü (Embedded) Sistemlere Giriş

 Mikroişlemcilerin Temel Prensipleri ve Mimarileri

 PIC Mikrodenetleyiciler ve Yapıları

 Programlama ve ASSEMBLY Dili

 PIC 16F877 ile Assembly Uygulamaları

 MikroC C derleyici ve Uygulamaları

 Arm Mikrodenetleyiciler

 DSP Sayısal Kontrol Denetleyici

(4)

GÖMÜLÜ SİSTEMLERE GİRİŞ GÖMÜLÜ SİSTEMLERE GİRİŞ

(INTRODUCTION OF EMBEDDED SYSTEMS) (INTRODUCTION OF EMBEDDED SYSTEMS)

Mikrodenetleyiciler 4

1.Hafta

1.Hafta

(5)

Gömülü Sistemler Gömülü Sistemler (Embedded Systems) (Embedded Systems)

Gömülü sistem, bilgisayarlı bir kontrol

donanımı ve yazılımı içeren özel amaçlı bir sistemdir. Genel maksatlı, örneğin kişisel bilgisayar gibi bir bilgisayardan farklı

olarak, gömülü bir sistem kendisi için

önceden özel olarak tanımlanmış görevleri yerine getirir.

Gömülü sistemlerdeki yazılımlar, donanım kısıtlarına rağmen genelde gerçek-zamanlı (real-time) çalışırlar.

(6)

Gömülü Sistem Uygulamaları Gömülü Sistem Uygulamaları

Mikrodenetleyiciler 6

• Banka ATM’ leri

• Uçuş kontrol donanım/yazılımı ve uçak ve füzelerdeki diğer tümleşik sistemlerden oluşan havacılık elektroniği modülleri

• Cep telefonları

• Router gibi bilgisayar ağ ekipmanları

• Bilgisayar yazıcıları

• Fotokopi makineleri

• Termostat, klima ve güvenlik izleme sistemleri gibi ev otomasyonu ürünleri

• Hesap makineleri

• Mikro dalga fırınlar, çamaşır makinesi, televizyon setleri

• DVD oynatıcı/kaydedici gibi ev elektroniği ürünleri

• Tıbbi ekipmanlar

• Endüstriyel otomasyon ve izleme için

PLC’ ler

(7)

Gömülü İşletim Sistemleri Gömülü İşletim Sistemleri

1. ECos

2. FreeRTOS

3. Gömülü Linux 4. JavaOS

5. LynxOS 6. Mobilinux

7. Nucleus RTOS 8. Palm OS

9. Prex

10. Micrium OS

(8)

Programlanabilir Gömülü Sistemler Elemanları Programlanabilir Gömülü Sistemler Elemanları

Mikrodenetleyiciler 8

• Mikroişlemciler

• Mikrodenetleyiciler

• Dijital Sinyal İşlemcileri

• Programlanabilir Lojik Aygıtlar,

PLD,CPLD ve FPGA

(9)

Mikroişlemci ve Mikroişlemci Sistemi

Mikroişlemci ve Mikroişlemci Sistemi

(10)

Mikrodenetleyiciler 10 Tip ve Boyut (mm)

WTX (356×425)

AT (350×305)

Baby-AT (330×216)

BTX (325×266)

ATX (305×244)

EATX (Extended) (305×330)

LPX (330×229)

microBTX (264×267)

NLX (254×228)

Ultra ATX (244×367) microATX (244×244)

DTX (244×203)

FlexATX (229×191)

Mini-DTX (203×170)

EBX (203×146)

microATX (min.) (171×171) Mini-ITX (170×170) EPIC (Express) (165×115) Mini ATX (150×150)

ESM (149×71)

Nano-ITX (120×120) COM Express (125×95) ESMexpress (125×95)

ETX/XTX (114×95)

Pico-ITX (100×72)

PC/104 (-Plus) (96×90)

ESMini (95×55)

Qseven (70×70)

mobile-ITX (60×60) CoreExpress (58×65)

PC Anakart Form Faktörleri

PC Anakart Form Faktörleri

(11)
(12)

Mikrodenetleyiciler Mikrodenetleyiciler

Mikrodenetleyiciler 12

(13)

Mikrodenetleyiciler Mikrodenetleyiciler

 ARM core processors (many vendors)

ARM Cortex-M cores are specifically targeted towards microcontroller applications

 Atmel AVR (8-bit), AVR32 (32-bit), and AT91SAM (32-bit)

 Cypress Semiconductor's M8C Core used in their PSoC (Programmable System-on-Chip)

 Freescale ColdFire (32-bit) and S08 (8-bit)

 Freescale 68HC11 (8-bit)

 Intel 8051

 Infineon: 8, 16, 32 (ARM based Cortex M4F), 32 Tricore Bit microcontrollers[9]

 MIPS

 Microchip Technology PIC, (8-bit PIC16, PIC18, 16-bit dsPIC33 / PIC24), (32-bit PIC32)

 NXP Semiconductors LPC1000, LPC2000, LPC3000, LPC4000 (32-bit), LPC900, LPC700 (8-bit)

 Parallax Propeller

 PowerPC ISE

 Rabbit 2000 (8-bit)

 Renesas Microcontrollers

 32bit microcontrollers: RX, V850, SuperH, R32C, H8SX

 16bit Microcontrollers: RL78, H8, M16C, R8C, 78K0R

 8bit Microcontrollers: 78K0

 Silicon Laboratories Pipelined 8-bit 8051 Microcontrollers and mixed-signal ARM-based 32- bit microcontrollers

(14)

Örnek bazı DSP türleri Örnek bazı DSP türleri

Mikrodenetleyiciler 14

Firma DSP Clock Hızı

(MHz) Flash (kB) PWM kanalları, hızı (duty cycle)

Microchip dsPIC30F 30 6–144 4–8 (16 bits, 1 or 16.5 ns

depending on part)

dsPIC33F 40 12–256 up 18 PWM (16 bits, 12.5

ns)

dsPIC33E 70 64-512 up 16 PWM (16 bits, 8.32

ns)

Texas Instruments TMS320F28x 60–150 32–512 16 PWM (13 bits, 150 ps)

TMS320LF240x 40 16–64 7–16 PWM (11 bits, 150 ps)

Freescale MC56F83x 60 48–280 12 PWM (15 bits, 10 ns)

MC56F80x 32 12–64 5–6 PWM (15 bits, 10 ns)

MC56F81x 40 40–572 12 PWM (15 bits, 10 ns)

(15)

PLD, CPLD ve FPGA

PLD, CPLD ve FPGA

(16)

MİKROİŞLEMCİ MİKROİŞLEMCİ MİMARİLERİ VE MİMARİLERİ VE

TEMEL PRENSİBLERİ TEMEL PRENSİBLERİ

Mikrodenetleyiciler 16

2.Hafta

2.Hafta

(17)

Genel Şema

Genel Şema

(18)

Temel Birimler Temel Birimler

Mikrodenetleyiciler 18

Giriş / Çıkış (Input / Output) : Sayısal, analog ve özel fonksiyonlardan oluşur ve mikroişlemcinin dış dünya ile haberleşmesini sağlar.

CPU (Central Processing Unit – Merkezi İşlem Birimi) : Sistemin en temel işlevi ve organizatörüdür. Bilgisayarın beyni olarak

adlandırılır.Komutları yürütmek, hesapları yapmak ve verileri koordine etmek için 4, 8, 16, 32 ve 64 bitlik sözcük uzunluklarında çalışır.

Hafıza : RAM, ROM, PROM, EPROM, EEPROM veya bunların herhangi bir birleşimi olabilir. Bu birim, program ve veri depolamak için kullanılır.

Osilatör : Veri ve komutların CPU 'ya alınmasında, yürütülmesinde, kayıt edilmesinde, sonuçların hesaplanmasında ve çıktıların ilgili birimlere

gönderilmesinde gerekli olan saat darbelerini üretmektir.

(19)

Temel Birimler Temel Birimler

Zamanlama ve Denetim Birimi: Bu kısım sitemin tüm işleyişinden ve işlemin zamanında yapılmasından sorumlu olan birimdir. Bu birim bellekte program bölümünde bulunan komut kodunun alınıp getirilmesi, kodunun çözülmesi, ALU tarafından işlenip, sonucun alınıp belleğe yüklenmesi için gerekli olan denetim sinyalleri üretir.

İletişim yolları: Mikroişlemci mimarisine girmese de işlemciyle ayrılmaz bir parça oluşturan iletişim yolları kendi aralarında üçe ayrılır.

Adres yolu (Address Bus); komut veya verinin bellekte bulunduğu adresten alınıp getirilmesi veya adres bilgisinin saklandığı yoldur.

Veri yolu (Data Bus); ise işlemciden belleğe veya Giriş/Çıkış birimlerine veri yollamada yada tersi işlemlerde kullanılır.

(20)

Veri Yolları Veri Yolları

Mikrodenetleyiciler 20

(21)

Kaydediciler (Register) Kaydediciler (Register)

Flip-floplardan oluşan birimlerdir. Kaydediciler genel amaçlı ve özel amaçlı olmak üzere iki grupta incelenmektedir.

Genel amaçlı kaydediciler grubuna A, B ve X gibi kaydediciler girer.

Özel amaçlı kaydediciler ise;

PC (Program Counter, Program Sayacı), anlık icra edilen komutun adresi bu kaydedicide tutulur.

SP (Stack Pointer- Yığın İşaretçisi) ve Flags (Bayraklar)

verilebilir.

Bunların dışında işlemcide programcıya görünmeyen kaydediciler vardır. Bu kaydedicileri alt düzey program yazan programcıların mutlaka bilmesi

gerekir. Bunlar;

IR(Instruction Register-Komut kaydedicisi),

MAR (Memory Address Register- Bellek adres kaydedicisi),

(22)

Aritmetik Lojik Birim (ALU) Aritmetik Lojik Birim (ALU)

Mikrodenetleyiciler 22

Aritmetik ve Mantık Birimi:

ALU mikroişlemcilerde aritmetiksel ve mantıksal işlemlerinin yapıldığı en önemli birimdir.

Aritmetiksel işlemler denilince akla başta toplama, çıkarma, çarpma ve bölme gelir. Komutlarla birlikte bu işlemleri, mantık kapıları, bu

kapıların oluşturduğu toplayıcılar, çıkarıcılar ve flipfloplar

gerçekleştirir.

Mantıksal işlemlere de AND, OR, EXOR ve NOT gibi işlemleri örnek verebiliriz.

(23)

Bayraklar (Flags) Bayraklar (Flags)

Aritmetik ve Mantık Birimi:

ALU içerisinde gerçekleştirilmiş olan işlemin sonucuna ait bilgileri içerir.

Eğer işlem sonucu Sıfır ise Zero bayrağı lojik 1 olur.

Toplama veya çıkarma işlemi

sonucunda elde veya borç durumu oluşmussa Carry bayrağı lojik1 olur.

(24)

7-SEGMENT DISPLAY 7-SEGMENT DISPLAY

Mikrodenetleyiciler 24

(25)

16 bit Mimari

16 bit Mimari

(26)

32 bit Mimari 32 bit Mimari

Mikrodenetleyiciler 26

(27)

Von Neuman Mimarisi Von Neuman Mimarisi

Bu mimaride veri ve komutlar bellekten tek bir yoldan mikroişlemciye getirilerek işlenmektedir.

Program ve veri aynı bellekte bulunduğundan, komut ve veri gerekli olduğunda aynı iletişim yolunu kullanmaktadır.

(28)

Harvard Mimarisi Harvard Mimarisi

Mikrodenetleyiciler 28

Harvard mimarili bilgisayar sistemlerinde veri ve komutların ayrı ayrı belleklerde tutulur. Buna göre, veri ve komut aktarımında iletişim yolları da bir birinden

bağımsız yapıda bulunmaktadırlar.

Komutla birlikte veri aynı saykıl da farklı iletişim yolundan ilgili belleklerden alınıp işlemciye getirilebilir. Getirilen komut işlenip ilgili verisi veri belleğinden alınırken sıradaki komut, komut belleğinden alınıp getirilebilir. Bu önden alıp getirme işlemi, dallanma haricinde hızı iki katına çıkarabilmektedir.

(29)

CISC (Complex Instruction Set Computer) Mimarisi

Bu mimari, programlanması kolay ve etkin bellek kullanımı sağlayan tasarım felsefesinin bir ürünüdür. İşlemci üzerinde performans düşüklüğü ve işlemcinin karmaşık bir hale gelmesine neden olsa da yazılımı

basitleştirmektedir.

Bu mimarinin en önemli iki özelliği, değişken uzunluktaki komutlar diğeri ise karmaşık komutlardır.

Değişken ve karmaşık uzunluktaki komutlar bellek tasarrufu sağlar.

Karmaşık komutlar birden fazla komutu tek bir

(30)

RISC (Reduced Instruction Set Computer) Mimarisi

Mikrodenetleyiciler 30

RISC mimarisinin en önemli özelliği küçültülen komut kümesi ve azaltılan adresleme modları sayısıdır. Bunun yanında aşağıdaki özelliklere sahiptir.

•Bir çevrimlik zamanda komut işleyebilme

•Aynı uzunluk ve sabit formatta komut kümesine sahip olma

•Ana belleğe sadece “load” ve “store”

komutlarıyla erişim; operasyonların sadece kaydedici

•üzerinde yapılması

•Yüksek seviyeli dilleri destekleme

•Çok sayıda kaydediciye sahip olması

(31)

Komut Biçimleri

Komut Biçimleri

(32)

Fetch-Execute Fetch-Execute

Mikrodenetleyiciler 32

(33)

Adresleme Modları Adresleme Modları

1- Anında Adresleme (Immediate Addressing)

Opcode+Operand(Verinin kendisi) 2- Mutlak Adresleme (Absolute Addressing)

Operand taki bilgi, verinin bulunduğu kaydedicinin adıdır.

3- Doğrudan Adresleme (Direct Addressing)

Opcode+Operand(Verinin adresi) 4- Dolaylı Adresleme (Indirect Addressing)

Opcode+Operand(Bu adreste verinin adresi bulunur) 5- Sıralı Adresleme (Indexed)

Sıralama kaydedicinde veri dizisinin ilk elemanın adresi bulunur. Bu adres baz alınarak diğer verilere erişilir.

(34)

Bellek Organizasyonu Bellek Organizasyonu

Mikrodenetleyiciler 34

(35)

Bellek Genişletme (Enine) Bellek Genişletme (Enine)

64Kx4 bit ile 64Kx8bit ROM elde etme

64Kx4 bit ile 64Kx8bit ROM elde etme

(36)

Bellek Genişletme (Boyuna) Bellek Genişletme (Boyuna)

Mikrodenetleyiciler 36

1Mx8 bit ile 2Mx8bit ROM elde etme

1Mx8 bit ile 2Mx8bit ROM elde etme

Referanslar

Benzer Belgeler

Bit 4 EEIE: EEPROM yazma işlem kesmesi geçerlilik biti 0 = EEPROM yazma kesmesine izin verilmez. Bit 3 BCLIE: Çarpışma (Bus collision) kesmesi geçerlilik biti 0 = BUS

– Sosyokültürel nedenlere bağlı olarak bölgesel ya da toplumsal bir katman ya da grubun dil türü diğerlerinden daha yüksek saygınlığa sahip olabilir.. – Sözvarlığı

Burada A portu üzerinde işlem yapacak isek TRISA, B portu üzerinde işlem yapacak isek TRISB nin ilgili bitlerini giriş için “1” ya da “0” bilgisini yazmamız gerekiyor.

GAMA MESLEK YÜKSEKOKULU

GAMA MESLEK YÜKSEKOKULU

GAMA MESLEK YÜKSEKOKULU

GAMA MESLEK YÜKSEKOKULU

GAMA MESLEK YÜKSEKOKULU