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

 
 
 
Reply to this topicStart new topic
> SPI Slave vs TimerB, today at MSP430F2274 arena, Вопросы по работе в режиме SPI Slave с "полудуплексной" схем
Salazar
сообщение Dec 10 2007, 00:15
Сообщение #1





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



Здравствуйте, имею вот такую схему:



Ноги MSP430F2274:
P3.1 - UCB0SIMO
P3.2 - UCB0SOMI
P3.3 - UCB0CLK
P4.0 - TB0

Задача - организовать связь со сторонним MCU.
Насколько я понимаю, для данной схемы существует два варианта:
1) Использовать SPI
2) Написать самому обработчик прерываний от TimerB со считыванием/записью содержимого

С SPI Slave у меня проблема - Всё вроде правильно, и прерывание приходит и битрейт CLK совпадает, но данные фактически не передаются (читает всегда нули). Подозреваю конфликты.

Остаётся пытаться написать всё самому и попробывать "побороть" конфликты в более прозрачной битве.
Загвоздка на первом же этапе:
Как получить прерывание по событию "спадающий фронт" на ноге P4.0(TB0) ?

P.S.
Я новичёк в программировании микроконтроллеров.

P.P.S
Как шрифт Courier в теме сделать чтобы отображался?

Сообщение отредактировал Salazar - Dec 10 2007, 00:27
Go to the top of the page
 
+Quote Post
Salazar
сообщение Dec 10 2007, 02:14
Сообщение #2





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



Дурная привычка - сначала спрашивать, а затем искать ответ на форуме...

Код
void InitExternMCU()
{
  P3DIR_bit.P3DIR_1 = PORT_INPUT;
  P3DIR_bit.P3DIR_2 = PORT_INPUT;
  P3DIR_bit.P3DIR_3 = PORT_INPUT;
  P4DIR_bit.P4DIR_0 = PORT_INPUT;
  
  P4SEL_bit.P4SEL_0 = 1;
  
  while (P3IN_bit.P3IN_3); // Just for check the extMCU sends CLK
  while (!P3IN_bit.P3IN_3);

  TBCTL = TBSSEL_1 + MC_2 + TBCLR;
  TBCCTL0 = CM_2 + SCS + CAP + CCIE;
  
  __bis_SR_register(GIE);
}

unsigned long tickCnt;
#pragma vector = TIMERB0_VECTOR
__interrupt void TIMERB0_VECTOR_code()
{
  tickCnt++;
}


И всё-же если кто заметит в коде неточности - пожалуйста сообщите.
Go to the top of the page
 
+Quote Post
CAHTA_1939
сообщение Dec 10 2007, 04:34
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 142
Регистрация: 11-08-07
Пользователь №: 29 713



хм. а обязательно полу дуплекс делать? не проще использовать 4-ware соединение?

Сообщение отредактировал CAHTA_1939 - Dec 10 2007, 04:34
Go to the top of the page
 
+Quote Post

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

 


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


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