[an error occurred while processing this directive]
ТМС 5503 не хочет спать !
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено BrainJTAG 05 января 2005 г. 15:33

Делаю все согласно spra078c (Disabling the Internal Oscillator on 5509)
вот собственно:

_IFR0 = 0xFFFF;
_IFR1 = 0xFFFF;

// Prepare to Disable Internal Oscillator
EBSR |= 0xC000; //1. Set CLKOUT and OSC disable bits by writing 0xC000 to EBSR register

// IDLE All Domains Except CPU and CLKGEN
PWR_RSET(ICR,0x002E); //1. Idle EMIF, PERI, and DMA
DelayUsec(165); //2. Wait 165 cycles
asm("\t IDLE"); //3. Execute IDLE command

// IDLE All Domains
PWR_RSET(ICR,0x003F); //1. Idle EMIF, PERI, DMA, CLKGEN, CPU
DelayUsec(6); //2. Wait 6 cycles
asm("\t IDLE"); //3. Execute IDLE command

На 5503 нету USB стало быть нету и USB clock generator'a - . DSP тактируется при помощи кварца на 8.192 Mhz потом множится на 13 ...

[!] Вот после последней инструкции IDLE, он не засыпает а устанавливает флаг BERR в IFR1 (Bus error interrupt flag) что говорит о том что что-то посылает запросы на прерывание в CPU (согласно spru317g (Pereferials Overview)), другими словами что что-то еще не спит.
Внимание вопрос: ЧТО НЕ ТАК ?

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru