Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: скорость передачи данных по SPI
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
Dubov
Модель MSP430F47197. Подключен только кварц 32768Гц. SPI в режиме слейва
Какова максимально достижимая передача данных(частота клока от мастера)

Код инициализации:
CODE

int main( void )
{
volatile unsigned int i;

WDTCTL = WDTPW+WDTHOLD; // Stop WDT
FLL_CTL0 |= XCAP11PF; // Configure load caps

// Wait for xtal to stabilize
do
{
IFG1 &= ~OFIFG; // Clear OSCFault flag
for (i = 0x47FF; i > 0; i--); // Time for flag to set
}
while ((IFG1 & OFIFG)); // OSCFault flag still set?



//SPI init
P1SEL |= BIT6+BIT7; // SPI1pins select
P2SEL |= BIT0; // SPI_CLK pin select
UCA1CTL1 = UCSWRST; // **Put state machine in reset**
UCA1CTL0 |= UCSYNC+UCCKPL+UCMSB; //3-pin, 8-bit SPI master
UCA1CTL1 &= ~UCSWRST; // **Initialize USCI state machine**
IE2 |= UCA0RXIE; // Enable USCI_A0 RX interrupt

//while(!(P3IN&0x01)); // If clock sig from mstr stays low,
// it is not yet in SPI mode

//PIO init

P1DIR |= BIT5; // P1.5 output: BUSY signal
P1IE |= BIT4; // P1.4 Interrupt enabled CONVST signal
P1IES &= BIT4; // P2.7 hi/low edge
P1IFG &= ~BIT4; // P2.7 IFG Cleared

_BIS_SR(LPM4_bits + GIE); // Enter LPM4, enable interrupts

return 0;
}
rezident
Цитата(Dubov @ Apr 30 2014, 21:30) *
Модель MSP430F47197. Подключен только кварц 32768Гц. SPI в режиме слейва
Какова максимально достижимая передача данных(частота клока от мастера)

В datasheet MSP430F47197 на стр.51 в примечаниях к таблице USCI (SPI slave mode) (see Note 1, Figure 23, and Figure 24) приведена формула для расчета. Согласно нее для питания 3В получается что-то около 3,33МГц, для 2,2В - около 2,27МГц.
_pv
Цитата(rezident @ May 1 2014, 05:40) *
В datasheet MSP430F47197 на стр.51 в примечаниях к таблице USCI (SPI slave mode) (see Note 1, Figure 23, and Figure 24) приведена формула для расчета. Согласно нее для питания 3В получается что-то около 3,33МГц, для 2,2В - около 2,27МГц.

там в формуле еще и задержки мастера присутствуют так что частоты могут быть больше.
у msp430g2553 те же цифры в даташите, на 10МГц работало при 3.3В, причем даже с несколько кривыми клоками (отнюдь не 50% duty cycle).
другое дело что если частота MCLK будет 32кГц без FLL, то ему даже через DMA 2 такта надо на перекладывание байта в память, то есть получится только 128кГц для 32кГц. ну а без ДМА процессором так все 8-10 тактов будет.
rezident
Цитата(_pv @ May 2 2014, 01:48) *
у msp430g2553 те же цифры в даташите, на 10МГц работало при 3.3В, причем даже с несколько кривыми клоками (отнюдь не 50% duty cycle).

"Работало" вовсе не означает, что будет работать во всем диапазоне темперетур и напряжений питания. Цифры в даташите приведены с учетом гарантированной производителем рабочей частоты. Я потому так и написал: "согласно нее" (т.е. согласно формулы из даташита).
Цитата(_pv @ May 2 2014, 01:48) *
другое дело что если частота MCLK будет 32кГц без FLL, то ему даже через DMA 2 такта надо на перекладывание байта в память, то есть получится только 128кГц для 32кГц. ну а без ДМА процессором так все 8-10 тактов будет.

Это конечно, так. Но исходный вопрос был про максимальную рабочую частоту SPI, а не про рабочую частоту ядра, необходимую, для "выгребания" потока данных на максимальной частоте SPI. wink.gif
Dubov
Спасибо за советы. Хочу использовать MSP430 в качестве эмулятора АЦП для хост-процессора. Самого АЦП нет, приходится как-то выкручиваться, Реализую логику работы АЦП на том что есть(MSP430), даные ктороые надо выдавать как отсчёты просто беру из массива, циклически выдавая по SPI.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.