[an error occurred while processing this directive]
|
Привет!
У меня такая вот непонятная ситуация:
У проца 2 сериал порта
Оба подключены к ST_BUS, причем 0 порт метки передачи и приема совпадают, аналогично тактовая
порт 1 метки отличаются и соответственно тактовая тоже.
Работаю через DMA в автобуфферинге (организованы буферы на 2*32=64 слова обрабатываю флаги прерываний по половине буфера и по полному буферу)
Так вот гружу через JTAG работает система идеально данные идут в своих канальных интервалах
Гружу потом через последовательный порт и иногда проходит нормально а чаше всего нет
Сбиваются DMA каналы которые работают с портом 1.
Кроме этого вижу ошибку синхронизации порта и по передаче и по приему
(SPCR SYNCERR) (гружу композер потом RUN и запускаю чз посл порт прогу если не робит останавливаю выполнение и вижу SYNCERR )
ПОЧЕМУ ТАК МОЖЕТ БЫТЬ
Инициализацию портов делаю точно по инструкции с учетом там задержек в 2 такта и заносом первоначальных значений для запуска DMA.
Да и после того как в начале выполнения проги стал проверять наличие прихода меток FSM and FSX и только после этого запускать порт , то прога работает чаще правильно чем нет:) (написал так что самому тяжело осмыслить:) )
ПОЧЕМУ ТАК МОЖЕТ БЫТЬ???
E-mail: info@telesys.ru