[an error occurred while processing this directive]
Посмотрите кишки CSL и увидите такое...
(«Телесистемы»: Конференция «Цифровые сигнальные процессоры (DSP) и их применение»)

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

Отправлено AntZ 22 октября 2003 г. 09:06
В ответ на: Chip Support Library сделана не зря... отправлено Aleksey 22 октября 2003 г. 08:59


int I2C_write(Uint16 *data,int length,int master,Uint16 slaveaddress,int transfermode,int timeout) {


int i,j,k,l,m;
int old_intm;
Uint16 temp=1;

old_intm = IRQ_globalDisable();

/* set in transmit mode */
I2C_FSET(I2CMDR,TRX,1);

...

for (i=0;i<32000;i++) { /* delay loop */
asm (" NOP");
}

...

IRQ_globalRestore(old_intm);

return 0;

} /* end of I2C_send */

Оказывается, чтобы передать что-то по I2C надо запретить прерывания и использовать пустые циклы для таймингов... Красивое решение, блокировать процесор передавая данные по тормозному I2C

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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru