TBMYO • Bilgisayar Programcılığı

Mikrodenetleyiciler Vize Soruları

Detaylı Anlatım ve Çözüm

Bu belge, sınav kağıdındaki 10 sorunun her birini hiç bilmeyen birine anlatır gibi açıklar ve çözer. Ek olarak en sonda sınavdan farklı 1 tane örnek soru da anlatımlı şekilde çözülmüştür.

İçerik doğrudan HTML içine gömülmüştür.

1) Mikroişlemci ile Mikrodenetleyiciyi Karşılaştırın

Soru

Mikroişlemciler (Microprocessor) ile Mikrodenetleyicileri (Microcontroller) karşılaştırın.

Konuyu hiç bilmeyen için anlatım

Kısa benzetme:

Sınav tarzı cevap

Özet

Aynı işi yapmazlar: mikroişlemci "genel amaçlı", mikrodenetleyici "belirli görev odaklı"dır.

2) Bir Mikrodenetleyici Hakkında Bilinmesi Gereken Genel Bilgiler

Soru

Bir mikrodenetleyici hakkında bilinmesi gereken genel bilgiler nelerdir?

Konuyu hiç bilmeyen için anlatım

Bir mikrodenetleyici tanımak için şu sorular sorulur:

Sınav tarzı cevap

Mikrodenetleyici seçimi ve kullanımı için genel olarak:

Özet

"Hangi işi, hangi sınırlarla yapar?" sorusunun cevabı mikrodenetleyiciyi tanımlar.

3) Mikrodenetleyici Programlamak İçin Nelere İhtiyaç Vardır?

Soru

Bir mikrodenetleyiciyi programlamak için nelere ihtiyaç vardır?

Konuyu hiç bilmeyen için anlatım

Temel 5 parça gerekir:

  1. Kod yazma ortamı (editör/IDE)
  2. Derleyici/assembler
  3. Programlayıcı cihaz (PIC'e kod yazan donanım)
  4. Hedef mikrodenetleyici (ör. PIC16F84)
  5. Test devresi (breadboard, LED, dirençler, besleme)

Sınav tarzı cevap

Mikrodenetleyici programlamak için:

Özet

Kod yazmak yetmez; kodu cihaza yükleyip devrede test etmek de gerekir.

4) PIC16F84'te Kullanılan Bellek Tipleri

Soru

PIC16F84'te kullanılan bellek tipleri hakkında bilgi veriniz.

Konuyu hiç bilmeyen için anlatım

PIC16F84 için temel bellek mantığı:

Sınav tarzı cevap

PIC16F84'te:

Özet

Kod -> Flash, anlık veri -> RAM, kalıcı küçük veri -> EEPROM.

5) PIC16F84 En Fazla Kaç Satırlık Program Yazılabilir?

Soru

PIC16F84'e en fazla kaç satırlık program yazılabilir?

Konuyu hiç bilmeyen için anlatım

Sınavdaki "satır" ifadesi pratikte "komut kapasitesi" anlamında sorulmuş olur.

PIC16F84'te program belleği 1K word'dür.

1K word = 1024 program adresi (0x000 - 0x3FF)

Sınav tarzı cevap

PIC16F84'te program belleği 1024 word olduğu için en fazla 1024 komutluk (adreslik) program yazılabilir.

Özet

Temel sınır: 1024 word program alanı.

6) PIC'lerde Sink Akımı ve Source Akımı

Soru

PIC'lerde Sink Akımı ve Source Akımı kavramını açıklayınız.

Konuyu hiç bilmeyen için anlatım

LED örneği:

Sınav tarzı cevap

Source akımında PIC çıkış pini akımı yüke doğru sağlar.

Sink akımında yükten gelen akım PIC pininden GND yönüne çekilir.

Port pinlerinin source/sink akım sınırları aşılmamalıdır.

Özet

Akım yönü farklıdır; ikisinde de pin akım limitleri kritik önemdedir.

7) PIC16F84 Program Bellek ve RAM Bellek Nedir?

Soru

PIC16F84'te Program bellek ve RAM bellek nedir?

Konuyu hiç bilmeyen için anlatım

Örnek:

Sınav tarzı cevap

Program bellek, komutların depolandığı kalıcı alandır.

RAM bellek, çalışma sırasında değişen geçici verilerin tutulduğu alandır.

PIC16F84'te bu iki bellek ayrı yapıdadır.

Özet

Kod ve veri ayrı tutulur; bu yapı Harvard mimarisinin temelidir.

8) PIC16F84'teki "F" Harfi Neyi İfade Eder?

Soru

PIC16F84'teki "F" neyi ifade etmektedir?

Konuyu hiç bilmeyen için anlatım

Microchip adlandırmasında harfler bellek teknolojisini anlatır.

"F" genellikle Flash program belleğini belirtir.

Sınav tarzı cevap

PIC16F84 adındaki "F", cihazın Flash program belleğine sahip olduğunu ifade eder.

Özet

"F" = Flash.

9) PIC16F84'te Clock Oscilatörü Neden Kullanılır? Çeşitlerinden 2 Tane Yazınız

Soru

PIC16F84'te kullanılan clock osilatörü niçin kullanılır, çeşitlerinden 2 tanesini yazınız.

Konuyu hiç bilmeyen için anlatım

Mikrodenetleyici saat sinyali (clock) olmadan komut yürütemez.

Clock, "ne hızda düşünüp iş yapacağını" belirler.

PIC16F84'te osilatör seçeneklerine örnek:

Sınav tarzı cevap

Clock osilatörü, mikrodenetleyicinin komutlarını zamanlayarak çalıştırması için gereklidir.

PIC16F84'te RC, XT, HS, LP gibi osilatör tipleri kullanılabilir.

İki örnek: RC ve XT.

Özet

Clock yoksa çalışma yoktur.

10) Sayı Dönüşümleri (Hex, Binary, Decimal)

Soru

Aşağıdaki dönüşümleri yapınız.

Konuyu hiç bilmeyen için anlatım

Hex -> Binary: Her hex basamağı 4 bit eder.

Decimal -> Binary: 2'nin kuvvetlerine ayırırsın.

Binary -> Hex: 4'er bit gruplandırırsın.

Adım adım çözüm

  1. h'A2F' -> b

    A = 1010, 2 = 0010, F = 1111

    Sonuç: b'101000101111'

  2. b'1011011111101010101010' -> h

    Soldan 4'lü gruplamak için gerekirse başa 0 eklenir:

    0010 1101 1111 1010 1010 1010

    2 D F A A A

    Sonuç: h'2DFAAA'

  3. d'253' -> b

    253 = 128 + 64 + 32 + 16 + 8 + 4 + 1

    Sonuç: b'11111101'

  4. 0XAA3 -> b

    A = 1010, A = 1010, 3 = 0011

    Sonuç: b'101010100011'

  5. h'2F' -> d

    2 x 16 + 15 = 47

    Sonuç: d'47'

  6. d'287' -> 0x

    287 / 16 = 17 kalan 15 (F)

    17 / 16 = 1 kalan 1

    Sonuç: 0x11F

  7. b'11001000000' -> d

    1*1024 + 1*512 + 1*64 = 1600

    Sonuç: d'1600'

Özet

Sayı sistemi sorularında en güvenli yöntem:

Sınavdan Farklı 1 Ek Örnek (Anlatım + Çözüm)

Ek soru

Aşağıdaki dönüşümleri yapınız:

Çözüm

  1. h'3B7' -> b

    3 = 0011, B = 1011, 7 = 0111

    Sonuç: b'001110110111'

  2. d'100' -> h

    100 / 16 = 6 kalan 4

    Sonuç: h'64'

  3. b'10011101' -> d

    128 + 16 + 8 + 4 + 1 = 157

    Sonuç: d'157'

Neden böyle yaptık?

Kısa tekrar listesi (1 dakikalık)

Yukarı dön