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

:rolleyes: Требуется любая информация(примеры написания листингов программ, обучающая литература и т.д.) по написанию программ на С/С++ для данного процессора.

 

ЗЫ Необходим быстрый начальный старт. :1111493779:

 

:help::help::help:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Начните с MicroBlaze Processor Reference Guide.

А так вообще на сайте xilinx в поиске Microblaze и погнали информации море.

Xilinx, кстати, очень хорошо поддерживает свой софт процессор,

куда лучше чем PPC405.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Начните с MicroBlaze Processor Reference Guide.

А так вообще на сайте xilinx в поиске Microblaze и погнали информации море.

Xilinx, кстати, очень хорошо поддерживает свой софт процессор,

куда лучше чем PPC405.

 

Да читал эту информацию, но там описана архитектура и все IP core, но как написать программу и привязать к какому-то конкретному выходу например подать/принять их на/по UART/SPI. Язык С/С++ я знаю для написания программ под Windows( Борланд С, Вижуал С++ ), но есть же разница писать под Windows и для микропроцессора, правда? (т.е. не нужно слов типа учи Си/С++ и будет тебе счастье и ссылки на стандарты Си/С++)

Организовывать архитектуру микропроцессора и подсоеденить к нему IP core (переферию) прочитав мануалы(и тот который Вы предлагаете) я разобрался и делаю. Но что далее ...

Уверен многие начинали с каких-то простых программ, например как принять байт и передать его обратно прибавив единицу, к полученному байту(слову) по UART, или что-то подобное. Где-то Вы читали как это делать или кто-то Вам рассказал и показал...

 

ПОДЕЛИТЕСЬ ИНФОРМАЦИЕЙ ПОЖАЛУЙСТА!!!

МНОГИЕ НА ФОРУМЕ РАБОТАЮТ С ПРОЦЕССОРОМ MicroBlaze ДАВНО - ПОДЕЛИТЕСЬ СВОИМИ ЗНАНИЯМИ, ПОЖАЛУЙСТА!!!

:help:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надо плясать от Xilinx SDK. Он автоматически создает примеры для всей периферии. Ко всем драйверам есть HTLM документация, лежит в папках с Design Suit'ом. В остальном это обычное программирование на C =)

 

Xilinx, кстати, очень хорошо поддерживает свой софт процессор,

куда лучше чем PPC405.

Не правда, все ip-блоки работают через одну шину (насколько я помню, IBM CoreConnect) и одинаково подходят как к PPC, так и к Microblaz'у. Так-что уровень поддержки одинаковый.

Изменено пользователем flipflop

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Надо плясать от Xilinx SDK. Он автоматически создает примеры для всей периферии.

SDK это среда разработи и своответственно ОНА ничего не создает, создает утилита libgen.

Ну и если на то пошло, то создает она не примеры, а дравера для аппаратной части.

Не правда, все ip-блоки работают через одну шину (насколько я помню, IBM CoreConnect) и одинаково подходят как к PPC, так и к Microblaz'у. Так-что уровень поддержки одинаковый.

Поддержка имелось ввиду, не в аппартаном плане, а в плане наличия на сайте референс дезайнов и всяческих примеров использования.

 

 

Да читал эту информацию, но там описана архитектура ...

Ну раз уж вы все прочитали и все знаете, то тогда и вопрос задавайте конкретный, а то создается впечатление из первого поста,

что Вы только взялись за эту задачу и не знаете с какого боку подойти.

 

В предложенном документе должно быть написано как классический hello world запустить под дебагером. Hello world в данном случае и

есть отправка по UART данных. Используется там функция xil_print, если она Вам не мила, то можете написать свою низкоуровневую

функцию вывода. Собственно говоря, точно так же как и любую низкоуровнивую функцию для любой IP корки. Собственно говоря, xilinx уже практически все за Вас написал. Утилита libgen создает драйвера для каждой Вашей корки, нужно только взять то, что Вам нужно или

на базе имеющегося написать свои функции общения с аппаратной частью.

В принцепе это Вам и хотел сказать flipflop :biggrin:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да читал эту информацию, но там описана архитектура ...

Начните (для простоты ) с программирования в XPS. Пользовательский ввод и вывод осуществляется через UART на котором организован консольный интерфейс. xil_printf("HELLO WORD\r\n"). Подключаете Ваше устройство к РС, запускаете HYPERterminal, настраиваите параметры COM-порта и видите эту надпись на экране. Для организации обмена с IPблоками(своими или чужими) используется драйвер т.е. програмный интерфейс. Этот драйвер автоматически создается когда Вы создаете своё IP, и реализует выбраный Вами механизм обмена. По сути своей драйвер - это либо портовая операция либо операция с памятью.Для доступа к драйверу надо в окне Assambly на нужной корке кликнуть правой кнопкой. В меню выбрать подменю Driver:хххххххх, а в следующем меню - Browse driver souces.... Вам откроются С-файлы. Переключитесь на h-файлы. И Вам откроется Header драйвера. Этот файл подинклюдивается и используется. Для получения адреса Вашего IP Вам нужен файл xparameters.h Ищите его в окне Application, в строке processor. Файл генерится когда Вы нажимаете "Generate libraries and drivers".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня не MicroBlaze, не NIOS, не С/С++ -->

:bb-offtopic:

1) прошиваем систему: софт-процессор с загрузкой через COM и с выводом на VGA,

2) пишем proba.pas:

module main
begin
  writeln('Hello, world')
  halt()
end

3) компилируем: a.exe proba.pas

4) запускаем copy proba.hex com --> видим на мониторе: Hello, world

:laughing:

Изменено пользователем Leka

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... Требуется любая информация(примеры написания листингов программ, обучающая литература и т.д.) по написанию программ на С/С++ для данного процессора.

...

Много примеров можно посмотреть здесь

 

%%\EDK\sw\XilinxProcessorIPLib\drivers\

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну и каковы успехи?

Программа

int main()
{
    print("Helo World\n");
    return 0;

Получилась... Скриншот с гипертерминала прикладываю

 

Плиз, помогите разобратья как принимать какие-то данные по UART. Например я в гипертермиле ввожу число, а программа к этому прибавляет(например 1 или какую-нибудь константу) и результат выдает на экран.

 

Плата Xilinx ML402

 

ОЧЕНЬ НУЖНО!!!

post-24839-1261996572_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

что неужели никто такой простенькой программы не писал???

ЗЫ не верю

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

%%EDK\sw\XilinxProcessorIPLib\drivers\uartlite_v1_14_a\examples\

 

Есть любые примеры, в том числе и как работать с прерываниями

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не ну Вы прямо как студент! Напишите мне и все.

Тыркните на вашу корку в EDK вылезит менюшка, там на одной из вкладок будет pdf значок.

В этой pdf все четко расписано как работает UART.

Не хотите лазить в EDK вот Вам ссылка

http://www.xilinx.com/ise/embedded/edk_ip.htm

по ней найдете документ на корку.

Далее изучаете все управляющие и статусные регистры свой корки.

В полинге мониторите бит, говорящий о том, что данные по UART приняты.

Далее читайте прибавляете и отправляйте обратно.

Предвидя следующий пост вот вам пример как писать и читать с адресов.

int main() {
    
  int i=0;
  int *addr_ptr;
  int status; 
   
  addr_ptr = (int*)BASE_ADR; //Адрес по которому хотим записать
  *addr_ptr = 0xAAAAAAAA;   //Данны, которые хотим записать
                
  addr_ptr = (int*)BASE_ADR; //Адрес по которому хотим прочитать
  status = *addr_ptr;            //Прочитанные данные

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

ПРОСТИТЕ!

Просто я никогда не программировал процессоры, и не знаю с какой стороны подойти

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...