Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: NIOS-UART ?
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
TSURKOV
Здравствуйте подскажите пожалуйста в чем может быть дело. Никак не могу заставить работать UART в NIOSII.
Открываю документацию раздел UART CORE и вроде, ничего сложного нет, приведены примеры.

#include <stdio.h>
#include <string.h>
int main()
{
char* msg = "Detected the character 't'.\n";
FILE* fp;
char prompt = 0;
fp = fopen ("/dev/uart1", "r+"); //Open file for reading and writing
fwrite (msg, strlen (msg), 1, fp);
}


Компилятор выдает непонятную ошибку
Unable to reach errno (at 0x00000820) from the global pointer (at 0x000091b4) because the offset (-35220) is out of the allowed range, -32678 to 32767.[/build/nios2/bin/nios2-gnutools/src/newlib/newlib/libc/reent/fstatr.c] blank_project_0
Stewart Little
Цитата(TSURKOV @ Apr 29 2008, 11:14) *
Компилятор выдает непонятную ошибку
Unable to reach errno (at 0x00000820) from the global pointer (at 0x000091b4) because the offset (-35220) is out of the allowed range, -32678 to 32767.[/build/nios2/bin/nios2-gnutools/src/newlib/newlib/libc/reent/fstatr.c] blank_project_0

Проверьте в свойствах библиотеки проекта - установлен ли Ваш UART в качестве стандартного средства ввода-вывода?
TSURKOV
Вроде установлены, посмотрите пожалуйста вот копия с экрана.
Stewart Little
Цитата(TSURKOV @ Apr 29 2008, 12:00) *
Вроде установлены, посмотрите пожалуйста вот копия с экрана.

1. Достаточно ли у Вас памяти? Судя по установками библиотеки проекта у Вас все сделано на On-Chip Memory, которой не так много. А стандартный IO требует дофига памяти.
2. Сделаны ли Auto Assign Base Addresses и Auto Assign IRQs в SOPC Builder'е?
3. Не было ли изменений в SOPC Builder'овском проекте после создания проекта в NiosII EDS? Если были, то сделайте рефреш библиотеки проекта.
И еще - у вас устройство открывается для чтения или для чтения-записи? Проверьте ключик в fopen (я запамятовал, какой он должен быть).
torik
Цитата
2. Сделаны ли Auto Assign Base Addresses и Auto Assign IRQs в SOPC Builder'е?


Вопрос - а имеет принципиальное значение автоназначение или вручную?
Stewart Little
Цитата(torik @ Apr 29 2008, 13:24) *
Вопрос - а имеет принципиальное значение автоназначение или вручную?

Принципиально - не имеет. Но при автоматическом назначении у Вас гарантированно оверлапа не получится. А при рукопашном - можно ошибиться.
Ну и еще вопрос с оптимальностью сгенеренного авалона (при том и другом назначении адресов) с точки зрения ресурсов FPGA...
torik
Ща попробую, скажу что получится...
torik
Хм... получилось до автоназначения 13337, после 12512 лог. эл.
Правда пока не проверил в железе
Kuzmi4
2 TSURKOV - у вас память как заметил Stewart Little - On-Chip Memory - а fopen и fwrite - посмотрите сколько занимают..
Сварганьте сами процедурки получения отправки меньше выйдет, или засуньте в внешнюю память программу..
Очень знакомое сообщение - я тож с он-чип начинал писать программки - потом стало не хватать...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.