在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5386|回复: 15

[求助] 冰天雪地十万火急,拨玛开关简单程序,,,急的吃饭不下

[复制链接]
发表于 2010-4-29 13:41:49 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我领导要求是
00000000    不分
00000001     2分
00000010     4分
00000011     6分
00000100     8分
00000101     10
00000110     12
00000111     14
00001000     16
依次类推

看有好办法不?


我自己写了一个
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY  FRE_DIV1  IS
PORT
   (CLK : IN STD_LOGIC;
    D     : IN  STD_LOGIC_VECTOR(7 DOWNTO 0);
    H     : OUT STD_LOGIC
   );
END ENTITY;
ARCHITECTURE ARCH_FRE_DIV1 OF FRE_DIV1 IS
SIGNAL CLK_OUT : STD_LOGIC;
BEGIN
PROCESS(CLK)
BEGIN
  IF (D=X"00") THEN
   H<=CLK;
  ELSE
   H<=CLK_OUT;
  END IF;
END PROCESS;
PROCESS(CLK)
VARIABLE CNT,CNT1 : INTEGER RANGE 0 TO 2000;
BEGIN
IF CLK'EVENT AND CLK='1' THEN
   IF (Cnt=0) THEN
      Cnt:=(2*CONV_INTEGER(D)-1);
     Clk_OUT<='1';
   ELSE
     Cnt:=Cnt-1;
     Clk_OUT<='0';
   END IF;
END IF;
END PROCESS;
END ARCH_FRE_DIV1;

在ISE中编译过了防真过不了,,哪个详细解答下.,...
 楼主| 发表于 2010-4-29 13:42:52 | 显示全部楼层
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 68: Illegal identifier : _period
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 70: Illegal identifier : _process
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 73: Illegal identifier : _period
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 75: Illegal identifier : _period
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 85: Illegal identifier : _period
Analyzing VHDL file "D:/pyytszy/pyyy/netgen/fit/FRE_DIV1_timesim.vhd" into library work
Analyzing VHDL file "D:/pyytszy/pyyy/pppp.vhd" into library work
ERROR:HDLCompiler:806 - "D:/pyytszy/pyyy/pppp.vhd" Line 68: Syntax error near constant.
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 68: Illegal identifier : _period
VHDL file D:/pyytszy/pyyy/pppp.vhd ignored due to errors
ERROR:HDLCompiler:841 - "D:/pyytszy/pyyy/pppp.vhd" Line 68: Expecting type  void for <ns>.
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 70: Illegal identifier : _process
ERROR:HDLCompiler:806 - "D:/pyytszy/pyyy/pppp.vhd" Line 72: Syntax error near <.
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 73: Illegal identifier : _period
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 75: Illegal identifier : _period
ERROR:HDLCompiler:806 - "D:/pyytszy/pyyy/pppp.vhd" Line 85: Syntax error near <.
ERROR:HDLCompiler:488 - "D:/pyytszy/pyyy/pppp.vhd" Line 85: Illegal identifier : _period
ERROR:HDLCompiler:854 - "D:/pyytszy/pyyy/pppp.vhd" Line 36: Unit <behavior> ignored due to previous errors.

防真老报错误
发表于 2010-4-29 13:53:20 | 显示全部楼层
VHDL不是很懂。但是verilog里面在进程里是不允许用“=”,这样是无法综合的。
你那个在进程中用“:=”估计也是不行的,没法综合。
建议LZ去好好学学VHDL基本概念,特别是阻塞,非阻塞语句的区别。
 楼主| 发表于 2010-4-29 14:43:32 | 显示全部楼层
DDDDDDDDDDDDDDDDD
发表于 2010-4-29 15:06:37 | 显示全部楼层
本帖最后由 wycawyc 于 2010-4-29 15:25 编辑

偶分。计数到设定值,输出时钟取反就ok。
 楼主| 发表于 2010-4-29 15:32:18 | 显示全部楼层
wycawyc   帮忙写个完整的可以防真过的好不??/VHDL
 楼主| 发表于 2010-4-29 15:42:44 | 显示全部楼层
DDDDDDDDDDDDDD
发表于 2010-4-29 15:54:47 | 显示全部楼层
我这里没有ise。也不了解你那里具体的情况。你的第二个process 改一下就好。不要用variable。用std_logic 或者signal。计数,比较,取反,就行了。
而且。你的错误提示。根本就不是这个文件的。是那个pppp.vhd的。
发表于 2010-4-29 15:56:39 | 显示全部楼层
我这里没有ise。也不了解你那里具体的情况。你的第二个process 改一下就好。不要用variable。用std_logic 或者signal。计数,比较,取反,就行了。
而且。你的错误提示。根本就不是这个文件的。是那个pppp.vhd的。
 楼主| 发表于 2010-4-29 16:12:31 | 显示全部楼层
要不你帮我修改下,,,完整的程序,,我入门,,怕走弯路
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 23:16 , Processed in 0.034962 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表