Kursumuza ön kayıt yaptırmak için bu bağlantıyı kullanabilirsiniz.
Online Gömülü Linux Sistemleri – Geliştirme ve Programlama Kursu (320 saat)
Giriş ve Temel Bilgiler
- Gömülü Sistemlere Genel Bir Bakış
- Gömülü Sistemlerin Karakteristik Özellikleri
- Bir Kaynak Yöneticisi Olarak İşletim Sistemi
- İşletim Sistemlerinin Alt Sistemleri
- Linux Sistemlerinin Tarhihsel Gelişimi
- Gömülü Linux Sistemi Ne Anlama Gelmektedir?
- Gömülü Linux Sistemlerinin Masaüstü Linux Sistemlerinden Farklılıklları
- Mikroişlemci, Mikrodenetleyici, SOC (System on Chip) ve SBC (Single Board Computer) Kavramları
- Gömülü Linux Sistemleri için Kullanılan Donanımlar, Raspberry Pi, Beaglebone ve Diğerleri
- Gömülü Sistemlerin Çevre Birimleri
- Gömülü Sistemlerde Bellek Birimleri
- Gömülü Sistemler İçin Emülatörler ve QEMU
Single Board Bilgisayarlar
- Single Board Bilgisayar Nedir?
- Yaygın Kullanılan Single Board Bilgisayarlar
- Single Board Bilgisayarların Uygulama Alanları
- Single Board Bilgisayarların Sınırlılıkları ve Handikapları
Raspberry Pi Donanımının Özellikleri
- Raspberry Pi Donanımındaki CPU, GPU ve RAM Özellikleri
- ARM İşlemcilerinin Özellikleri
- ARM işlemcilerinde Cortex Türleri ve Komut Kümeleri Çeşitliliği
- SD Kart Arabirimi
- GPIO Arabirimi
- I2C ve SPI Veri Yolları
- USB Arabirimi
- Video/Audio Özellikleri
- Ethernet ve Wireless Birimleri
- HDMI ile Bağlantı
- Güç Kaynağının Olması Gereken Özellikleri ve Soğutucu Gereksinimi
- Raspberry Pi Donanımında Kullanılan Soketler ve Kablolar
BeagleBone Black Donanımının Özellikleri
- BeagleBone Black Donanımındaki CPU, GPU ve RAM Özellikleri
- SD Kart Arabirimi
- GPIO Arabirimi
- I2C ve SPI Veri Yolları
- USB Arabirimi
- Video/Audio Özellikleri
- Ethernet ve Wireless Birimleri
- HDMI ile Bağlantı
- Güç Kaynağının Olması Gereken Özellikleri ve Soğutucu Gereksinimi
- BeagleBone Donanımında Kullanılan Soketler ve Kablolar
Gömülü Sistemlere Linux İşletim Sisteminin Yüklenmesi ve Kullanıma Hazır Hale Getirilmesi
- Uygun Linux Dağıtımının Belirlenmesi
- Gömülü Linux Sistemleri İçin Kullanılan Dağıtımlar ve Özellikleri
- Raspberry Pi Donanımlarında Kullanılan Yaygın Dağıtımlar
- Linux Dağıtımlarının Gömülü Sisteme Yüklenmesi
- Diskin Bölümlendirilmesi ve Buna İlişkin Komutlar ve Utility Programlar
- Toolchain Kavramı
- Doğal (Native) ve Çapraz (Cross) Toolchain’ler
- Gömülü Sistemler İçin Çapraz Derleyiciler (Cross Compilers)
- Ethernet ve Wireless Network Bağlantılarının Sağlanması
Linux Sistemlerinde Dosya Sistemleri
- ext2, ext3, ext4, xfs Dosya Sistemlerinin Genel Özellikleri
- Dosya Sistemlerinin Mount Edilmesi
- Dosya Sistemlerindeki Temel Dizinler ve Anlamları
- Dosya Bloklerı, i-node Kavramı
- Linux’ta Kullanılan Dosya Sistemlerinin Aşağı Seviyeli Tasarımları
- Dosya Sistemlerine Yönelik Aygıt Sürücüler
- Dosya Sistemi İle İlgili Komutlar ve Utility Programlar
- tmpfs ve ramfs Dosya Sistemleri ve Linux’ta Ramdisk Kullanımı
Ekran ve Görüntü Birimlerinin Programlanması
- Terminal Aygıt Sürücüleri
- Terminal Aygıt Sürücülerinin Programlanması
- X Window Sistemleri
- X Window Sistemlerinin Tasarımı ve Programlanmasıne İlişkin Temel Bilgiler
- Qt Framework hakkında Temel Bilgiler ve Basit Örnekler
- Framebuffer Kavramı ve Kullanım Alanları
- Framebuffer Aygıt Sürücüleri
- Linux’ta Framebuffer Kütüphanesinin Kullanımı
Çevre Birimlerinin Programlanması
- USB Arabiriminin Özellikleri
- libusb Kütüphanesinin Kullanımı
- Raspberry Pi ve BeagleBone Donanımlarında GPIO Uçlarının Kullanımı
- GPIO Uçlarının Programlanmasına İlişkin Örnekler
- I2C ve SPI Arayüzlerinin Kullanılması
- UART Kullanımı
- Raspberry Pi ve BeagleBone Black İçin Tasarlanmış GPIO Uçlarını Kullanan Hazır Kartlar (Add-on Boards)
- Sensörlerin İşlevleri ve Sensörlerin Kullanımına İlişkin Örnekler
- LCD Kullanımına İlişkin Örnekler
Linux Çekirdeğinin Konfigüre Edilmesi ve Derlenmesi
- Konfigürasyon İşleminin Anlamı
- Önemli Konfigürasyon Parametreleri
- Kernel Modüllerinin Çekirdeğe Eklenmesi
- Kernel Modüllerinin Bağımlılıkları
- Kernel Modülleri ile İlgili Araçlar, Komutlar ve Utility Programlar
- GNU Make Aracının Temel Düzeyde Kullanımı ve Make Dosyalarının Oluşturulması
- Linux Çekirdeğinin Derlenmesi
Gömülü Linux Sistemlerinde Kullanılan Ön Yükleyici (Boot Loader) Programlar
- Ön Yükleyici Kavramı ve Ön Yükleyicileri İşlevleri
- Birinci ve İkinci Düzey Ön Yükleyiciler
- Raspberry Pi ve BeagleBone Black Ön Yükleyici Mekanizması
- U-Boot (Das U-Boot) Önyükleyicisinin Genel Yapısı ve Kullanımı
Linux Sistemlerinin Başlatılma Süreci
- Masaüstü ve Gömülü Sistemlerde Linux Sistemlerinin Başlatılması
- Kernel Konfigürasyon Parametrelerinin Boot Sürecindeki Etkileri
- Linux Çekirdeğinin Yüklenmesine İlişkin Aşamalar
- Boot Süreci Sırasında Dosya Sistemlerinin Mount Edilmesi
- Boot Sürecinde Etkili Olan Script Dosyaları
Linux Sistemlerinde Kullanılan Init Paketleri ve Systemd Init Paketinin Kullanımı
- Init Paketlerinin İşlevi
- SysVInit ve Upstart Paketleri Hakkında Temel Bilgiler
- Systemd Paketinin Kurulumu
- Systemd Paketinin İşlevleri
- Daemon Kavramı
- Unit Dosyalarının Oluşturulması ve Servislerin Yönetilmesi
- Systemd İle Servis Yönetiminin Ayrıntıları
- Systemd Paketine İlişkin Komutların Kullanımı
Aygıt Ağacı (Device Tree)
- Aygıt Ağacı Nedir ve Ne Amaçla Kullanılmaktadır?
- Aygıt Ağaçlarına Neden Gereksinim Duyulmuştur?
- Aygıt Ağaçlarının Genel Yapısı
- Agıt Ağaçlarının Oluşturulması
- Aygıt Ağaçlarının Derlenmesi ve Tersine Derlenmesi (Decompile Edilmesi)
- Aygıt Ağaçları ve Boot Süreci
- Aygıt Ağaçları ve Aygıt Dosyaları
- Sistem Çalışırken Aygıt Konfigürasyonlarının Ayarlanması
Yocto Projesi
- Yocto Projesi Nedir?
- Poky ve bitbake Kavramları
- Katman (Layer) Kavramı ve Kullanımı
- Image Kavramı ve Kullanımı
- Image İsimleri
- Recipe Kavramı ve Kullanımı
- Log Mekanizması
- Build İşlemi
Buildroot Projesi
- Buildroot Projesi Nedir?
- Buildroot Çalışma Mekanizması
- Buildroot Konfigürasyonu
- Sistemin İsteğe Göre Özelleştirilmesi (Customization)
- Buildroot’a Yeni Paketlerin Eklenmesi
- Build İşlemi
Linux Sistemlerinde Kullanılan Log Sistemi
- log Mesajlarının User Mod ve Kernel Modda Oluşturulması
- syslod Daemon Programın İşlevi
- Loglamanın User Modda Programlama Yoluyla Yapılması
Linux Daemon (Servis) Programlarının Yazımı
- Daemon Programların Anlamı
- Daemon Programların Oluşturulması ve Devreye Sokulması
- Daemon Programların Konfigüre Edilmesi
- User Mod ve Kernel Mod Daemon Kavramı
- Linux Kernel İçerisindeki Kernel Mod Daemon’lar ve İşlevleri
Procfs ve sysfs Dosya Sistemlerinin Kullanımı
- proc Dosya Sisteminin Genel Yapısı ve Kullanımı
- sys Dosya sisteminin Genel Yapısı ve Kullanımı
Linux Aygıt Sürücülerinin Yazımı
- Aygıt Sürücülerinin Anlamı
- Linux Aygıt Sürücü Mimarisinin Tanıtımı
- Linux Çekirdek Modüllerinin Yazımı
- Çekirdek Modüllerinin Yüklenmesi ve Boşaltılması
- Karakter Aygıt Sürücülerinin Yazımı
- Aygıt Sürücülerde Senkronizasyon İşlemleri
- Aygıt Sürücülerde Bekleme Kuyruklarının Yaratılması ve Bloke İşlemlerinin Sağlanması
- Aygıt Sürücülerde Bellek Tahsisatları
- Aygıt Sürücülerin IO Portlarını Kullanması
- Aygıt Sürücülerde Kesme İşlemlerinin Yönetilmesi
- Blok Aygıt Sürücülerinin Yazımı
- Blok Aygıt Sürücülerinde Bellek Haritalaması ve DMA Kullanımı
- USB Aygıt Sürücüleri
- Kernel Thread’lerin Yaratılması ve Kullanımı
Kursumuza ön kayıt yaptırmak için bu bağlantıyı kullanabilirsiniz.
* Kurs ücreti duyuru sayfasında belirtilmektedir.
Bu kurs C ve Sistem Programcıları Derneği ve Sistem Bilgisayar işbirliği ile düzenlenmektedir.
ARM Mikrodenetleyici Uygulamaları
Kursumuza ön kayıt yaptırmak için bu bağlantıyı kullanabilirsiniz.
Açıklama; Ders akışı sırasında aşığda belirtilen konularda değişiklik yapılabilir. Yeni konular eklenebilir ya da bazı konular programdan çıkartılabilir. Ders konuları işlenme sırasına göre belirtilmemiştir. ARM C Uygulamaları ders programı STM32F4 işlemci mimarisi kullanılarak yürütülecektir. Geliştirme ortamı olarak IAR Embedded Workbench for ARM (EWARM) kullanılacaktır. Uygulama konularında STM32 F4 Discovery geliştirme kitinin kullanılması planlanmaktadır. Ayrıca Mikroelektronika ve diğer firmalarının bazı bordları da kullanılacaktır.
Kurs konularından bazıları aşağıdadır:
ARM Mikrodenetleyici çekirdek yapılarının incelenmesi
STM32F4 Mikrodenetleyicilerin incelenmesi:
– Bellek organizasyonu
– I/O portları
– Çevresel birimler
– Kesme özelliği ve diğer özellikler
Geliştirme ortamlarının incelenmesi:
– IAR EWARM geliştirme ortamı
– STMicroelectronics STMCube yazılım geliştirme ortamı
Mikrodenetleyici uygulamaları akış yönetimi, yazılım modellemeleri
I/O portları kullanımı
Alfanümerik LCD, 7-segment display birimlerinin uygulamaları
Push button ve Matrix keyboard uygulamaları
RS232 haberleşmesi: GPS modül kullanımı, NMEA protokolü
1-Wire Bus haberleşmesi: Sayısal termometre uygulaması
I2C haberleşmesi: Real Time Clock, 24XX EEPROM bellek uygulamaları
SPI haberleşmesi: Sensör uygulamaları, 25XX EEPROM bellek uygulamaları
Grafik LCD kullanımı
RS485 haberleşmesi ve MODBUS protokolü
Mixed model programming: C – Assembly entegrasyonu…
Listede yer alan ders konuları içinde bazı değişiklikler (ekleme ve çıkarmalar) yapılabilir. Listedeki konular işleme sırasını göstermemektedir.
Ön koşul; Daha önce C Programlama dilinde uygulamalı çalışma yapmış olmak ya da C ve Sistem Programcıları Derneği’nin açmış olduğu C Programlama Dili kursuna katılmış olmak.
Kursumuza ön kayıt yaptırmak için bu bağlantıyı kullanabilirsiniz.
* Kurs ücreti duyuru sayfasında belirtilmektedir.
Bu kurs C ve Sistem Programcıları Derneği ve Sistem Bilgisayar işbirliği ile düzenlenmektedir.
Temel Elektronik
Açıklama : Kursun amacı elektrik elektronik konusunda bilgi sahibi olmayan ya da az
bilgi sahibi olan öğrenciler için donanım temelli yazılım uygulamalarını
geliştirebilecek alt yapı hazırlamaktır. Hedefi mikrodenetleyici
uygulamaları yapmak olan ve C programlama dilini bilen ancak elektronik
bilgisi az olan ya da olmayan öğrenciler için PIC-C programlama kurslarına
hazırlık niteliği de taşımaktadır.
Kurs konularından bazıları aşağıdadır:
- Uluslararası Birim Sistemleri
- Elektrik Devreleri, Akım, Gerilim
- Pasif Devre Elemanları
- Gerilim ve Akım Kaynakları
- Güç ve Enerji
- Elektrikte ölçme ve ölçü aletleri
- Devre Teorisi, Kirchoff Akım ve Gerilim Yasaları
- Doğru Akım Devreleri
- Alternatif Akım Devreleri
- İşlemsel Kuvvetlendiriciler
- Yarı İletken Devre Elemanları
- Temel Kuvvetlendirici Devreler
- Anahtarlama Devreleri
- Osilatörler
- Filtre Devreleri
- Optoelektronik
- Mantıksal Devreler
- Elektrik Motorları
- Algılayıcılar ve Dönüştürücüler
- ADC ve DAC devreleri
- Mikroişlemciler, Mikrodenetleyiciler
- Bellek Elemanları
- Mikrodenetleyicilerde Kullanılan Çevresel Birimler
- Haberleşme Protokolleri
- ve diğer konular…
* Ücreti sorunuz.
PIC C Uygulamaları (II)
Kurs Konuları:
PIC24 işlemci ailesinin donanım özelliklerinin incelenmesi
PIC32 işlemci ailesinin donanım özelliklerinin incelenmesi
PIC24 ve PIC32 işlemcileri için C derleyicilerinin incelenmesi
Grafik LCD, Dot-Matrix display uygulamaları
I2C haberleşmesi: Programlanabilir clock (PLL) uygulaması
SPI haberleşmesi: SDIO arabirimi, SDCARD kullanımı
File Sistem, FAT / FAT32
Mikrodenetleyici uygulamaları akış yönetimi, yazılım modellemeleri.
Cooperative Multitasking
Ethernet protokolü ve TCP/IP protokol stack
USB Haberleşmesi
IR ve RF haberleşmeleri
Notlar:
Ders akışı sırasında yukarıda belirtilen konularda değişiklik yapılabilir. Yeni konular eklenebilir ya da bazı konular programdan çıkartılabilir.
Ders konuları işlenme sırasına göre belirtilmemiştir.
PIC C (I) Uygulamaları ders programı PIC18 işlemci mimarisi kullanılarak yürütülecektir. PIC C (II) Uygulamaları PIC18, PIC24, PIC32 işlemci mimarileri kullanılarak yürütülecektir.
Uygulama konularında dernek tarafından tasarlanmış deney bordlarının yanısıra Microchip ve Mikroelektronika firmalarının deney bordları kullanılacaktır
Önkoşul: Ders programı, C programlama dilinin bilindiği varsayımıyla uygulama ağırlıklı olarak yürütülecektir. Ancak gerekli görülmesi durumunda PIC C (I) dersi kapsamında C programlama dilinin temel konuları ile ilgili tekrarlar yapılacaktır.
* Ücreti sorunuz.
PIC C Uygulamaları (I)
Kurs Konuları:
PIC18 işlemci ailesinin donanım özelliklerinin incelenmesi
Mikrodenetleyici C derleyicilerinin incelenmesi: Eklentiler, kısıtlamalar
PIC C geliştirme ortamlarının incelenmesi (MPLAB IDE / MPLAB X)
Mikrodenetleyici uygulamaları akış yönetimi, yazılım modellemeleri
Alfanümerik LCD, 7-segment display birimlerinin uygulamaları
Push button ve Matrix keyboard uygulamaları
RS232 haberleþmesi: GPS modül kullanımı, NMEA protokolü
1-Wire Bus haberleşmesi: Sayısal termometre uygulaması
I2C haberleþmesi: Real Time Clock, 24XX EEPROM bellek uygulamaları
RS485 haberleþmesi ve MODBUS protokolü
Capture/Compare/PWM modülü kullanımı
RFID, Manchester kodlaması
PC Keyboard ile haberleşme
Mixed model programming: C – Assembly integrasyonu
Notlar:
Ders akışı sırasında yukarıda belirtilen konularda değişiklik yapılabilir. Yeni konular eklenebilir ya da bazı konular programdan çıkartılabilir.
Ders konuları işlenme sırasına göre belirtilmemiştir.
PIC C (I) Uygulamaları ders programı PIC18 işlemci mimarisi kullanılarak yürütülecektir. PIC C (II) Uygulamaları PIC18, PIC24, PIC32 işlemci mimarileri kullanılarak yürütülecektir.
Uygulama konularında dernek tarafından tasarlanmış deney bordlarının yanısıra Microchip ve Mikroelektronika firmalarının deney bordları kullanılacaktır
Önkoşul: Ders programı, C programlama dilinin bilindiği varsayımıyla uygulama ağırlıklı olarak yürütülecektir. Ancak gerekli görülmesi durumunda PIC C 1 dersi kapsamında C programlama dilinin temel konuları ile ilgili tekrarlar yapılacaktır.
* Ücreti sorunuz.