Sunuyu indir
Sunum yükleniyor. Lütfen bekleyiniz
YayınlayanBeri Sayin Değiştirilmiş 10 yıl önce
1
Ufuk Sevim ufuk.sevim@itu.edu.tr
C ile mC 1. Hafta Ufuk Sevim
2
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 …
3
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
4
mP ve mC Nedir? İşlemci Bilgisayar Mikro İşlemci Mikro Denetleyici
5
Ç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) …
6
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?
7
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ı? …
8
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 x bit x1) USART x1 ADC x8 (10 bit) PWM x2 SPI/I2C
9
PIC16F877 Özellikleri (Devam)
10
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 …
11
mC’nin İç Yapısı
12
mC’nin İç Yapısı (Devam)
13
mC’nin İç Yapısı (Devam)
14
mC’nin İç Yapısı (Devam)
web/library/enginfo/mdp_micro/lecture1/lecture1-3-1.html
15
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;
16
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? }
17
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
18
Min C Gereksinimleri – while Döngüsü
while(<koşul>){ <iş> } while(++zaman){ // iç // seviş // uyu }
19
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
20
MPLAB ve PROTEUS ISIS
21
Yemekhane vs. AVM 19:08:46
Benzer bir sunumlar
© 2024 SlidePlayer.biz.tr Inc.
All rights reserved.