Haftasonu bir arkadaşımda mikroişlemci progralama yaptık. Yani her programlama dilinde olduğu gibi sadece "Hello world" felsefesine giriş yaptık.

Texas Instruments Incorporated firmasının mikroişlemci programlamak istediyen öğrenci ve yazılımcılara göndermiş olduğu kargo gelmişti. Kutudan bir adet Launch Pad çıkmıştı. Kırmızı renkte bir Launch Pad mikroişlemciyi koyacağımız bölümdür. Launch Pad 'in üstünde de bir usb girişi var. Bu usb girişi sayesinde bilgisayarımızda yazılımı yapıp Launch Pad 'in üzerine yerleştireceğimiz mikroişlemciye kodlarımızı entegre edeceğiz. Launch Pad 'in üzerinde de ayrıca 8 adet led var. İlk kodumuzda 5 tane ledi yaktık. Delay fonksiyonu ile her bir led in yanma süresini belirttik. 

Launch Pad 'in dışında kutudan MSP430 modeli 16 bit 512 byte 'lık bir mikroişlemci çıktı. Bu mikroişlemciyi Launch Pad 'e taktıktan sonra programımızı yükleyebileceğiz.

Mikroişlemci programlamak için gereken programın adı Code Composer Studio v4 Core Edition. Bu program sayesinde mikroişlemci programlayacağımız kodları yazıp, anında entegre edip çalıştırabileceğiz. Laucnh Pad ve program arasındaki bağlantıyı usb kablo ile yapıyoruz. Bu işlemi kodlarımızı yazdıktan sonra da yapabilirdik. Takılı da kalsın.:) biraz moda girebiliriz belki. 

Code Composer Studio v4 Core Edition programından bahsedeyim biraz. Program standart bir yazılım geliştirme programı. C programala dili kullanarak mikroişlemciyi programlayacağız. 

Kutunun içinden çıkan mikroişlemcinin programlayabilmek için msp430g2231 kütüphanesini kullanmamız gerekecek.
"#include  <msp430g2231.h>"  satırı ile bu mikroişlemcinin kodlamasını yapabileceğiz artık.

 void Delay(unsigned int i)
  {
        do (i--);
        while (i != 0);
  }

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
  P1DIR |= 0x1f;                           // Set P1.0 to output direction
  P1OUT=0X00;
 
  for (;;)
  {
   
   
    if ((P1IN == 0x80))
    {
        //P1OUT &= ~0x01; Launch Pad üzerindeki butona basılı değilse; aşağıdaki kod satırımız çalşıacak.
        P1OUT=0X00;     }
    else
    {
        // butona basılırsa aşağıdaki kod satırlarımız çalışacak.
        P1OUT ^= 0x01;
        Delay(65535);
                P1OUT ^= 0x02; // 1. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(20000);
                P1OUT ^= 0x04; // 2. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(30000);
                P1OUT ^= 0x08; // 3. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(40000);       
                P1OUT ^= 0x10; // 4. led yanacak ve daha sonra 2 saniye bekleyecek.
        Delay(65535);
        Delay(65535);
        Delay(65535);
        Delay(65535);
        Delay(65535);
    }
  } 
}

İlk mikroişlemci denememi yaptım. Aslında konu bana biraz uzak. Daha çok web tabanlı yazılım ile uğraştığım için mikroilemci ilerde programlayacağımı da sanmıyorum. Ama mikroişlemci programlayarak ledler de olsa "Merhaba Dünya" felsefesini uygulamak çok heyecanlıydı.

Selçuk 'a teşekkür ederim tekrar. Selçuk açılır kapı sistemlerinin kumanda, alıcı, kontrol kartı ve fotoseller gibi bölümlerinde mikroişlemcileri programlayacak. Kendisine onu yakın görüyor mikroişlemciliyor:) 

Tekrar yeni bir mikroişlemci uygulaması yaparsam yine yazarım. :) İnsanın kendi evinde kullandığı kumandayı yapması çok değişik bir durum olsa gerek.