-
marat-ab
-
Автор темы
-
Не в сети
-
Новый участник
-
-
Сообщений: 14
-
Спасибо получено: 0
-
-
|
Добрый день!
Недавно ко мне попала в руки замечательный комплект TerasIC MAX II Micro Kit и с него у меня началось освоение ПЛИСов!
Простая, с первого взгляда, задача вызвала у меня затруднения:( , а именно: на плате есть генератор частоты (50MHz), заводится этот сигнал на ножку PIN_J6, так же есть светодиод, который подсоединен к PIN_U13. Сделал простую схему: вход->LPM_COUNTER->выход.
Вход: соединён с кварцем.
Выход: соединён с светодиодом.
LPM_COUNTER: имеет следующие настройки: LPM_MODULUS: 26, LPM_WIDTH:4.
расчёты следующие 50MHz/(2^26)=3Hz
т.е. диод должен мигать где-то три раза в секунду! НО этого не происходит!
Подскажите пожалуйста, в чём может быть проблема!
Буду очень благодарен))))
C:\fakepath\ledBlink.zip
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
nckm
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 112
-
Спасибо получено: 34
-
-
-
-
-
|
хм.. счет по модулю 26, кажется это значит делить на 26, а не на 2^26 как вы подумали.
И еще. LPM_WIDTH=4 как мне кажется - это и есть разрядность счетчика. То есть максимальное число на счетчике это (2^4-1)=15
Даже до 26 не досчитает, не то что до 2^26
Сделайте счетчик на 26 разряда (LPM_WIDTH=26) и подключайте светодиод к саммому старшему
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
marat-ab
-
Автор темы
-
Не в сети
-
Новый участник
-
-
Сообщений: 14
-
Спасибо получено: 0
-
-
|
Спасибо!
А если использовать выход cout. Судя по документации это "Carry-out port of the counter’s MSB bit. It can be used to connect to another counter to
create a larger counter."
Т.е. и есть старший бит счётчика!
(Попробовал так, результат нулевой(((
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
marat-ab
-
Автор темы
-
Не в сети
-
Новый участник
-
-
Сообщений: 14
-
Спасибо получено: 0
-
-
|
И ещё один вопрос! Как должен быть настроен входной пин, к которому подключается внешний генератор частоты?
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
nckm
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 112
-
Спасибо получено: 34
-
-
-
-
-
|
marat-ab пишет: Спасибо!
А если использовать выход cout. Судя по документации это "Carry-out port of the counter’s MSB bit. It can be used to connect to another counter to
create a larger counter."
Т.е. и есть старший бит счётчика!
(Попробовал так, результат нулевой(((
нет, cout не подходит. он слишком короткий - периодом тактовой частоты (у вас 50МГц) - вы не увидите как светодиод блинькнул.
Это сигнал переполнения. Тоесть если например счетчик 4 разряда и текущее значение его 15 (в двоичном исчислении это 1111) при следующем прибавлении единицы возникает перенос - cout=1, следующее значение счетчика - это ноль. тоесть далее cout будет равен нулю пока опять счетчик не дойдет до 1111+1
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
nckm
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 112
-
Спасибо получено: 34
-
-
-
-
-
|
marat-ab пишет: И ещё один вопрос! Как должен быть настроен входной пин, к которому подключается внешний генератор частоты?
это должен быть просто вход
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
marat-ab
-
Автор темы
-
Не в сети
-
Новый участник
-
-
Сообщений: 14
-
Спасибо получено: 0
-
-
|
Ок!
т.е. у LPM_COUNTER'а к выводу "q[]" я подцепляю шину (Bus Tool) и называю её "d[23..0]", а к выходу (тот что на светодиод идёт) я подсоединяю отдельный провод (Node Tool) и называю его "d[23]"?
Если так, то всё равно ничего не выходит:(
P.S. настройки LPM_COUNTER'а: LPM_WIDTH=24, LPM_MODULUS=24.
P.S.S. Я бы выложил сам проект или картинки для более подробного описания, но не могу! При попытке добавить файл создается странный путь: C:\FAKEPATH\LEDBLINK.ZIP, и ничего не прикрепляется. Написал в тех.поддержку форума по этому вопросу! жду ответа! надеюсь в ближайшее время смогу добавлять файлы к ответам!
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
umarsohod
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 816
-
Спасибо получено: 168
-
-
|
"LPM_MODULUS"- вообще уберите , или поставте "0"
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
nckm
-
-
Не в сети
-
Администрация форума
-
-
Сообщений: 112
-
Спасибо получено: 34
-
-
-
-
-
|
marat-ab пишет: Ок!
P.S. настройки LPM_COUNTER'а: LPM_WIDTH=24, LPM_MODULUS=24.
LPM_MODULUS определяет максимальное число до которого будет вестить счет.
Тоесть в вашем случае на счетчике будет 20, 21, 22, 23, 0, 1, 2
Понятно что до 24-го разряда он не до считает
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
-
marat-ab
-
Автор темы
-
Не в сети
-
Новый участник
-
-
Сообщений: 14
-
Спасибо получено: 0
-
-
|
Большое Спасибо за помощь!
Заработало!
|
Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.
|
Время создания страницы: 0.145 секунд