enivid
Mar 28 2007, 09:51
После завершения функции main() регистр IER остается равным 0, несмотряна то, что в main() устанавливается его первый бит (пробовал и явное присваивание и C28_enableIER(0x0001)). В DSP/BIOS конфигурации ничего для включения или выключения прерываний не нашел. В чем может быть проблема?
vitus_strom
Mar 28 2007, 10:23
та же фигня с первым битом PIECTRL при использовании DspBios'а.
Посмотрите в сторону SPRC097, там есть примеры, только без биоса, к сожалению...
enivid
Mar 28 2007, 11:14
Цитата(vitus_strom @ Mar 28 2007, 10:23)

та же фигня с первым битом PIECTRL при использовании DspBios'а.
Посмотрите в сторону SPRC097, там есть примеры, только без биоса, к сожалению...
Спасибо, но меня интересует именно с биосом. без биоса все и так работает
enivid
Mar 28 2007, 15:52
Как я понял проблема в IDL_F_loop, потому что если сделать свое задание (TSK) в котором выполняется пустой бесконечный цикл, то прерывания нормально разрешаются, а как доходит до TSK_idle (который вызывает IDL_F_loop), так IER сразу и обнуляется. Причем, даже если в IDL Function Manager добавить IDL объект, который вызывает функцию, в которой включаются прерывания, то все равно IER будет постоянно обнуляться. Как с этим бороться? Есть какой-то способо посмотреть/изменить что делают функции IDL_F_busy, LNK_F_dataPump и RTA_F_dispatch?
vitus_strom
Mar 29 2007, 14:31
то enivid: Вы в симуляторе работаете? если да не пробывали ли вы симулировать вненее прерывание? XINT1 например? если да то получилось ли? что то у меня не идет не пойму в чем проблема....
enivid
Mar 29 2007, 19:27
Цитата(vitus_strom @ Mar 29 2007, 14:31)

то enivid: Вы в симуляторе работаете? если да не пробывали ли вы симулировать вненее прерывание? XINT1 например? если да то получилось ли? что то у меня не идет не пойму в чем проблема....
Я в в эмуляторе работаю. Проблема была в неправильном распределении памяти через кофигуратор БИОСа.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.