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

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

Отправлено GSH 06 октября 2004 г. 04:12

Помогите разобраться с С компилятором для процессора ADSP-2191. После успешной работы на ассемблере возникло желание перейти на С, но ничего не получается. После загрузки программы от процессора никакой реакции, изменение настроек компилятора не на что не влияет.

Вот текст простейшей программы. Если делать проект только на асме, то все работает: выводится счетчик в юарт, и дергается ножка процессора. Если компилировать данный файл – ничего не работает, хотя в отладчике все выполняется. Также ничего не работает, если вместо ассемблерной вставки тоже самое написать на С.
Что я делаю не так?
Компилятор VisualDSP++ 3.5 с последним апдейтом, процессор грузится через юарт, отладочного кабеля нет.

void main(void)
{

asm("
#include

MSTAT = 0x10;
IMASK = 0x0000;
ICNTL = 0x0000;
iopg = General_Purpose_IO;
ax0 = 0x04;
io( DIR ) = ax0;

iopg = UART_Controller_Page;
ax0 = 0x80;
io( LCR ) = ax0;

ax0 = 0x41;
io( DLL ) = ax0;
ax0 = 0x00;
io( DLH ) = ax0;

ax0 = 0x03;
io( LCR ) = ax0;

ax1 = 0x0000;


lb1:
ar = ax1 + 1;
ax1 = ar;
iopg = UART_Controller_Page;
io( THR ) = ax1;
ay0 = 0x20;

TxTest:
ax0 = io( LSR );
af = ax0 and ay0;
if EQ jump TxTest;


iopg = General_Purpose_IO;
ax0 = 0x04;
io( FLAGS ) = ax0;

CNTR = 600;

DO add_loop UNTIL CE;
add_loop: nop;

iopg = General_Purpose_IO;
ax0 = 0x04;
io( FLAGC ) = ax0;

CNTR = 600;
DO add_loop2 UNTIL CE;
add_loop2: nop;

jump lb1;

");
}

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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru