mikroC for ARM Kurulumu ve Programlama Ortamı

mikroC for ARM Kurulumu ve Programlama Ortamı

ARM tabanlı STM32F103 geliştirme kartı için oluşturduğum serinin 3. yazısı ile karşınızdayım. İlk yazımızda geliştirme kartımızı ve özelliklerini görmüş, ikinci yazımızda ise kartımıza nasıl program yükleyeceğimizi öğrenmiştik. O zaman, nasıl program yazacağız kısmına geçiş yapmanın zamanı gelmiş demektir. Bu yazıda ise, daha önceden PIC ailesi için çok sayıda kod, kütüphane yazdığım ve proje gerçekleştirdiğim mikroC IDEsini (tümleşik geliştirme ortamı) tanıtacağım.

Piyasada ARM için birden fazla programlama ortamı bulunmaktadır. Tercihimi mikroC den yana kullanmamın en büyük sebebi daha önceden mikroC for PIC programını kullanmamdır. Her ortamın kendi içinde avantaj ve dezavantajları vardır. Şahsen ben ARM için mevcut bazı programlama ortamlarının yeni başlayanlar, hobiciler veya bu ortamı sürekli kullanmayacaklar için zor olacağını düşünüyorum. Programlama dili olarak ise ‘C’ dili gömülü dünyada artık bir ‘de facto’ (standart) yazılım dili haline gelmiştir. ASM yazmak çok daha zor ve uzun bir süreçtir. Basic gibi yüksek seviyeli diller ise belki öğrenmesi daha kolaydır fakat kod verimi açısından profesyoneller için yeterli değildir. Kimileri kızacak olsa da ben buna ‘Arduino’ yu da dahil ediyorum. AVR yi Atmel Studio vb. dillerde C dili veya ASM dili ile programlamaz da ‘Arduino’nun kolaylık sunan dünyasına geçersiniz gelişmiş uygulamalar yazarken beklenmeyen hatalar, çakışan interruptlar, aynı kaynağı kullanan kütüphaneler gibi durumlarda ‘hata ayıklayamaz ya da zaman kaybı yaşarsınız’. Fakat, C dilinde donanıma hükmedip aynı zamanda düşük hafıza izi bırakabilirsiniz. Çok aşırı hassas ve zamanlama gereken yerlerde IDE ye ASM yazacağınızı söyleyip içine ASM kodunuzu yapıyı ve bütünlüğü bozmadan gömebilirsiniz. Bu bölümü -tavsiye- niteliğinde değerlendirip herkesin IDE ve DİL seçimine saygı duyarak asıl konumuza dönelim.

mikroC programımız için linke tıklayarak mikroelektronica’nın sitesine gidelim. Açılan sitede mikroC kategorisinde altta bulunan ARM isimli kutuya tıklayalım. Şekil 1 de olduğu gibi sol tarafta bir yükleme butonu ve bu butonun üzerinde hangi sürümü indireceğimizi gösteren bilgi satırı yer almaktadır.

Şekil 1: mikroC ARM İndirme

Download butonunun ardından programımızın bilgisayara inmesini bekliyoruz. Programımız indikten sonra herhangi bir ‘lisans numarası’ girmeden programımızı bilgisayarımıza kuruyoruz ve başlatıyoruz. mikroC PRO for ARM ortamı, 8Kbyte koda kadar ücretsiz derleme seçeneği sunmaktadır. Birçok program için bu yeterli olacaktır. Yazılar sırasında da -çoğunlukla- programlarımız bu limiti aşmayacaktır. Programı başlattıktan sonra karşımıza aşağıdaki gibi bir ekran gelecektir.

Şekil 2: mikroC ARM Ana Ekran

Ben geleneksel olarak her seferinde hoşgeldin sayfasına ufak bir göz atar ve akabinde hemen kapatırım. IDE nin sağında soluna, üzerinde ve altında bir sürü pencere vardır. Ben yine bunları optimize edip gereksizleri kapatırım. Gereklilere de ihtiyacım olduğunda açarım. Böylece kod ortamına daha kolay adapte olur, dikkatimi bir sürü pencere ile dağıtmam. Şimdi, açılan programdaki her pencereyi kapatalım. Ardından sol üstte bulunan File menüsünden New sekmesini oradan da New Project i seçelim. Bu bize ortamdaki ilk programımızı yazmak için gerekli projeyi oluşturmamızı sağlayacaktır.

Şekil 3: mikroC ARM Yeni Proje

Açılan menüde bizi buna benzer bir ekran karşılayacak. Buraya proje ismimizi, projemizin kaydedileceği klasörü, programı yazacağımız kontrolcünün türünü ve kontrolcüyü çalıştırmak istediğimiz saat frekansını giriyoruz. Bu ayarların hemen bitiminde “open edit project window to set configuration bits” yazan radyo butonunu tıklıyoruz. Bu bize kontrolcünün gerekli ayarlarının yapılması için gerekli ekranı açacaktır ve bu işlem oldukça önemlidir (AVR lerde FUSE olarak yapılan ayarlar). Ardından next i 2 kez tıklıyoruz. Açılan sekmede “include all” yazan kutuyu tıklıyoruz. Bu sayede mikroC nin tüm kütüphaneleri derlenme esnasında bizim çağırmamıza gerek kalmadan eğer kullandıysak gerekli desteği sağlayacaklardır. “finish” butonuna basarak bu adımı bitiriyoruz.

Şekil 4: mikroC ARM Ayarlar

Yukarıdaki şekilde arka planda void main(){} ile başlayan ve C – severlerin beklediği programlama satırı görülürken üstte ise STM32F103 ün “configuration register” larına yazılacak “kontrolcü ayarları” görülmektedir. Ortadaki satır çubuğunu aşağıya kaydırarak ayarların ne kadar uzun olduğunu görebiliriz. PIC te ya da AVR de bu kısım bu kadar uzun değildi! Bunu zaten bekliyorduk, değil mi? Sonuçta bu kontrolcü 32 bitlik endüstri sınıfı bir entegre. Dolayısıyla, ayar kısımları da bir o kadar uzun. Ama ilk örnek olduğundan tavsiyem sadece ilk ayar olan dahili kristali (8MHz) aktif edip geri kalan tüm ayarları kapatmamız. Böylece, ilk programda bir sürü yeni kavramla boğuşmak zorunda kalmayacağız. Sağ taraftaki OK butonuna tıklıyoruz. Böylece bu ayarlar arkaplanda derleyici tarafından tutulup, derleme esnasında .hex ya da .bin uzantılı yazılım dosyalarına eklenerek kontrolcüye yazılmayı bekliyor.

Bir sonraki yazımızda ilk programımızı yazıp, derleyip, kartımıza yükleyerek ARM dünyasına “Merhaba” diyeceğiz! Bu zamana kadar sizden STM32F103 kontrolcüsünün ‘datasheet’ dosyasını ve ‘reference manuel’ dosyasını indirip okumanızı istiyorum. Bu dökumanları ne kadar anlarsanız STM32F ve ARM mimarisini o kadar anlamış olacak ve yazdığımız her kodla beraber bilgimiz bir adım daha ilerleyecektir. MikroC ortamı ya da STM ye aşina olmayanlar için, en büyük önerim programın HELP sekmesini tıklayıp (F1) açılan pencerede solda bulunan dizinden “mikroC PRO for ARM Libraries” klasörünü seçip sonrasında “Hardware Libraries” kısmını açıp kütüphanelerin, fonksiyonların, değişkenlerin nasıl yazıldığı,kullanıldığı gibi ipuçları ve bilgileri okumaları ve öğrenmeleridir.

Yazıyı bitirmeden, son olarak IDE ile ilgili birkaç ipucu vereyim. Tools menüsünün en altındaki Options sekmesine tıklayarak kod ortamının rengine, değişkenlerin ve fonksiyonların renk ve şekli gibi özelliklerine erişip istediğiniz gibi değiştirebilirsiniz. Açıkçası, benim tercihim “Zedar” temasıdır. Her ne kadar matrix havası olsa da (evet film olan matrix!), ekranı siyaha çevirdiğinden hem güç tasarrufu yapmakta hem de gözleri çok yormamaktadır (en azından benim için). Geliştirme ortamını ilk açtığımızda etrafta olan pencereleri kullanmak ya da yerlerine geri getirmek ya da göndermek için View sekmesini kullanabilirsiniz.

Bundan sonrasında sizin bu konuya olan öğrenme isteğiniz bu seriden alacağınız faydayı etkileyen ana faktör olacaktır.

Bir sonraki yazımızda görüşmek dileğiyle, mutlu yıllar!

 

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir