Цитата(condor @ Jul 7 2007, 12:35)

Для МСП430 1кГц прерывание это совсем не быстро.
А какая MCLK?
+1
Цитата(Salazar @ Jul 7 2007, 11:34)

Здравствуйте, подскажите пожалуйста как сделать быстрое (Т=1мс) прерывание на MSP430F149.
Сейчас делаю так:
TBCTL = CNTL_3 + TBSSEL_1 + MC_1;
TBCCR0 = 33; //32768/1000
TBCCTL0 = CCIE;
#pragma vector = TIMERB0_VECTOR
__interrupt void TIMERB0_VECTOR_code( void )
{
rtc_msec++;
}
Частота ACLK = 32768. При периоде прерывания в Т=10мс основная программа работает, при уменьшении периода до 5мс основной цикл уже не выполняется. (Похоже, что программа "задыхается" в обработчике прерывания и процессор рестартится).
Ещё раз вопрос:
Как правильно сделать прерывание с периодом T=1мс на MSP430F149 ?
1 мс это 1кГц. У вас проц если работает на пусть даже 1 Мгц это в 1000 раз быстрее. Значит между прерываниями успевает выполняться примерно (на самом деле чуть поменьше) 1000 инструкций. В условиях 5 мс прерывания и 1 Мгц MCLK - 5000 интрукций.
Либо у вас такой большой основной цикл, что он не успевает на вашей MCLK полностью выполняться. Либо... чето не так с настройками камня. Приведите весь код, если не трудно