Mikroişlemciler
MicrocontrollerPIC Programming and Applications
Arş.Gör.Bora [email protected]
personel.klu.edu.tr/bora.cebeci/
Ders İşleyişi
● Dersin Amacı:
Mikrodenetleyici ile devre tasarım temellerinin öğrenilmesi
● Dersin Çıktıları:● Mikroişlemci ve Mikrodenetleyici bilgisi,
● Mikrodenetleyici kullanabilirlik,
● Algoritma Geliştirme,
● Program Yazma,
● Devre Tasarım,
● Simulatör Programlarını kullanma ve devre test etme, hata ayıtlayabilme,
● Dersin Sonuçları:
Proje Gruplarının oluşması, Devre Tasarımları yapılması,
Robot Yarışmalarına katılım,
Ders İşleyişi● Başlangıçtan itibaren düzenli çalışma
● Derse katılım, ödevlerin zamanında yapılıp tartışılması
● Algoritma geliştirme ve C programlama bilgisi (anket)
● ...
● Teknik terimler İngilizce, dil İng.-Tr.
● Kaynak Kitaplar
● Programming 8 bit PIC Microcontrollers in C● PIC Microcontrollers-An Introduction to Microelectronics● Uygulama kitabı Interfacing PIC Microcontrollers● CCS C ile PIC Programlama-Serdar Çiçek-Altaş Yay.
● Herkes için CCS C ile PIC Programlama-Mustafa Arslantunalı-Bilimsel Akademi
● Robotik ve akıllı devre ilgililer
uP-uC
● Mikroişlemci?● Integreted Circuit with CPU● Micro-, nano-
● Lojik kapı
CMOS teknolojisinde AOI logic üretimi daha verimli, NAND logic ve NOR logic'e göre
Inverter TTL Devre Şeması
● PC Donanım anket??● Programlama karşılaştırması
Microprocessor ve arkadaşları
Microcontroller
Microcontroller
● Klavyeden girdi bekleyen bir C programı● main() {
int x;
printf(“bir sayi giriniz”);
scanf(“%d”,&x);
}
frekans(...) {
,,,
}
bekle (..) {
,,,
}
OS
● Aynı anda yapılan işlemler● ekrana görüntü geliyor, mp3 çalıyor, chat programı çalışıyor
Ekran kartına , ses kartına , ethernet kartına bilgi gönderiliyor, harddiskten RAM'e yazma ve okuma
●
Yaratıcılıkta Özgürlük
uC Uygulama Alanları
● Düşük güçle çalışan elektronik cihazlar● Otomasyon uygulamaları● Robotlar●
Labirent Oyunu
a) Block Diagram, b) Devre Şeması (schematic); c) Flowchart
• Keypad'den girilen sayıları saklıyor ve gösteriyor• Keypad kullanımı için 4 çıktı 3 girdi gerekiyor, • Seven-segment display, 7 LEDs (light emitting diode)• MSD: most significant digit
Keypad program List file
Microcontroller Architecture
● Data Sheet● PIC 16F84, 16F877
● the Microchip website www.microchip.com, by selecting MCUs, 8-bit, PIC 16 Family
● Block Diagram●
uC Block Diagram Birimleri
● Program Memory● Program Counter● Instruction Register and Decoder● Timing and Control● Arithmatic and Logic Unit● Port Registers● Special Funtion Registers●
Her register = kitapHer kitap 8 sayfa
Her sayfada 0 veya 1 yazıyor
Register File MAP
● TMR_: timer
● _CON : control (ayarların yapıldığı yer)
TxCON: timer control
INTCON: interrupt control
● _BUF: buffer (verinin saklandığı yer)
● _REG: register (verinin saklandığı yer)
● _E: enable (izin verme işlemleri)
● _L: Low
● _H: High
● SSP_: Synchronous Serial Port
● AD_: Analog/Digital
● CCP_: Capture,Compare,PWM
A Register (A Book)
● İhtiyacımız olduğu zaman gidip raftan kitabı alıp okuyacağız
● Bunun dışında yazma izini olanlarda bilgiyi değiştirebileceğiz
Bit7 Bit6 Bit5 Bit4 Bit3U
Bit2 Bit1R/W
Bit0
PIC 16F84A PIN Dizilimi
Örnek - Sayıcı Devre
Örnek - Sayıcı Devre
Devre Birimleri
DC Motor Kontrol Devresi (Quiz)
● Kontrol Düğmeleri● RA0: İleri ● RA1: Dur● RA2: Geri
● Durum Bilgisi● RB0: Yeşil LED – ileri● RB1: Kırmızı LED – dur● RB2: Sarı LED – geri
● Motor