Tiva C Series Launcpad ile Uygulama Geliştirme – 2 || Sistem Frekansının Ayarlanması

Yazan |19 Aralık 2014, Cuma|

Tiva C Series Launcpad ile Uygulama Geliştirme – 1 || Proje ortamının hazırlanması

Yazan |19 Aralık 2014, Cuma|

  • pythonMultipleVersionsAtTheSameWindowsComputer
    Permalink Gallery

    Python 2.x ve Python 3.x versiyonlarinin ayni anda Windows 7’de kullanılabilmesi

Python 2.x ve Python 3.x versiyonlarinin ayni anda Windows 7’de kullanılabilmesi

Yazan |5 Aralık 2014, Cuma|

Python ile uğraşmaya başlayanlar iki farklı koldan ilerleyen python versiyon kullanımı sorunıyla mutlaka karşılaşmıştır ya da karşılaşacaktır. Bazı modüller 2.x tarafından sadece desteklenmekte veya başkaları sadece 3.x tarafından. Dolayısıyla kod parçacığınızı aynı Windows kurulumlu bilgisayarda farklı python shell ile çalıştırmak istediğinizde buradaki notlar işinize yarayacağını düşünüyorum. Bilgisayarınıza başarılı bir şekilde 2.x ve 3.x sürümlerini kurmuş olduğunuzu varsayıyorum. Fakat elinizde varolan bir python scripti sizin belirleyeceğiniz python shell ile çalıştırmak istemeniz halinde : Environment Variable oluşturma ekranınından aşağıdaki gibi oluşturuyorsunuz. Buraya girilen değer default olarak kullanacağınız python versiyonunu gösterir.

Nucleo ile UART Kullanımı

Yazan |21 Kasım 2014, Cuma|

Merhabalar. Bu yazıda Nucleo kitimizi ve mbed platformunu kullanarak UART kullanarak bilgisayar ile haberleşmeyi öğreneceğiz. Eğer kitinizi ilk defa kullanıyorsanız bir önceki "Nucleo İlk Uygulamalar" yazısına dönebilirsiniz. Fazla konuşmadan direkt yazılıma geçelim. Yazılımı Arduino ile karşılaştırmalı olarak yazacaz. Böylece daha önce Arduino kullananlar platform benzerliğine şaşıracak ve ek bir gayret sarf etmeden uygulamalarını yazabilecekler. Arduino ve bilgisayarı haberleştirmek için seri port şu şekilde başlatılır;
  • gomsis 2014
    Permalink Gallery

    GömSis 2014 Gömülü Sistemler ve Uygulamaları Sempozyumu

GömSis 2014 Gömülü Sistemler ve Uygulamaları Sempozyumu

Yazan |20 Kasım 2014, Perşembe|

Bu yıl dördüncüsü düzenlenecek olan Gömülü Sistemler ve Uygulamaları Sempozyumu, 4-5 Aralık 2014 tarihlerinde İstanbul Teknik Üniversitesi Süleyman Demirel Kültür Merkezinde gerçekleştirilecektir. Sempozyum ziyareti ücretsiz olup, konuya ilgili tüm akademisyen, mühendis, uzman ve öğrenciler davetlidir. GÖMSİS 2014, İstanbul Teknik Üniversitesi Elektrik-Elektronik Fakültesi tarafından organize edilmektedir. Çizgi Tagem'in sempozyum çerçevesinde dağıtacağı promosyon hediyelerini kaçırmayın.

Nucleo İlk Uygulamalar – Led Blink

Yazan |18 Kasım 2014, Salı|

Merhabalar. Bu yazıda elimizde bulunan Nucleo kiti ile ilk uygulamamızı yazıp mbed dünyasına bir giriş yapacaz.

Bunun için öncelikle http://developer.mbed.org/ adresine giriş yapın ve kendinize bir hesap açmanız gerekiyor. Hesabnızı açtıktan sonra mbed’in online derleyicisine ulaşabilir. Kendi programlarınızı yazabilir ve hazır projelere erişip düzenlemeler yapabilirsiniz.

Biz bu yazıda ST’nin hazırlamış olduğu Led_Blink projesi üzerinden ilerleyeceğiz.

ST’nin hazırlamış olduğu örnek projelere; http://developer.mbed.org/teams/ST/code adresinden ulaşabilirsiniz.

Led_Blink örneği için bu adrese gidin. Karşınıza aşağıdaki gibi bir ekran çıkacaktır.

dev

Burada proje ile ilgili birkaç bilgi, sorulan sorular vb..

Karakter LCD’ler için Bar Gösterim Uygulaması

Yazan |9 Kasım 2014, Pazar|

resim1

Şekil 1

Merhabalar, bu yazımda sizlere karakter LCD’ler için hazırlamış olduğum LCD bar kütüphanesinden bahsedeceğim.

Bar ingilizce de çizgi, çubuk gibi anlamlara gelmektedir. Bizim uygulamamızda ise LCD’ler üzerinde çubuklar şeklinde gösterilen piksellerdir. Uygulamalarda yoğun kullanımı olan bar göstergeler uygulamaya görsellik katarak daha güzel görünmesini sağlar. Örneğin uygulamanızda bir ses  seviyesini LCD ekranda göstermek istiyorsanız, ses değerini sayısal olarak göstermek yerine sayısal değerin yanında barlar şeklinde göstermek(Tv’ler de vs. olduğu gibi) daha iyi olacaktır şüphesiz. Bu gibi örnekler çoğaltılabilir.

Piksel bazında müdahale edebildiğimiz için bar gösterimi gibi uygulamaları grafik tabanlı

  • TXB0108_connection
    Permalink Gallery

    Farklı Voltaj (5V – 3.3V) Seviyesindeki Digital Blokları Sürme

Farklı Voltaj (5V – 3.3V) Seviyesindeki Digital Blokları Sürme

Yazan |8 Kasım 2014, Cumartesi|

Amaç : 3.3V luk mikrocontroller ile 5V ile sürülebilen LCD yi fazla lehimleme ya da kablolama yapmadan kontrol edebilmek.

Hepiniz 3.3V luk system ile 5V luk devreye veya 5V luk system ile 3.3V luk sisteme bağlanmak durumunda kalmış olabilirsiniz veya ileride bu tarz bir ihtiyaçla karşı karşıya kalabilirsiniz. Genellikle I2C master ve slave modülleri için bu durumlara ihtiyaç duyuluyor olsa da çok farklı bir durum için bu gereksinimi duyabilirsiniz. Bu durum için farkettiğim olası birden çok çözümü kısaca bahsedeceğim ve bir tanesi üzerinden uygulama notlarını ve sonuçlarını aktararak konuyu özetlemeye çalışacağım.

Böyle bir dönüştürme işlemini gerçekleştirebilmek için aslında bir çok seçeneğiniz

STM32F4 Discovery ve LMD18200 ile DC Motor Hız Kontrolü

Yazan |13 Ekim 2014, Pazartesi|

LMD18200[1]Merhaba arkadaşlar. STM32F4 Discovery geliştirme kiti ile yeni bir uygulama daha yapacağız. Bu uygulamamızda STM32F407VG ile ürettiğimiz PWM sinyallerini LMD18200 entegresine uygulayıp LMD18200 entegresinin sürdüğü DC Motorun hızını ayarlayacağız. LMD18200 çok bilinmeyen ama oldukça faydalı olan harika bir H-Köprüsüdür. Yazının devamını okudukça sizde göreceksiniz. Bu entegre Texas Instruments firması, National Semiconductor firmasını satın alana kadar National Semiconductor tarafından üretilmekte olan bir entegre idi. Şimdi artık TI tarafından üretilmekte…

 

 

İlk olarak LMD18200 entegresinin özelliklerinden bahsedelim isterseniz..

  • 3A sürekli akım çıkışı (tepe akımı : 6A)
  • Maximum 55V Çalışma Gerilimi
  • 145°C ye ayarlı termal uyarı (170°C de IC

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ı

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!

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