Перейти к содержанию
    

v.karak

Участник
  • Постов

    5
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный
  1. Здравствуйте! Скажите, у Вас получилось что нить с Вашей задачей по SPORT? Понятно,что времени прошло масса и скорее всего все уже сделано и забыто, но все же. Просто имеется похожая задача, хотел спросить Ваше решение. Спасибо.
  2. В функции ошибка, из за которой всегда данные вводились из тетрады MAIN. Нужно 0 заменить на addr :) Про 64-битную систему сказать пока не могу, так как нет под руками. Вообще-то запускалось и кажется работало. u32 pex_board::core_set_local_addr(int DmaChan, u32 addr) { AMB_SET_DMA_CHANNEL DmaParam; DmaParam.DmaChanNum = DmaChan; DmaParam.Param = addr; if(m_Descr[DmaChan]) { if (0 > ioctl(fd, IOCTL_AMB_SET_SRC_MEM, &DmaParam)) { fprintf(stderr, "%s(): Error set source for DMA\n", __FUNCTION__ ); return -1; } } return 0; }
  3. Точно, не 0xA001 а 0xA100. Посмотрел сейчас на работающем приборе. dsmv спасибо за коррекцию.
  4. чтобы посмотреть информацию о состоянии регистров модуля нужно выполнить команду cat /proc/MODULE_NAME вместо MODULE_NAME посмотрите какая плата у Вас (что-то вроде ***-PEX5-**) и покажите результат. Что-то предыдущее сообщение отправилось второй раз. то что в статусе 0xA000 говорит о том, что контроллер не стартовал. Должно быть 0xA001 у вас 64 битная linux система или 32?
  5. чтобы посмотреть информацию о состоянии регистров модуля нужно выполнить команду cat /proc/MODULE_NAME вместо MODULE_NAME посмотрите какая плата у Вас (что-то вроде ***-PEX5-**) и покажите результат.
×
×
  • Создать...