16+
Суббота
21 сентября
Вход |Карта сайта |Upload |codebook | PARTS

 О смысле всего сущего 0xFF

 Средства и методы разработки

 Мобильная и беспроводная связь

 Блошиный рынок Объявления

caxapa

Микроконтроллеры ARM 

AVR PIC MSP PLD,FPGA,DSP 

Кибернетика Технологии 

Схемы, платы, компоненты 

Микроконтроллеры MSP430

 
Новая темаПравила РегистрацияСтатистика Архив
Вернуться в конференциюТопик полностью
DareDevil  (11.07.2011 23:08, просмотров: 4589)
Здравствуйте. Опыт работы с микроконтроллерами MSP430 невелик, посему ищу вашей помощи. Суть задачи в том, чтобы через SPI передать несколько команд (код 24 бита размером), а с гироскопа считать ответ (16-битный). Вроде все настройки SPI прописал, 
но все равно не работает. Коллега посоветовал ввести 2 переменные ("Beck" и "Ham"), а 24 бита засылать побайтно по очереди. Тем не менее, в ответ с гироскопа я получаю какое-то непотребство. Заранее спасибо. Вот часть кода: IFG2 &= ~URXIFG1; while (!(IFG2 & UTXIFG1)); P5OUT &= ~0x20; //CS_LOW U1TXBUF = 0x94; U1TXBUF = 0x00; Beck = U1RXBUF; // переменная номер один U1TXBUF = 0x00; while (!(IFG2 & URXIFG1)); Ham = U1RXBUF; // переменная номер два delay(5000); U1TXBUF = 0x94; U1TXBUF = 0x00; Beck = U1RXBUF; U1TXBUF = 0x00; while (!(IFG2 & URXIFG1)); Ham = U1RXBUF; while (!(U1TCTL&TXEPT)); //CS_HIGH P5OUT |= 0x20; delay(5000); Beck = U1RXBUF; delay (1500); P5OUT &= ~0x20; //CS_LOW U1TXBUF = 0x40; U1TXBUF = 0x00; Beck = U1RXBUF; U1TXBUF = 0x00; while (!(IFG2 & URXIFG1)); Ham = U1RXBUF; delay(5000); while (!(U1TCTL&TXEPT)); //CS_HIGH P5OUT |= 0x20; delay (1500); while ( !( IFG2 & URXIFG1 )) ; // Waiting for URXIFG0 while (!(U1TCTL&TXEPT)) ;
Главная | Карта сайта | О проекте | Проекты | Файлообменник | Регистрация | Вебмастер | RSS
Лето 7528 от сотворения мира. При использовании материалов сайта ссылка на caxapу обязательна.
MMI © MMXIX