Ufuk Sevim ufuk.sevim@itu.edu.tr C ile mC 1. Hafta Ufuk Sevim ufuk.sevim@itu.edu.tr.

Slides:



Advertisements
Benzer bir sunumlar
ARM Tabanlı Mikrodenetleyici Temelleri ve Programlama
Advertisements

Hazırlayan ve Sunan Ali Yasin Çakılcı HUNROBOTX
Anakartlar Sistemin merkezi bileşenidir.
EKRAN ÇIKTISI.
Dersin Adı:ALGORİTMA GELİŞTİME TEKNİKLERİ Dersin Kodu:YBS506 Konu:Kontrol Yapıları(if / if-else) 2.HAFTA.
Websitelerinde Standartlar Açısından Dikkat Edilmesi Gereken Noktalar 1 Websitelerinde Standartlar Açısından Dikkat Edilmesi Gereken Noktalar Eser SAHiLLiOĞLU.tr.
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
DÖNGÜLER For While Do While.
DÖNGÜ İFADELERİ.
Numbers of Opcodes Nihal Güngör.
ORT – 104 Hoş Geldiniz.
CPU (Merkezi İşlem Ünitesi)
PROGRAMLAMA DİLLERİNE GİRİŞ Ders 3: Döngüler
DÖNGÜ İFADELERİ.
DÖNGÜLER.
BİLGİ TEKNOLOJİSİNİN TEMEL KAVRAMLARI
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Donanımlar Uzm. Murat YAZICI.
Temel Bilgisayar Yapısı ve Devreleri
66 CHAPTER SİSTEM UNITESİ. © 2005 The McGraw-Hill Companies, Inc. All Rights Reserved. 6-2 Sistem Üniteleri Mikro bilgisayarlar Masaüstü Dizüstü Tablet.
GAZİ OSMANPAŞA ÜNİVERSİTESİ BİLGİSAYAR PROGRAMCILIĞI
Koşul İfadeleri ve Akış Kontrolü Yazdığımız uygulamanın hangi koşulda nasıl davranacağını belirterek bir akış kontrolü oluşturabilmek için koşul ifadelerini.
Akış Kontrol Mekanizmaları
BİLGİSAYAR MİMARİSİ (BİL 311)
17 Aralık ‘08 Onur Zeybek Projenin Amacı Herhangi bir sensordan (sıcaklık, nem, hareket, ışık, ses vs.) okunan değerin anlık ve grafiksel.
DERS 5 PIC 16F84 PROGRAMLAMA.
DİJİTAL ÖLÇÜLER.
DERS 14 PIC 16F84 ile EEPROM VERİ BELLEĞİ KULLANIMI.
YAZILIM TABANLI RADYO UYGULAMALARI
Ders 2 Donanım Birimleri.
NAVİGASYON NAV-750 TV Harita ve Yazılım Özellikleri • Türkiye adres yapısına özel MIREO Don’t Panic navigasyon yazılımı ve TELEATLAS haritası • 81 il.
Bilişim Teknolojileri Öğretmeni İsmail ÖZTÜRK
DÖNGÜLER.
Veri Yapıları ve Algoritmaları ders_1
C#’TA DÖNGÜLER onbirc.com/133.
DEPOLAMA.
Bilgi Teknolojisinin Temel Kavramları
MİKRODENETLEYİCİ TABANLI KABLOSUZ HABERLEŞME ve MULTIMEDYA KULLANIMI
CCS C İLE PİC PROGRAMLAMA DERS -1-
Mikrodenetleyiciler.
Hafta2 Bilgisayar Donanımı Dersi
CCS C İLE PIC PROGRAMLAMA DERS-3-
Bilgisayar İle İlgili Temel Kavramlar
BİLİŞİM TEKNOLOJİSİNİN TEMELLERİ
Bilgisayar Donanımı Dersi
DaVinci TM Platformunda Video Kodlama. Neden DaVinci TM ? ? ? DaVinci TM platformu özellikle sayısal video kodlama ve çözme gibi ağır hesapsal yüklerin.
Sayısal Entegre Devreler
Anakart Bilgisayarın tüm parçalarını üzerinde barındıran ve bu parçalar arasında iletişimi sağlayan birincil devre kartıdır. Anakartlar elektriği geçirmeyen.
DEPOLAMA.
Anakartın Temel Bileşenleri
Bilgisayar Donanımı Dersi
C Programlama Dili Bilgisayar Mühendisliği.
Bilgisayar İle İlgili Temel Kavramlar
GAZİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
Doğu Akdeniz Üniversitesi Bilgisayar Ve Teknoloji Yüksek Okulu
Bilgisayar İle İlgili Temel Kavramlar
DERS 1 Gömülü Sistemlere Giriş
BİLGİSAYAR DONANIMI ANAKART ,RAM-ROM
Mikroişlemcili Sistem Tasarımı
Ders 6 Atmega328P Mikrodeneyleyicisi
GAZİ ÜNİVERSİTESİ TEKNOLOJİ FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
ARDUİNO Arduino Eğitimleri Bölüm 3 Programlama Dili Temelleri
İşletim Sistemleri (Operating Systems)
Bilgisayar Mühendisliğine Giriş
İşletim Sistemleri (Operating Systems)
Bilgisayar Donanımı Hafta 3
ANAKARTLAR.
Bilgisayar Donanımı Dersi Bilgisayarın Mimarı Yapısı ve Çalışma Mantığı.
Sunum transkripti:

Ufuk Sevim ufuk.sevim@itu.edu.tr C ile mC 1. Hafta Ufuk Sevim ufuk.sevim@itu.edu.tr

Eğitimin Amacı Mikroişlemci (mP) ve mikrodenetleyicileri (mC) kullanabilmek Gömülü C dilini detaylarıyla öğrenmek Datasheet okuyabilmek Devre şeması okuyabilmek Verimli, okunabilir, genişleyebilir, güvenilir kod yazabilmek Doğabilecek problemleri daha oluşmadan engelleyebilmek Temel mühendislik görüşlerini oturtabilmek …

Eğitimin İşlenişi Katılım Ödevler (7 Adet) Proje (1-2 Adet) Ödev gözden geçirme seansları Yapılan yanlışları düzeltme Daha iyi yapabilme seçenekleri Daha iyi yapılabilmesini sağlayan yeni bilgiler

mP ve mC Nedir? İşlemci Bilgisayar Mikro İşlemci Mikro Denetleyici

Çevre Birimleri (Peripherals) Kalıcı Hafıza (ROM: Flash, EEPROM, vs) Geçici Hafıza (RAM) PIO (Parallel Input Output) Zamanlayıcı (Timer) USART (Universal Synchronous Asynchronous Receiver Transmitter) ADC (Analog Digital Converter) PWM (Pulse Width Modulation) SPI (Serial Peripheral Interface) TWI (Two Wire Interface) USB (Universal Serial Bus) …

Nasıl mC Seçilir? Ne İstiyorum? Nereye Bakmalıyım? Kısa zamanda çok iş yapsın Maksimum işlemci frekansı MIPS (Million Instruction Per Second) Yapacağım özel iş için gerekli olan çevre birimleri (Örnek: ADC) Bu çevre birimleri var mı? Varsa kaç tane var? Olanlar ihtiyacımı karşılıyor mu? Büyük bloklar halinde veri işleyebilsin Kaç bitlik işlemci kullanıyor? (8/16/32) Çok az enerji harcasın Uykuda ve istediğim çalışma frekansında çektiği akım ne kadar? Çok güvenilir olsun Ne kadar zamandır piyasada? Ne kadar farklı projede kullanılmış? Silikon hataları hangi seviyelerde? Gelecekte de kullanılabilsin Üretimden kaldırılmış mı? Yeni ve eski seriler birbirleriyle uyumlu mu? Çok ucuz olsun Toplu alımlarda fiyat nedir?

mC Seçiminde Diğer Hususlar Üreticisinden sunulmuş güzel bir kaynak var mı? Problemsiz çalışan bir derleyicisi var mı? O mC için özelleşmiş bir IDE var mı? IDE içinde bir simülatör var mı? Bu IDE, derleyici ve simülatör pahalı mı? Kolay ve sorunsuz debug edilebiliyor mu? İyi yazılmış bir “errata” dökümanı var mı ve bu hatalar çok mu? Header dosyaları, örnek kodları var mı? Bu mC’yi kullanan bir kitle var mı? Problem destek hatları var mı? …

PIC16F877 Özellikleri Özellik Değer Üretici Microchip İşlemci veri yolu genişliği 8 bit Maksimum işlemci frekansı 20 MHz Çevre Birimleri Zamanlayıcı x3 (8 bit x2 + 16 bit x1) USART x1 ADC x8 (10 bit) PWM x2 SPI/I2C

PIC16F877 Özellikleri (Devam)

Neden PIC16F877? Elimizdeki geliştirme kartlarında kullanılıyor. Çok iyi yazılmış bir datasheeti var, dolayısıyla yeni başlayanlar için ideal Güzel ve ücretsiz bir IDE’si var (MPLAB) IDE’si Proteus ile ortak çalışabiliyor. Simülasyon yapma imkanları çok geniş Piyasada bulunması kolay …

mC’nin İç Yapısı http://abstrusegoose.com/98

mC’nin İç Yapısı (Devam) http://abstrusegoose.com/secret-archives/under-the-hood

mC’nin İç Yapısı (Devam)

mC’nin İç Yapısı (Devam) http://www-mdp.eng.cam.ac.uk/ web/library/enginfo/mdp_micro/lecture1/lecture1-3-1.html

Min C Gereksinimleri - Değişkenler [niteleyici] <tip> <isim> = [değer]; char x = 0; short x = 0; int x = 0; float x = 0; double x = 0; unsigned char x = 0; unsigned int x = 0;

Min C Gereksinimleri – if/else Yapıları if(<koşul>){ <iş> }else if(<koşul>){ }else{ } if(0 == x){ // kulağına su kaçır }else if(0 < x){ // eşeğe ters bin }else{ // zorunda mıyım? }

Min C Gereksinimleri – for Döngüsü for(<ilk işler>; <koşul>; <döngü işi>){ <iş> } for(i = 0; i < 42; i++){ if(i % 10){ continue; } // osman'a bağır if(cevab){ break; } } if(42 == i){ // cevab veremedi

Min C Gereksinimleri – while Döngüsü while(<koşul>){ <iş> } while(++zaman){ // iç // seviş // uyu }

Min C Gereksinimleri – Fonksiyonlar <dönüş tipi> <fonksiyon adı> (<parametre tipi> <parametre adı> [, diğer parametreler]){ <parametrelere bağlı iş> } int seviş(int kişi_id, short pozisyon){ // CENSORED } if(0 < seviş(5, 2)){ // oh yeah

MPLAB ve PROTEUS ISIS

Yemekhane vs. AVM 19:08:46