Gömülü Sistemler ve Mikro Denetleyiciler Sertifika Programı Başladı

Yazan |6 Ağustos 2014, Çarşamba|

mcu5Bu sertifika programımız Gömülü Sistemler ve Mikro Denetleyiciler alanında tasarım ve uygulama yapabilen uzman elemanlar içindir. Bu meslek elemanından sayısal devre tasarımı, temel elektronik bilgisi, devre tasarlama yeteneği, mikro denetleyiciler ve işlemciler temel bilgileri ve programlama, C++ programlama dili yetenekleri beklenmektedir. Meslek Yüksek Okulu ve elektrik/elektronik fakülte öğrencilerinin bu sınavlara girmeleri tavsiye edilir.

Gömülü Sistemler ve Mikro Denetleyiciler Sertifika Programımızda girilmesi gereken sınavlar için Tıklayınız!

STM32F4 Discovery ve MAX7219 ile Kayan Yazı

Yazan |13 Eylül 2014, Cumartesi|

fff    Merhaba arkadaşlar. Uzun bir aradan sonra tekrar mcu-turkey da yeni bir yazı yazacağım. Bu yazımda ARM kullanıcılarının birçoğunun tercih ettiği STM32 ailesinden, STM32F4 Discovery kitini kullanacağız. Ve yazının başlığında görüldüğü üzere geliştirme kitimiz ile 8 adet MAX7219 entegresini süreceğiz. Projemizi STM32 Cube üzerinde oluşturup keil üzerinde çalışacağız.


Öncelikle kullanacağımız geliştirme kitinin özelliklerine şöyle kısaca göz atalım isterseniz.

  • 168MHz 32 bit ARM Cortex M4F CPU
  • 1MB Flash, 192 KB Ram
  • Geliştirme kiti üzerinde dahili ST-Link v2 Debugger Bağlantısı
  • LIS302DL 3 eksenli ivme sensörü
  • 4 adet kullanıcı ledi ve 2

Kullanıcı Kontrol Arayüz Simülatörü (Menü Kontrolü)

Yazan |10 Eylül 2014, Çarşamba|

Neden Simulatör ?

Bir gömülü sistem projesinin algoritmik taraflarının düzgün çalışıp çalışmadığını gösterebilme, düşünülen senaryolarının yazılım tarafında neye karşılık düşeceğini somutlaştırabilme ve müşteri ya da proje sahibine somut bir demo yapabilmenin işe yarar yollarından biri de gömülü projeyi masaüstü yazılım ve programalama ile simule edebilmektir.

Tasarlanan simülatör menü ekranı sahada çalışacak cihazın menüsü ile birebir aynı çalışacak şekilde aşağıdaki gibi tasarlanmıştır.

UnderBenchDishwasher_userPanelOnSimulator

Kullanıcı Kontrol Arayüzü

Şekilde de görüldüğü üzere kullanıcı arayüzü veya diğer bir deyişle ürün menü sisteminin kullanımı ve kontrolü temel olarak “Yukarı”, “Aşağı”, “Onay”, “İptal” ve “Aç-Kapat” butonlarından oluşmaktadır. “Yukarı” ve “Aşağı” butonları

Beagleboard ve Eclipse ile Uzaktan Hata Ayıklama

Yazan |4 Ağustos 2014, Pazartesi|

Merhaba, bu yazımda sizlere Ubuntu kurulu bilgisayarda Eclipse kullanarak uzaktan hata ayıklama (Remote Debugging) işlemini anlatacağım.

Başlamadan önce sistemimizde beagleboard ve host bilgisayarımızın sabit ip yöntemiyle birbirine bağlı olması gerekiyor. Sitede yer alan diğer yazılardan faydalanarak bu işlemleri yapabilirsiniz. Sistemimiz hazırsa başlayalım.

İlk olarak host bilgisayarda (ubuntu yüklü) terminali açıp şu işlemleri yapalım ve gdb-multiarch ‘i kuralım. Bu, var olan gnu debugger ın bir çok mimaride çalışabilen versiyonudur. Bizim mimarilerimiz host bilgisayarda x86 iken beagleboard’da arm olduğu için bunu yüklememiz gerekiyor. […]

ARM Cortex-M Tabanlı İşlemcilerde Register Yapısı

Yazan |14 Temmuz 2014, Pazartesi|

ARM-logo-500x148

Merhabalar. Eğer ARM işlemcileri assembler seviyesinde programlamak istiyor veya ARM işlemcilerin çalışma yapısını merak ediyorsanız onların Registerlarını öğrenmeniz gerekir.

Registerlar işlemcilerin içindeki veri depolama birimleridir. İşlemci için her türden veriyi içinde barındırırlar. İşlemcinin durumu, sistemdeki olası hatalar, beklenmeyen hatalar, kullanıcı verileri bu verilere örnek olarak gösterilebilir. Yani bir işlemciyi programlamak onun registerlarına veri yazıp okumaktan ibarettir gibi bir tanım yapsak yanlış olmaz. Kullandığınız tüm fonksiyonlar aslında arkada bu registerlara veri yazar veya veriyi okur. Bu yüksek seviyeli programlama dillerinde de değişmez.

ARM Cortex-M Tabanlı İşlemcilerde SysTick Timer

Yazan |14 Temmuz 2014, Pazartesi|

ARM-logo-500x148
SysTick zaman gecikmeleri ve periyodik kesmeler oluşturabileceğimiz basit bir sayaçtır. Bu timer birimi tüm Cortex-M mikroişlemcilerinde bulunur, bu sayede SysTick kullanımını diğer Cortex-M tabanlı mikroişlemcilere kolaylıkla port edebilirsiniz. Aşağıdaki tablo SysTick için register tanımlamalarını gösteriyor. SysTick temel olarak clock frekansı hattı üzerine çalışan bir sayaçtır. Bunu 4 adımda çalıştıracağız. İlk adım olarak, başlatma sırasında SysTick’i kapatmamız ve ENABLE bitini temizlememiz gerekiyor. İkinci adım olarak RELOAD register’ını ayarlamamız gerekiyor. Üçüncü olarak, sayaç başlangıç değerini yazmak için NVIC_ST_CURRENT_R register’ını temizlememiz gerekiyor. Son olarak istediğimiz modu ayarlayabilmek için kontrol register’ı olan NVIC_ST_CTRL_R kaydedicisini

mikroC ARM Kütüphaneleri

Yazan |6 Temmuz 2014, Pazar|

Merhabalar. Kısa bir süre önce mikroC’nin ARM derleyicisi ile tanıştım. Kütüphaneleri çok hoşuma gitti. Sade ve anlaşılır. Üstelik yeterince örnek bulunuyor. Ve bunları türkçeye çevirip blogumda (birkoyaz.blogspot.com.tr) paylaşmaya karar verdim. Çevirileri yaptıkça burada yayınlamaya çalışacağım umarım faydası olur.

İndir (RAR, 2.19MB)

Pcduino Ubuntu, VNC Viewer ile bağlanmak

Yazan |6 Temmuz 2014, Pazar|

photo 2

Pcduino v2 kartımızla kurulu olarak gelen Ubuntu işletim sistemini çalıştırmak ve görüntülemek için aşağıdaki gereksinimlere ihtiyaç duymaktayız. Bu yazımda sizlere hdmi kablosunu bir monitöre bağlamadan direk olarak VNC viewer veya SSH bağlantısı kurarak nasıl ulaşacağımızı anlatacağım.

[…]

C++ ile Beaglebone Black’de Bluetooth Haberleşmesi

Yazan |3 Temmuz 2014, Perşembe|

kapak  Merhabalar arkadaşlar bu yazımda okulum öğrencilerinden Sinan Divarci’nin ders projesini tanıtmaya çalışacağım. Proje iki yapıdan oluşmaktadır. Bunlar PCB ve Kod bloğu. Bu dökümanda PCB tasarımını Mentor Graphics Pads yapmıştır ve HC06 ve denemeler için Usb to Seri dönüştürücü kullanılmıştır.

 

 

 

 

 

[…]

Android Üzerinden Beaglebone Black’in Kontrolü

Yazan |26 Haziran 2014, Perşembe|

123123Merhaba arkadaşlar uzun zaman sonra tekrar bir yazıyla tekrar buluşmaktayız. Bu uzun zaman içerisinde çokça proje geliştirdim ancak bunları derleyip platforma yüklemek bayağı zamanımı aldığından oldukça geciktim bu konuda. Bu yazımda Beaglebone Black ile bir Android platforma sahip telefon yada tablet gibi gömülü cihazları haberleştirerek Beaglebone Black u kontrol etmeyi hedeflemekteyim.

Proje dökümanım okulumda bir ders projesi olup tüm proje dökümanlarıyla beraber aşağıda paylaşmış bulunmaktayım. Umarım faydalı olur bilgilenmenize yardımcı olur.

[…]

Ti Tiva EEPROM (e2prom) Yapısı , Okuma ve Yazma İşlemi

Yazan |11 Haziran 2014, Çarşamba|

Tivaware EEPROM Api’si mikrodenetleyici üzerinde bulunan EEPROM ile basitçe etkileşim sağlayan bir yapıya sahiptir. Bu Api 3 işlevi sağlamaktadır.

  1. Okuma ve Yazma İşlemi
  2. Koruma
  3. Kesme Kontrolü

Tiva EEPROM Modülü word-by-word ( Tek yazmada 32 bit ) olarak programlanabiliyor. En güzel yanı da flash yapısından farklı olarak yazmadan önce silme gerektirmiyor.

Tiva EEPROM denetleyicisi mesela korumalı bölgelere erişim sağlamak istendiğinde kesme üreterek sizi uyarabiliyor. Bu bahsettiğim koruma hakkında daha sonradan bir yazı yazacağım. Yukarıda bahsettiğimiz gibi okuma,yazma gibi işlemlerin sonucu olarak ta kesme üretilebiliyor. Bu kesmeler sayesinde komutun başarılı olarak çalışıp çalışmadığından emin olabiliyoruz.

Tiva mikrodenetleyicilerinde EEPROM modülünün büyüklüğü mikrodenetleyici modelleri arasında farklılık gösterebilir. Bunun için Tivaware Api’sinde  EEPROMSizeGet() ve EEPROMBlockCountGet()  adında

MSP430 Programlama ve Uygulama Modülleri

Yazan |7 Haziran 2014, Cumartesi|

Merhabalar, bu yazımda sizlere bir süredir üzerinde çalıştığım MSP430 programlama ve uygulama modüllerini tanıtacağım.

Bilindiği gibi MSP430 denetleyicilerin kullanımı son 4-5 yılda Launchpad geliştirme kartlarının çıkması ile yaygınlaştı. Ayrıca TI firması yaptığı bir çok etkinlikler ile dikkatleri MSP430 denetleyiciler üzerinde toplamayı başardı. […]

Pcduino – Mini Bilgisayarlar

Yazan |30 Mayıs 2014, Cuma|

Basit AVR mikroişlemciler ve Arduino ile başlayan gelişmeler  donanımsal bir  ekosistem oluşturmuştur. Beagle Board ve Rasperry Pi,  ARM ile geliştirdiği Mini PC’leri de bu ekosisteme sokarak teknolojisini bir ileri boyuta taşımıştır. Son zamanlarda  LinkSprite tarafından v3’e kadar  geliştirildiği Arduino ile Arm tabanlı bir mini bilgisayarı birleştiren Pcduino kartını incelemeye alacağız. Ben kartın v2′sini kullanmaktayım. v3 2′ye göre çift çekirdekli ve A20 işlemcisi ile gelmektedir.

pcDuino_v2

[…]

ARM Programlama Eğitimleri E-Kitap

Yazan |30 Mayıs 2014, Cuma|

Energia ve Stellaris LP ile Tweet Atma

Yazan |26 Mayıs 2014, Pazartesi|

energiaLogo Herkese merhabalar, geçen yazımda yazdığım gibi bu yazıda Stellaris Launchpa, Energia ve C#  kullanarak Tweet yollayacağız. Eğer gömülü sistemlerle biraz ilgilenmişseniz temel uygulamalardan birinin butona basıldığında led yakma uygulaması le karşılaşmışsınızdır, biz bu yazıda işleri biraz ilerletip butona basılınca tweet attıracağız. Bunun gerekli yazılımlar şunlardır; Energia  Visual Studio  Stellaris LP Twitter’a bir yazılım tarafından erişip tweet yollamak, çekmek gibi işlemleri yapmak için https://dev.twitter.com/apps linkinden kendinize bir twetter uygulaması oluşturmanız gerekiyor. Bunun için linki açıyoruz ve karşımıza çıkan ekranda Create New App butonuna tıklıyoruz. kayit     Karşınıza yukarıdaki gibi bir form gelecektir. Burada uygulama ile ilgili bilgileri girerek sayfanın

Energia ve Stellaris LP ile Lcd Ekrana Gerçek Zamanlı Yazı Yazdırma

Yazan |26 Mayıs 2014, Pazartesi|

energiaLogo

Herkese merhabalar, bu yazıda geçen yazıda olduğu gibi Energia, C# ve Stellaris LP kullanarak gerçek zamanlı olarak klavyeden girdiğimiz karakterlerin LCD ekranda görüntülenmesini sağlayacağız.  Bunun için gerekli olan materyaller şunlar;

Energia IDE,
Visual Studio C# Express,
Stellaris Launchpad,
LCD,
Biraz kablo ve BreadBoard

16x2-LCD-Pin-Diagram

Şunu belirtmek isterim ki LCD ekranlarınızı piyasadaki standart 16 pin  ve pin dizilimi yukarıdaki gibi olacak şekilde bir LCD kullanınız. Aksi takdirde, eğer yeni iseniz, pinleri Launchpad’e bağlarken, sorun yaşayabilirsiniz. Pin diyagramı doğru olduğu takdirde 2×16, 4×20 LCD’ler kullanabilirsiniz. Benim elimde 4×20 olduğu için onu kullanıyorum, sizde yazıyı aynen takip ederek 2×16 kullanabilirsiniz, bir sıkıntı olacağını sanmıyorum.

Eğer breadbord kullanmayı bilmiyorsanız 

Energia ve Stellaris Launchpad Kullanarak Ses ile Led Kontrolü

Yazan |26 Mayıs 2014, Pazartesi|

Merhaba, öncelikle Mcu-Turkey gibi bir platformda bize yazma şansı tanıdığı için Niyazi Saral’a çok teşekkürlerimi sunuyorum ve yazıma geçiyorum, herkese keyifli okumalar. Bu yazımızda Energia kullanarak Stellaris Launchpad ile bilgisayardan aldığımız sese göre led’i kontrol edeceğiz.

Bunun için gerekli olan meteryaller ; Tabiki bir Stellaris LP, bir bilgisayar ve mikrofon.
Projemizi kısaca açıklamak gerekirse, 2 kısımdan oluşacak, ilki C# ile ses işlemlerinin yapılıp sonuçlarının seri port ile işlemciye gönderildiği kısım. 2.si ise işlemciye gelen verileri kontrol edip ledin durumunu belirlediğimiz kısım. Hadi başlayalım!
Not : İleride göreceğimiz System.Speech kütüphanesi Türkçe desteği içermediği için sistem dilinizi ingilizce yapmanız gerekiyor.
energiaLogo

Projeye başlamadan önce için ilk önce Energia programını indirmemiz gerekiyor. Energia TI serisi Launchpadleri Arduino gibi programlamamıza imkan sağlıyor. Arayüzü tamamen Arduino IDE ile aynı, daha önce arduino ile çalışmış olan arkadaşlar

HC-SR04 ve MSP430 ile mesafe ölçümü

Yazan |5 Nisan 2014, Cumartesi|

Bu yazımda msp430 launchpad e bir LCD bağladım onu da 75HC595 ile sürdüm. Mesafeyi ölçmek için HCSR04 ultrasonic mesafe ölçer kullandım.IMG_20140405_173456

[…]

STM32 lerde EEPROM Emulasyonu

Yazan |30 Mart 2014, Pazar|

Çok farklı tarzlarda birçok gömülü sistem mikroişlemci uygulaması güç kesildiğinde de kullanıcı ya da sistem tarafından değiştirilebilen ya da ayarlanabilen bir çok veriyi kaydetmek durumundadır. Bunun için ilk akla gelen çoğu mikokontrollerde bulunmayan harici bir EEPROM ile verilerin saklanmasıdır. Harici EEPROM (electrically erasable programmable read-only memory)  kullanmaktansa, STM32 serisindeki çoğu MCU’nun dahili Flash hafızasını kullanarak kalıcı veri saklama yapabildiğinizi biliyor muydunuz? Üstelik bu yöntemin harici EEPROM kullanmaya göre  yazma ve okuma sürelerinin oldukça hızlı olması gibi çok daha avantajlı tarafları da mevcuttur.”AN2594” kodlu “EEPROM emulation in STM32F10x microcontrollers” isimli eke linkini eklediğim Application notundaki Tablo 1′de ayrıntılı inceleyebilirsiniz. EEPROM emulation işlemini ilk defa gerçekleştirirken

Tiva C Serisi Connected LP ve Exosite Platformu

Yazan |27 Mart 2014, Perşembe|

TM4C129 Serisi

Texas Instruments TM4C123 serisinin bir üst segmenti olan TM4C129 serisi işlemcilerin aralık ayından itibaren seri üretimine başlamıştı. 123 serisinden farklı olarak ilk etapta eksikliğini hissettiğimiz dahili ethernet artık bu işlemci serisinde PHY ile birlikte bulunmakta. Yani bu demek oluyorki direk olarak pasif kompanentler hariç araya hiç bir ek kompanente gerek olmadan direk RJ45 i işlemcimize bağlayıp internet üzerinden veri alışverişine başlayabiliyoruz.

 TM4C1294 Connected LaunchPad

Bununla birlikte 129 serisi dahili ethernet e sahip olması ile çok uygun fiyata üzerinde ethernet portu olan bir Launchpad imiz oldu. Daha önce Cortex-M4 çekirdekli dahili