TEKNİK YAZI

Tiva Not-1:Tiva Nedir? Nasıl Başlangıç Yapılır?

Texas Inst. Tiva CM4 Serisi tabanlı proje geliştirme maceralarımızı buraya not almayı düşündük. Bu sayede hem yazdıklarımız kalıcı olacak, hem de başka ihtiyacı olanlarda faydalanabilecek.

Sizinde bu işlemcilerde gördüğünüz kritik noktalar olursa bizimle paylaşırsanız seviniriz.

Not: Buraya yazacaklarımız bahsettiğimiz gibi tamamen not alma şeklinde olacağı için bizden profesyonel yazılar, ayrıntılı anlatımlar, düzgün türkçeler vb. beklemeyin. Zira ikimizde ciddi şekilde yoğun çalışan mühendisleriz.

Not2: Bu döküman Texas Instruments firmasının ARM Cortex M4 tabanlı mikroişlemci ailesi olan Tiva Serisi Mikroişlemciler ile  hızlıca programlamaya başlanması için gerekli yazılımlar, Tiva LaunchPad, ve sıfırdan yeni proje oluşturmada kullanılan Keil programının ayarlarının nasıl yapılacağı konularına yardımcı olması için hazırlanmıştır. Tiva Serisi işlemciler, TivaWare kütüphanesi, Keil programının sağladıkları, uygulama kodlarının açıklanması gibi konular ayrı birer dökümanda ele alınması gereken konulardır. Hepsini burada ele alacağız ancak acelesi olanlar bu bilgilere www.ti.com sitesinden kolayca ulaşılabilir.

hadi başlayalım…

Tiva Serisi Mikroişlemci ailesi ti ın Luminary Micro firmasını satın aldıktan sonra çıkarttığı Stellaris Serisi ARM tabanlı mikroişlemci serisi yerine Stellaris serisini revize ederek piyasaya sunduğu ARM tabanlı işlemci serisidir. Stellaris serisinde biraz ağzı yanan ti olaya hızlıca müdahale ettiğinden dolayı  Tiva serisine çok hızlı bir geçiş olmuştur ancak bir çok kod kütüphanesi, sürücüler, uygulama notları aynı şekilde tiva serisi işlemciler içinde uyumludur ve kullanılabilir. Tiva ailesi ve ek bilgiler ti ın sitesinden elde edilebilir.

Tiva  Launchpad ise Tiva serisi işlemcilerle hızlıca çalışmaya başlamak için ti ın tüm işlemci serilerinde çıkarttığı çok düşük maliyetli bir kittir. Bu kit direk olarak ti ın sitesinden 12.99$ gibi bir fiyata ücretsiz kargo ile temin edilebilir. Kitin çok uygun fiyata sahip olmasının yanı sıra üzerinde bulunan pinler vasıtasıyla kendi projelerimiz için geliştirmiş olduğumuz kartlara kod yükleyebilir ve debug yapabiliriz. Yani ek olarak işlemciyi programlamak için bir donanıma ihtiyacımız yoktur.

LP elinize ulaştığında içerisinden bir adet launchpad, bir adet usb kablo, bir adette hızlı başlangıç kılavuzu çıkmaktadır. Hızlı başlangıç kılavuzuna LP in ürün sayfasından da ulaşabilirsinir.

http://www.ti.com/general/docs/lit/getliterature.tsp?literatureNumber=spmu286a&fileType=pdf

Bu kılavuzda da bahsetmiş olduğumuz ürün sayfasına ve işlemcinin ti ın oluşturduğu ti wiki sayfasına yönlendirir.

Tiva Launchpad in özellikleri ve üzerindeki donanımlara kısaca bakacak olursak:

 

Özellikleri:

1-Üzerinde Tiva TM4C123GH6PMI ARM CORTEX M4 tabanlı mikroişlemci

2-USB uygulamaları ve bilgisayar ile bağlantı/DEBUG için USB Micro-A micro-B konnektör

3- RGB Led

4- İki adet kullanıcı butonu

5-İşlemcinin pinlerinin kullanılabileceği 2 adet header pin

6-On-Board ICDI

7-Güç Girişinin seçimi için anahtar

8-Reset Butonu

 

2013-11-01 14_16_00-Tiva işlemci programlamaya başlama - Microsoft Word

 

 

LaunchPad üzerinde hazır olarak yüklü bir program ile gelmektedir. Bu programı kiti bilgisayarımıza bağlayarak çalıştırabiliriz. Üzerinde bulunan UART entegresi ( FTDI gibi ) ile direk olarak seri port bağlantısı da yapılmaktadır ve bir seri port programı ile (Ör: Putty) işlemciye komut gönderip alabilir led parlaklık ayarı, uyku moduna geçme gibi uygulamaları yapabiliriz.

2013-11-01 14_18_05-Tiva işlemci programlamaya başlama - Microsoft Word

 

Launchpad Kit, CORTEX M4 tabanlı, sıradan işlemcilere göre üzerinde donanımsal olarak bir çok modülü fazlaca bulunduran bir işlemciye sahiptir. Bu işlemci ile  kendi projelerimizin prototip uygulamalarını geliştirmek için direk bireysel olarak ti ın kendi sitesinden 2-3 adet numune talep edebiliriz ve hiçbir ücret ödemeden bir hafta gibi bir sürede elimize numuneler ulaşmaktadır. Daha fazla numune ve adetli alımlar için distribütörler ile irtibata geçilebilir.

CORTEX M4 tabanlı olması tüm bu özellikleri sağlamasına rağmen 1000 adetlik alımda işlemcinin fiyatının 6.1 $ olması bu işlemciye geçişi daha da cazip hale getirmektedir. Bununla birlikte ti ın ARM tabanlı işlemciler için sağlamış olduğu API 32 bitlik bu işlemcilerde programlamayı çok daha hızlı şekilde yapmayı sağlamaktadır. Tüm donanım birimleri için driver library hazırlanmış ve hepsinin kullanımı için bir kullanıcı dökümanı oluşturulmuştur.

 

Tiva Serisi ile Programlama

Bu dökümanda bizim kullanmakta olduğumuz Keil uVision programı ile işlemcinin programlanması ve ayarları anlatılmıştır. Tiva Serisi CCS, IAR ve CodeBench ile de programlanabilir. Bu derleyiciler ile çalışmak isteyenler ti ın sitesinden gerekli bilgileri edinebilirler. Ayrıca kodlarda hiçbir değişiklik olmadan diğer derleyicilerde de kodlarınızı derleyebilirsiniz. Ancak derleyici ayarlarını iyi şekilde yapmak gereklidir.

 

Keil programının indirilmesi:

Normalde ücretli olan bu program deneme versiyonunda 32 kb kod sınırlaması ile tüm özelliklerini kullanıma sunmaktadır. Keil programının bu ücretsiz versiyonunu ti ın sitesinden indirilebileceği gibi Keil in sitesinden de bir form doldurarak indirilebilir.

Bu link üzerinden MDK-ARM programı indirilecektir. Yaklaşık olarak 550 Mb dır.

https://www.keil.com/download/product/

Keil programı indirildikten sonra direk olarak programı kurabiliriz.

 

Lanchpad Sürücülerinin Yüklenmesi:

http://www.ti.com/tool/stellaris_icdi_drivers

Buradaki linkten Tiva kartımızın debug ve programlama için sürücülerini indiriyoruz.  Kiti bilgisayarımıza bağladığımızda W7 de direk olarak sürücüleri bulabiliyor. Bazı durumlarda da sürücülerde problem çıkabilir. Bu yüzden sıkıntı yaşamamamız için buradaki sürücüleri indirip aygıt yöneticisinden bu sürücüleri donanımların güncel sürücüleri olarak tanıtabiliriz.

Yükleme sonrasında 2 adet yeni donanım ve bir adette seri port olarak aygıt yöneticisinde kitimizi görebiliriz.

2013-11-01 14_19_16-Tiva işlemci programlamaya başlama - Microsoft Word

 

Kitimizi bağladığımızda tüm işlemleri gerçekleştirebilmek için sürücülerimizin bu şekilde tanımlı olması gerekli. Bir hata yada uyarı var ise bunu düzeltmek için sürücüleri tekrar yükleyebilir veya ti ın sitesinden yardım alabiliriz.

 

TivaWare Kütüphanesinin Yüklenmesi:

TivaWare kütüphanesi daha öncede bahsetmiş olduğumuz Tiva serisi işlemcileri programlama için kütüphane dosyalarını ve örnek uygulamaları içermektedir. Aşağıdaki linkten TivaWare in tamamı veya sadece grafik, USB gibi kütüphane dosyaları indirilebilir:

http://software-dl.ti.com/tiva-c/SW-TM4C/latest/index_FDS.html

Bu programı kurduğumuzda, kurmuş olduğumuz dizine “ti” adında bir klasör oluşturulur ve tüm dosyaları burada bulabiliriz. Kullanmakta olduğumuz Launchpad için örnek dosyalar:

C:\ti\TivaWare_C_Series-1.0\examples\boards\ek-tm4c123gxl

2013-11-01 14_20_00-Tiva işlemci programlamaya başlama - Microsoft Word

 

Özet olarak programlamaya başlamadan önce kurmamız gereken programlar:

1- Keil MDK-ARM

2- Stellaris ICDI Drivers

3- TivaWare Library

 

Örnek Programın Derlenmesi ve İşlemciye Yüklenmesi:

Yazılımların kurulumlarını tamamladıktan sonra ilk olarak örnek projeler içinde bulunan “blinky” projesini adım adım kartımıza yükleyelim.

Bu program yüklenip çalıştığında LP driverlarının ve bağlantılarının LP nin vb tüm herşeyin sağlıklı şekilde çalıştığını bir nevi sağlama yapmış oluyoruz.

1- İlk olarak Keil programını çalıştırıyoruz ve eğer açık bir proje varsa Project > Close Project i tıklayarak açık olan projeyi kapatıyoruz.

2- Project > Open Project e tıklayıp aşağıdaki dosya dizinine ulaşıyoruz ve buradan proje dosyasını seçip açıyoruz.

C:\ti\TivaWare_C_Series-1.0\examples\boards\ek-tm4c123gxl\blinky

Projeyi açtığımızda karşımıza aşağıdaki gibi bir pencere açılıyor;

2013-11-01 14_20_55-Tiva işlemci programlamaya başlama - Microsoft Word

2013-11-01 14_32_20-Tiva işlemci programlamaya başlama - Microsoft Word

2013-11-01 14_32_57-Tiva işlemci programlamaya başlama - Microsoft Word

2013-11-01 14_33_59-Tiva işlemci programlamaya başlama - Microsoft Word

2013-11-01 14_34_39-Tiva işlemci programlamaya başlama - Microsoft Word

Tüm ayarlarımıza şekilde gösterilenler ile aynı şekilde ayarladıktan sonra OK e tıklayıp ayarlarımızı kaydediyoruz ve kodumuzu “Project>Build Target” a tıklayarak veya toolbardaki ikona tıklayarak derliyoruz. Derleme bilgilerini aşağıdaki Build Output penceresinden görebiliriz. Kodumuzda herhangi bir hata yok ise aşağıdaki gibi sorunsuz derlendiğini gösteren bildirim yer alacaktır:

2013-11-01 14_35_19-Tiva işlemci programlamaya başlama - Microsoft Word

 

 

Programımız sorunsuz derlendi ise kodumuzu işlemciye yüklemek için  Flash > Download a tıklayarak kodumuzun yükleme işlemini gerçekleştiriyoruz. Yükleme sorunsuz şekilde gerçekleştiğini output penceresinden görebiliriz:

2013-11-01 14_35_48-Tiva işlemci programlamaya başlama - Microsoft Word

 

“Flash” sekmesinin yanında bulunan Debug menüsü ile de yazmış olduğumuz kodlarda ek bir donanıma ihtiyaç kalmadan devre üzerinde Debug yapabiliriz.

ve TI ARM  CORTEX M4  dünyasına hoşgeldiniz, şimdi sıfırdan yeni proje oluşturma ve kendi kartımızı tasarlama ile yavaş yavaş devam edelim.

 

 

  • umut

    lp yi bilgisayara bağladım usb yi takınca bağlantı sesi geliyor.Ama load dediğimde cihazı bulamıyor

    • Metin KOÇ

      Keil’de Options penceresinde Debug sekmesine gelirsen , orada Use kısmında Stellaris ICDI seçili olması gerekiyor.

  • umut

    saol dediğni yaptım çalıştı

  • Selim

    Tebrikler başarıı bir yazı