Dubov 0 April 30, 2014 Posted April 30, 2014 · Report post Модель MSP430F47197. Подключен только кварц 32768Гц. SPI в режиме слейва Какова максимально достижимая передача данных(частота клока от мастера) Код инициализации: 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; } Quote Share this post Link to post Share on other sites More sharing options...
rezident 0 April 30, 2014 Posted April 30, 2014 · Report post Модель 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МГц. Quote Share this post Link to post Share on other sites More sharing options...
_pv 20 May 1, 2014 Posted May 1, 2014 · Report post В 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 тактов будет. Quote Share this post Link to post Share on other sites More sharing options...
rezident 0 May 1, 2014 Posted May 1, 2014 · Report post у msp430g2553 те же цифры в даташите, на 10МГц работало при 3.3В, причем даже с несколько кривыми клоками (отнюдь не 50% duty cycle). "Работало" вовсе не означает, что будет работать во всем диапазоне темперетур и напряжений питания. Цифры в даташите приведены с учетом гарантированной производителем рабочей частоты. Я потому так и написал: "согласно нее" (т.е. согласно формулы из даташита). другое дело что если частота MCLK будет 32кГц без FLL, то ему даже через DMA 2 такта надо на перекладывание байта в память, то есть получится только 128кГц для 32кГц. ну а без ДМА процессором так все 8-10 тактов будет. Это конечно, так. Но исходный вопрос был про максимальную рабочую частоту SPI, а не про рабочую частоту ядра, необходимую, для "выгребания" потока данных на максимальной частоте SPI. ;) Quote Share this post Link to post Share on other sites More sharing options...
Dubov 0 May 3, 2014 Posted May 3, 2014 · Report post Спасибо за советы. Хочу использовать MSP430 в качестве эмулятора АЦП для хост-процессора. Самого АЦП нет, приходится как-то выкручиваться, Реализую логику работы АЦП на том что есть(MSP430), даные ктороые надо выдавать как отсчёты просто беру из массива, циклически выдавая по SPI. Quote Share this post Link to post Share on other sites More sharing options...