реклама на сайте
подробности

 
 
 
Closed TopicStart new topic
> VHDL - автомат взбесился!, самостоятельно переходит в следующую стадию
aleshanoff
сообщение Mar 3 2017, 15:49
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 68
Регистрация: 2-05-15
Из: Смоленск
Пользователь №: 86 484



Всем доброго времени суток, товарищи. Творю проектик на VHDL. Написал автомат
CODE
pr_2 : process (clk1, start_uart, rst )
begin
if clk1'event and clk1 ='1' then

-- сброс
if rst = '1' then
st_type <= guard_time;
else

case st_type is
when guard_time => -- режим ожидания
if start_uart <= '1' then
st_type <= byte31_24_time;

else
st_type <= guard_time;
end if;

when byte31_24_time =>
-------------------------------------------

st_type <= byte23_16_time;

----------------------------------------------
when byte23_16_time =>
-------------------------------------------

st_type <= byte7_0_time;

----------------------------------------------
when byte7_0_time =>
-------------------------------------------

st_type <= inc_adress;

----------------------------------------------

when inc_adress =>
if adress = adress_max-1 then
st_type <= guard_time;
adress <= 0;
else
adress <= adress + 1;
st_type <=byte31_24_time;

end if;

when others =>
st_type <= guard_time;
end case;


end if; --- конец сброса
end if; --- конец клока
end process;


Переходит из режима ожидания самостоятельно в следующую стадию. Перепробывал все, что знал. (а знаю я немного)) Помогите мне, пожалуйста. help.gif

Прилагаю скрин ISim'a
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
gerber
сообщение Mar 3 2017, 16:07
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 650
Регистрация: 1-11-11
Пользователь №: 68 088



Цитата(aleshanoff @ Mar 3 2017, 18:49) *
if start_uart <= '1' then
st_type <= byte31_24_time;
else
st_type <= guard_time;
end if;

Судя по осциллограмме, у вас start_uart в нуле, соответственно, условие "меньше или равно 1" выполняется, и автомат переходит в состояние byte31_24_time. Что не так?


--------------------
"... часами я мог наблюдать, как люди работают." (М. Горький)
Go to the top of the page
 
+Quote Post
aleshanoff
сообщение Mar 3 2017, 16:13
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 68
Регистрация: 2-05-15
Из: Смоленск
Пользователь №: 86 484



спасибо за ответ))) извините, что потратил ваше время. Бьюсь головой об стену от стыда))))
Go to the top of the page
 
+Quote Post

Closed TopicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd March 2017 - 00:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01358 секунд с 7
ELECTRONIX ©2004-2016