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

EPCS Altera

Всем привет. Такая есть проблема, не могу через Си в NIOS2 ДОСТУЧАТСЯ да EPCS16

Исходные данные:

-в QSYS (Quartus 13.0) добавил контроллер

- в Dual-Purpose Pins выставил все пены в Use ar reqular I/O

- контролер с EPCS запускается

- поставил SignalTap, что бы посмотреть как ходят сигналы data, sdo, dclk, sce триггер поставил на dclk по фронту

Не работает следующий код на Си

 

#include "epcs_commands.h"

int main()

{

alt_printf ("Start\n");

alt_printf ("d=%x\n",epcs_read_device_id(EPCS_BASE));

alt_printf ("End\n");

 

while (1) ;

 

return 0;

}

Контроллер просто зависает. Сообщение "Start" выводит, а дольше ничего. Триггер не срабатывает

Кто может подсказать в чем проблема.

 

 

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


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

для начала сделайте

alt_printf ("EPCS_BASE = 0X%08X\n",EPCS_BASE);

 

если там null, значит забыли

#include "system.h"

в котором этот дефайн определен

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


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

Выводит:

 

Start

EPCS_BASE = 0x21000

 

и зависает база соответствует тому что прописано в system.h

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


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

в таком случае зависание означает, что аппаратно в QSYS что-то неправильно сделано.

 

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


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

Не помогло выкладываю картинки

post-89140-1446532419_thumb.jpg

это настройка QSYS

post-89140-1446532783_thumb.jpg

это рапорт там есть три варинга, но не могу понять счем они связанны

 

post-89140-1446532953_thumb.jpg

это настройка ЦПУ

 

 

 

#include <stdio.h>

#include "epcs_commands.h"

#include "system.h"

int main()

{

printf("Hello from Nios II!\n");

alt_printf ("EPCS_FLASH_CONTROLLER_0_BASE=0x%x\n",EPCS_FLASH_BASE);

alt_printf ("d=%x\n",epcs_read_device_id(EPCS_FLASH_BASE));

printf("END\n");

return 0;

}

и код

post-89140-1446533340_thumb.jpg

Это то что выводит консоль

 

 

это в самом Quartus

post-89140-1446532912_thumb.jpg

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

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


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

Не помогло выкладываю картинки

post-89140-1446532419_thumb.jpg

это настройка QSYS

post-89140-1446532783_thumb.jpg

это рапорт там есть три варинга, но не могу понять счем они связанны

 

post-89140-1446532953_thumb.jpg

это настройка ЦПУ

 

 

 

#include <stdio.h>

#include "epcs_commands.h"

#include "system.h"

int main()

{

printf("Hello from Nios II!\n");

alt_printf ("EPCS_FLASH_CONTROLLER_0_BASE=0x%x\n",EPCS_FLASH_BASE);

alt_printf ("d=%x\n",epcs_read_device_id(EPCS_FLASH_BASE));

printf("END\n");

return 0;

}

и код

post-89140-1446533340_thumb.jpg

Это то что выводит консоль

 

 

это в самом Quartus

post-89140-1446532912_thumb.jpg

 

на варнинги эти не обращай внимание,

а вот какую ты частоту подаешь?

и еще.. у тебя в системе сброс не экспортирован, а на символе есть???

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


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

Частота 100Мгц

ресет я потом подцепил (а то проц не запускался)

 

и если я не ошибаюсь, надо вроде так

epcs_read_device_id(EPCS_FLASH_BASE+EPCS_FLASH_BASE_REGISTER_OFFSET);

 

http://electronix.ru/forum/index.php?showtopic=93233

 

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


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

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

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

Гость
Ответить в этой теме...

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

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

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

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

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

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