реклама на сайте
подробности

 
 
> MSP430F2618 и SPI
IBRO25
сообщение Oct 28 2011, 16:32
Сообщение #1





Группа: Новичок
Сообщений: 6
Регистрация: 28-10-11
Пользователь №: 68 021



Здравствуйте товарищи!!! возникла проблемка с SPI (вроде ничего сложного в интерфейсе, но всё же)... написал код:
Код
#include  "msp430f2618.h"
#include <stdio.h>
#include <math.h>

unsigned char MST_Data,SLV_Data;

void main(void)
{
  volatile unsigned int i;

  WDTCTL = WDTPW+WDTHOLD;                   // Stop watchdog timer
  if (CALBC1_1MHZ ==0xFF || CALDCO_1MHZ == 0xFF)                                    
  {  
    while(1);                              
                                          
  }    
  BCSCTL1 = CALBC1_1MHZ;                    
  DCOCTL = CALDCO_1MHZ;
  for(i=2100;i>0;i--);                    

  
  P3SEL = 0x3E;                            // порты и вторые ф-ции:SPI-B0 и UART
  P3DIR = 0x5B;                            // SPI-B0 & UART-A1 выбрано в соответствии с направлениями
  P3OUT = 0x31;                               // в соответствии

  UCB0CTL0 |= UCMSB+UCMST+UCSYNC;           // для ЦАП, по заднему и вниз, Mode_1  
  UCB0CTL1 |= UCSSEL_2;                     // SMCLK
  UCB0BR0 = 0x01;                           // /2
  UCB0BR1 = 0;                              //
  UCB0CTL1 &= ~UCSWRST;                     // **Initialize USCI state machine**
  IE2 |= UCB0RXIE;                        

  for(i=50;i>0;i--);                        

  MST_Data = 0x001;                        
  SLV_Data = 0x000;                      

  UCB0TXBUF = MST_Data;                    

  _BIS_SR(LPM0_bits + GIE);                


while(1)
{
  volatile unsigned int i;
  for (i=0xFFFF; i>0; i--);
  while (!(IFG2 & UCB0TXIFG));
  P3OUT &= -0x01;
  P3OUT |= 0x01;
  UCB0TXBUF = UCB0RXBUF;
}
}


вроде компилится, ошибок никаких... но к сожалению, данные не пересылает... пытаюсь разобраться... и дописать очистку мастерского буфера... подскажите, что не так и что я неправильно делаю? и... ещё вопросик: "если у меня приходят сигналы с двух различных источников в проц, как сделать флаги на эти сигналы на выход (чтобы понять, где первый сигнал, а где второй)?"

P.S. видел код по SPI для MSP430F149... но со своим кодом хотелось бы разобраться...

заранее благодарю за все советы и за всю полезную информацию...

Сообщение отредактировал IBRO25 - Oct 28 2011, 16:32
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 15:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.01354 секунд с 7
ELECTRONIX ©2004-2016