Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: BF537 SPORT0 + uClinux
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Программирование
RCray
Использую последнюю версию ядра uClinux. Пытаюсь работать со SPORTом.

Конфигурирую SPORT на на генерацию внутренних клоков-фрэймов, так и внешних.
На передачу данные выдаются, когда клоки и фрэймы внутренние генерируются. Вижу на шине данных, всё ок. Пытаюсь читать с из порта - читаются всё время FFFF-ки. Когда клоки-фрэймы внутренне генерируются в BF537, устройство на том конце выдаёт данные по их обнаружению (см осциллограмму). Когда клоки от устройства на том конце он с ними и выдаёт данные.

Прерывания отрабатываются как на приёме так и на передаче без ошибок переполнения, сбоев и т.д. А вот с данными на приём непонятно.

Конфигурация порта:

cfg->mode = NORM_MODE;
cfg->data_format = NORM_FORMAT;
cfg->fsync = 1;
cfg->int_clk_rx = 1; // (or in other case =0)
cfg->int_clk_tx = 1;
cfg->word_len = 16;
cfg->serial_clk = 2000000; // 2 MHz
cfg->fsync_clk = 62500; //

Код в моём приложении:

int n;
char msg[3];
while(1)
{
n = read(sport0, msg, 2);
printf("readed %d words: %c%c 0x%x%x\n", n, msg[0], msg[1], msg[0], msg[1]);
}

Рузультат:

readed 2 words: ЪЪ 0xFFFFFFFFFFFFFFFF




Где поискать источник ошибки?
RCray
извините меня дурака.
по схеме ножка RD на STAMP подтянута к питанию, а на осциллограме видно, что она остаётся в третьем состоянии.
полез смотреть - провод не контачил.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.