[an error occurred while processing this directive]
подключить RS-232 и нажать пробел пока счетчик тикает :), через 15 мин подробнее
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

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

Отправлено yes 18 января 2005 г. 11:30
В ответ на: У меня нету самого комплекта от OSK, я только плату на несколько дней (+) отправлено SM 18 января 2005 г. 09:57

вот кусок Gel, который за DSP отвечает (весь gel 43k - почтой?)


hotmenu
releaseDSP( )
{
/* Register for DSP & ARM clocks + MPUI controls */
#define ARM_CKCTL *( unsigned int* )0xFFFECE00
#define ARM_IDLECT2 *( unsigned int* )0xFFFECE08
#define ARM_RSTCT1 *( unsigned int* )0xFFFECE10
#define MPUI_CTRL_REG *( unsigned int* )0xFFFEC900
#define MPUI_DSP_BOOT_CONFIG *( unsigned int* )0xFFFEC918
#define MPUI_DSP_MPUI_CONFIG *( unsigned int* )0xFFFEC91C
#define DSP_CKCTL *( unsigned short* )0xE1008000
#define DSP_IDLECT1 *( unsigned short* )0xE1008004
#define DSP_IDLECT2 *( unsigned short* )0xE1008008
#define DSP_RSTCT2 *( unsigned short* )0xE1008014

if ( ( ARM_RSTCT1 & 2 ) != 2 )
{
/* Set priority registers to allow for reprogramming */
ARM_RSTCT1 = 0x00000004;

/* Set SARAM to be shared by DSP and ARM */
MPUI_DSP_MPUI_CONFIG = 0;

/* Enable clock for MPUI */
ARM_IDLECT2 |= 0x0040;

/* Turn off byte swap in MPUI config register & set timeout to MAX */
MPUI_CTRL_REG = 0x0000FF2C;

/* Insert an idle loop at DSP [0x10000], mapped to ARM [0xE0010000]
* The loop will continuously branch to itself */
*( unsigned short* )0xE0010000 = 0x2020;
*( unsigned short* )0xE0010002 = 0x4A7E;
*( unsigned short* )0xE0010004 = 0x2020;
*( unsigned short* )0xE0010006 = 0x2020;

/* Set the DSP boot address to [0x010000], mapped to ARM [0xE0010000] */
MPUI_DSP_BOOT_CONFIG = 0x00000005;

/* Set Idle Register */
DSP_IDLECT2 = 0x0027;
/*| ( 1 << 5 ) // EN_TIMCK
| ( 1 << 2 ) // EN_PERCK
| ( 1 << 1 ) // EN_XORPCK
| ( 1 << 0 ) // EN_WDTCK
;*/

/* Enable Peripherals on DSP */
DSP_RSTCT2 = 0x0003;

/* Enable DSP clock */
ARM_CKCTL |= 0x00002000;

/* Set Idle Register */
DSP_IDLECT1 = 0x0177;
/*| ( 1 << 8 ) // IDLTIM_DSP
| ( 1 << 6 ) // WKUP_MODE
| ( 1 << 5 ) // IDLDPLL_DSP
| ( 1 << 4 ) // IDLIF_DSP
| ( 1 << 2 ) // IDLPER_DSP
| ( 1 << 1 ) // IDLXORP_DSP
| ( 1 << 0 ) // IDLWDT_DSP
;*/

/* Set DSP clock inputs */
DSP_CKCTL = 0x0090;
/*| ( 0 << 8 ) // TIMXO is equal to input clock reference
| ( 1 << 7 ) // Reserved to 1
| ( 1 << 4 ) // Reserved to 1
| ( 0 << 0 ) // DSP peripheral clock
;*/

/* Enable DSP */
ARM_RSTCT1 |= 0x00000002;
}

GEL_TextOut( " DSP Released\n", "GEL" );
}

ну а для того, чтобы пустить приложение под Linux
тоже нужен RS-232

и там
[login:] root
[password:] просто ввод

загрузить модуль (нафига они так ядро собрали???)
$ cd /opt/dsplink
$ ./dsplink load

и запустить приложение

$ cd /opt/dsplink/samples/message
$ ./messagegpp message.out 2000

и после на хосте CCS



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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru