Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Проблема с OPB_GPIO XC4VFX100
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
RED_BULLok
Добрый день .

Только начал знакомиться с плисами, прошу сильно не пинать...

Имею V4FX100 PCIe Development Board фирмы Avnet. Стандартная задача для начала - поморгать светодиодами оказалась весьма сложной ). Пишу в Xilinx SDK 9.1, версия opb_gpio 3.01b. На плате есть 8 светодиодов. Использую первый канал gpio, bi-directional =true, input only =false;

XGpio GpioLeds;

int main()
{
Xuint32 returnedval;
XGpio_Initialize(&GpioLeds,XPAR_LEDS_8BIT_DEVICE_ID);
XGpio_SetDataDirection(&GpioLeds, 1, 0x00); //порты на выход

XGpio_DiscreteWrite(&GpioLeds, 1, 0xFF); //записываю в GPIO_DATA значение 0xff. Диоды зажигаются.
returnedval = XGpio_DiscreteRead(&GpioLeds,1) //читаю из регистра GPIO_DATA. Приходит 0 .
}
Т.о в регистр можно записать но не считать значение. Это глюк или моя криворукость ?


И еще интересует вопрос о шинах OPB и PLB. При конфигурации портов ввода/вывода, EMAC, rs232 их можно подвесить на любую из этих шин. Какая из них приоритетнее, есть ли разница куда я повешу GPIO на PLB или OPB?

Спасибо.
mollex85
Добрый день .

Имеется такая же плата V4FX100 PCIe, работал в версии EDK 9.2.
XGpio_DiscreteRead(&GpioLeds,1) читает ноль по причине того что контроллер GPIO для выших GpioLeds настроен только на выход. Можете посмотреть Configure IP .
имеется так же плата ML403, При создании проекта Визардом под эту плату контроллер GPIO создается "двунаправленым" сразу и эта функция там прокатывает.
Костян
Цитата(RED_BULLok @ Aug 20 2009, 09:08) *
Добрый день .

Только начал знакомиться с плисами, прошу сильно не пинать...

Имею V4FX100 PCIe Development Board фирмы Avnet.

Хм..нескромное начало FX100



Цитата
Т.о в регистр можно записать но не считать значение. Это глюк или моя криворукость ?


Криворукость.зачем читать то , что настроенно на выход ?


Цитата
И еще интересует вопрос о шинах OPB и PLB. При конфигурации портов ввода/вывода, EMAC, rs232 их можно подвесить на любую из этих шин. Какая из них приоритетнее, есть ли разница куда я повешу GPIO на PLB или OPB?

Есть , но для начало обновите свою версию ПО хотя бы до 9_2....вопрос сразу отпадет...т.к opb уже больше не поддерживается ни в microblaze , ни тем более в PPC. Хилые рекомендуют все делать на PLB
RED_BULLok
Цитата(Костян @ Nov 10 2009, 17:30) *
Криворукость.зачем читать то , что настроенно на выход ?


Хм, действительно. Но здесь скорее я неправильно выразился чем ошибся. В другой редакции моей проги ставил на выход, зажигал, ставил на вход, читал. Вычитывал собссна те же самыну нули вне зависимости от записанного значения. Контроллер визардом сконфигурирован как двунаправленый.
Читать тогда нужно было для работы с определенным диодом не трогая другие. Вот те и поморгал светодиодами на плате за 3к$ smile.gif

Да изначально вопрос был не актуальным. Мало кому нужно на такой плате цветомузыку на 8-и светодиодах устраивать
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.