1835|1

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

求帮忙,我想让它从0050开始累加 [复制链接]

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity jifei is
port(kmout:in std_logic;
     enable:in std_logic;
     reset:in std_logic;
     count1,count2,count3,count4:out std_logic_vector(3 downto 0));
end jifei;
architecture one of jifei is
begin
process(kmout,reset)
variable q1,q2,q3,q4:std_logic_vector(3 downto 0);
constant a:std_logic_vector(3 downto 0):="0101";
begin
q2:=a;
if kmout'event and kmout='1'  then
if reset='1' then
count1<="0000";count2<="0101";count3<="0000";count4<="0000";
elsif enable='0' then
count1<="0000";count2<="0101";count3<="0000";count4<="0000";
elsif enable='1'  then
  if q1<"0100" then
  q1:=q1+6;
  if q2<"1001" then
q2:=q2+1;
else q2:=q2-9;
   if q3<"1001" then
q3:=q3+1;
else q3:="0000";
   if q4<"1001" then
q4:=q4+1;
else q4:="0000";
end if;
end if;
end if;
else q1:=q1-4;
if q2<"1000" then
q2:=q2+2;
else q2:=q2-8;
if q3<"1001" then
q3:=q3+1;
else q3:="0000";
  if q4<"1001" then
q4:=q4+1;
else q4:="0000";
end if;
end if;
end if;
end if;
count1<=q1;
count2<=q2;
count3<=q3;
count4<=q4;
end if;
end if;
end process;
end one;
程序如上
仿真如下

count4到count1代表千百十个位,现在是从0000开始16的累加,我想让它从0050开始16累加,请问该怎么改?

file:///C:\Users\Administrator\AppData\Roaming\Tencent\Users\815223478\QQ\WinTemp\RichOle\HWGW`VJ5]]5)5`71@(~0}FW.png

此帖出自FPGA/CPLD论坛

最新回复

你为啥要定义q1~q4这四个变量啊?直接用counter1~counter4计数不就可以了吗?  详情 回复 发表于 2015-5-21 23:05
点赞 关注
 

回复
举报

375

帖子

0

TA的资源

一粒金砂(高级)

沙发
 
你为啥要定义q1~q4这四个变量啊?直接用counter1~counter4计数不就可以了吗?
此帖出自FPGA/CPLD论坛
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表