Picproje Elektronik Sitesi

MİKRODENETLEYİCİLER => Texas Instruments => MSP430 Serisi => Konuyu başlatan: ayhan_eee - 15 Eylül 2012, 14:32:50

Başlık: MSP430F447
Gönderen: ayhan_eee - 15 Eylül 2012, 14:32:50
merhaba arkadaşlar elimde MSP430F447 deneme kartı var kendi tasarladığım.Staj yaptığım firmada yapmıştım.Ama programlayıcı-debugger ünitesi yok.bununla ilgili ne yapabilirim.Baktım ebay de 7 dolara programlayıcı gördüm ama sanırım debugger özelliği yok.Bu konuda ne önerirsiniz.Başka bir yolu varmıdır?Mesela bir launcpad edinip onun üstünden bir şekilde programlamak?Bu arada Core üzerinde debuggera uygun jtag girişi var?

Bu arada girmişken bir de saat kodu koyayım MSP430F447 ile yaptığım.Saatte kullandığım LCD özel üretim olduğu için onun yerine 2*16 lık lcd kullanılabilir.

/*Adi:BasicTimer ile Ayarli Saat
*
*Aciklama:BT birimi saat oluturuldu
*Herhangi bir anda P1.0 basilrak ayarlama yapılabilir.
*
*Yazar:Ayhan Korkmaz
*/
#include "io430.h"
#include "LCD.h"

unsigned char sn1,sn2,dk1,dk2,s1,s2,i=1,x='?',a=0x00;
char s=0;
unsigned char j=1,yj=2;
char m=0;

void tara(unsigned char *x)
{

 
P3OUT = BIT3;

      if(P3IN&BIT0)
      {       
        while(P3IN&BIT0);
        *x=1;
          }
      if(P3IN&BIT1)
      {                             
        while(P3IN&BIT1);
       *x=2;
      }
      if(P3IN&BIT2)
      {
        while(P3IN&BIT2); 
        *x=3;
      }



 

  P3OUT= BIT4;

      if(P3IN&BIT0)
      {
        while(P3IN&BIT0); 
        *x=4;
      }
     
      if(P3IN&BIT1)
      {
        while(P3IN&BIT1); 
        *x=5;
          }
      if(P3IN&BIT2)
      {
        while(P3IN&BIT2);
        *x=6;
      }




    P3OUT= BIT5;

      if(P3IN&BIT0)
      {
        while(P3IN&BIT0);
        *x=7;
      }
      if(P3IN&BIT1)
      {
        while(P3IN&BIT1);
        *x=8;
      }
      if(P3IN&BIT2)
      {
        while(P3IN&BIT2);
        *x=9;
      }
    P3OUT= BIT6;

      if(P3IN&BIT0)
      {
        while(P3IN&BIT0);
        *x='*';
      }
      if(P3IN&BIT1)
      {
        while(P3IN&BIT1);
        *x=0;
      }
      if(P3IN&BIT2)
      {
        while(P3IN&BIT2);
        *x='#';
      }

     

}


int main( void )
{
WDTCTL = WDTPW + WDTHOLD;

P3DIR  =0xF8; //Keypad icin giris cikis ayari

LCD_Init();


BTCTL = BT_ADLY_1000; // 1000ms de bir kesme yap
IFG2_bit.BTIFG=0;//BAsic Timer Flag sil
IE2_bit.BTIE=1;//BT izin ver
 
  P1IE_bit.P0=1;//P1.0 kesme izin ver
  P1IES_bit.P0=1;//
  P1IFG_bit.P0=0;
 
//*********************************************TimerA Ayarlama
  TAR=0x0000;
  TACTL=TASSEL_2+ID_0+MC_1;
  TACCR0=50000;
  TACCTL0_bit.CCIE=0;
  //********************************************

__enable_interrupt();





for(;;)
{

if(i)
LCD_Yaz('Y',1,'P');
else
LCD_Yaz('Y',1,'O');
}

}

#pragma vector=BASICTIMER_VECTOR

__interrupt void sn(void)
{
  sn1++;
  if(sn1>9)
  {
    sn1=0;
    sn2++;
  }
      if(sn2>=6)
      {
        sn2=0;
        dk1++;
      }
          if(dk1>9)
          {
          dk1=0;
          dk2++;
          }
            if(dk2>=6)
            {
            dk2=0;
            s1++;
            }
  if(s2<2){
              if(s1>9)
              {
              s1=0;
              s2++;
              }
  }
  if(s2==2)
  {
  if(s1>=4)
  {
                s2=0;
                s1=0;
                dk1=0;
                dk2=0;
                sn1=0;
                sn2=0;
  }
  }
           
         
     
 
 
 
 
LCD_Sil();
LCD_Yaz('S',2,s2);
LCD_Yaz('S',3,s1);
LCD_Yaz('S',4,dk2);
LCD_Yaz('S',5,dk1);
LCD_Yaz('S',6,sn2);
LCD_Yaz('S',7,sn1);
if(i==1)
i=0;
else
i++;

}

#pragma vector = PORT1_VECTOR

__interrupt void Ayar(void)
{
  if(j==1)   LCD_Sil();
 
TACTL_bit.TAIFG=0;  //TimerA bayrak temizle
TACCTL0_bit.CCIE=1;//TimerA calistir
IE2_bit.BTIE=0;//BT kapat

P1IFG_bit.P0=0;//P1.0 IF temizle


j++;

}

#pragma vector = TIMERA0_VECTOR

__interrupt void tersle(void)
{


if(j==yj)
{
s++;
if(s==10)
{
  m^=0x01;
Segment_Blink(m,j);
s=0;
}
}
tara(&x);
if(x!='?')
{
  s=0;
  LCD_Seg_Sil(j);
  if(j==yj)
  {
    yj++;
  }
if(j==2)
{
 
LCD_Yaz('S',j,x);
s2=x;
}
  if(j==3)
{
s=0;
LCD_Yaz('S',j,x);
s1=x;
}
if(j==4)
{
   s=0;
LCD_Yaz('S',j,x);
dk2=x;
}
if(j==5)
{
   s=0;
LCD_Yaz('S',j,x);
dk1=x;
}
if(j==6)
{
    s=0;
LCD_Yaz('S',j,x);
sn2=x;
}
if(j==7)
{
 
LCD_Yaz('S',j,x);
sn1=x;

TACCTL0_bit.CCIE=0;
j=1;
yj=2;
IE2_bit.BTIE=1;
}
x='?';
}
TACTL_bit.TAIFG=0;
}


Başlık: Ynt: MSP430F447
Gönderen: ayhan_eee - 17 Eylül 2012, 19:00:44
Bu konuda önerisi veya bilgisi olan yok mu?
Başlık: Ynt: MSP430F447
Gönderen: fgokcegoz - 17 Eylül 2012, 21:22:04
(http://www.ti.com/graphics/tool/msp-fet430uif.jpg)

Bu cihaz ile USB üzerinden programlama ve hata ayıklama(debugging) işlemlerini yapabilirsin. Texas Instruments ın sitesinde fiyatı 99$ olarak görünüyor. Eğer launchpad in varsa onun üzerindeki programlama kısmınıda kullanabilirsin. Ama eğer profesyonel olarak çalışacaksan TI ın kendi debugger ını kullanmak daha doğru olacaktır.

http://www.ti.com/tool/msp-fet430uif (http://www.ti.com/tool/msp-fet430uif)
Başlık: Ynt: MSP430F447
Gönderen: ayhan_eee - 17 Eylül 2012, 21:40:01
Profesyonel olarak çalışmayacağım.Onun o fiyatta olduğunu biliyorum zaten stajda iken onunla programlayıp debug ettim.Benim aradığım şu anda alacabileceğim ucuz  ve kullanışlı birşey.Bende launcpad yok ancak onu kullanarak nasıl yapabilirim?Onu kullanırsam debug işlemi yapabilir miyim?Birde kullanımı yani programlama nasıl oluyor launcpad ile.Kolay mı kullanımı?

Birde ebayde 7 dolara programlayıcı var ama debug yok o yüzden sordum
Başlık: Ynt: MSP430F447
Gönderen: mehmet - 18 Eylül 2012, 00:45:05
MSP430 başlangıcı istiyorsan LauncPad(MSP-EXP430G2)
kiti var. 4.3$ evine geliyor.
http://www.ti.com/tool/msp-exp430g2 (http://www.ti.com/tool/msp-exp430g2)
ValueLine serisi mcu lar için yapılmış. USB üzerinden
programlayıp debug yapabilirisin.
http://www.cizgi-tagem.org/ (http://www.cizgi-tagem.org/) sitesinden de bunla ilgili
dersler var.
TI'nin daha gelişmiş mcu larında debug yapmak
pahalı.

Saygılar...
Başlık: Ynt: MSP430F447
Gönderen: ayhan_eee - 18 Eylül 2012, 02:29:20
Elimde hazır kendi tasarladığım 447 gibi MCU varken onu kullanmak daha mantıklı geldi.Onun eve geldiğini biliyorum ama sorduğum onu alırsam onunla 447 üzerinde debug yapabilir miyim?
Ben zaten MSP430F447 nin neredeyse bütün ünitelerini kullandım bu arada.Sadece bundan sonra arada proje yapmak için istiyorum.

Baktım da 7 dolara programmer var ama debugerı yok.launcpad ile olabilir mi?
Başlık: Ynt: MSP430F447
Gönderen: mehmet - 18 Eylül 2012, 02:51:05
LauncPad sadece Spy-Bi ware ile programlama ve
debug yapabiliyor. F447 de sadece Jtag var.,
:(

Saygılar...

Not: Ebay'da bu var ama ne kadar güvenilir bilmiyorum...
http://www.ebay.com/itm/New-MSP430-MCU-Parallel-Debugger-JTAG-Programmer-Emulator-With-download-cable-/290612735569?pt=LH_DefaultDomain_0&hash=item43a9de6e51 (http://www.ebay.com/itm/New-MSP430-MCU-Parallel-Debugger-JTAG-Programmer-Emulator-With-download-cable-/290612735569?pt=LH_DefaultDomain_0&hash=item43a9de6e51)
Başlık: Ynt: MSP430F447
Gönderen: ayhan_eee - 18 Eylül 2012, 19:29:18
onun için birde parelel to USB çevirici gerekir.Bence istenileni vermeyebilir.onun yerine,nasılsa elimde deneme kartım var,direk programer alayım diyorum ne dersiniz?

http://www.ebay.com/itm/Advanced-MSP430-BSL-USB-programmer-download-cable-USB-port-/180962175777?pt=LH_DefaultDomain_0&hash=item2a222fab21 (http://www.ebay.com/itm/Advanced-MSP430-BSL-USB-programmer-download-cable-USB-port-/180962175777?pt=LH_DefaultDomain_0&hash=item2a222fab21)
Başlık: Ynt: MSP430F447
Gönderen: ayhan_eee - 13 Aralık 2012, 21:45:00
Arkadaşlar bu aralar blogumda yazdığım kodları yayınlamaya başladım bir programıer alıp sorun olursa denemek istiyorum da en son önerdiğimi kullanan var mı?
Başlık: Ynt: MSP430F447
Gönderen: demket - 22 Mayıs 2013, 15:02:43
S.A., arkadaşlar,

MSP430-BSL-USB programlayıcıyı nasıl kullanıyoruz. JTAG bağlantısı vasıtasıyla mı? Eğer öyleyse bu programlayıcıdan elimde mevcut. Pinlerin ne olduğunu nereden bulabilirim?

Başlık: Ynt: MSP430F447
Gönderen: ayhan_eee - 22 Mayıs 2013, 20:38:22
JTAG ile programlanıyor.netten bilgi bulabilirsin bence