导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→编译错误请教

* 58904: 编译错误请教

   飞天一剑 
飞天一剑发表的帖子 

 编译错误请教
我运行后有错误,调了半天还是搞不定,没办法,只好请教各位高手了!
我把完整程序发上来,请各位高手指正!!! 
library IEEE;                     
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
use IEEE.Std_logic_unsigned.all; 

Entity part1 is 
Port(busy : IN   std_logic;
  data_ad: in   STD_LOGIC_VECTOR(15 DOWNTO 0);
    data : out  STD_LOGIC_VECTOR(15 DOWNTO 0));
end part1; 

architecture rtl of part1 is
signal   q1 : STD_LOGIC_VECTOR(15 DOWNTO 0) ;
signal   q3 : STD_LOGIC_VECTOR(19 DOWNTO 0) : ="00000000000000000000" ;
signal   q4 : STD_LOGIC_VECTOR(19 DOWNTO 0) : ="00000000000000000000" ;
signal   q5 : STD_LOGIC_VECTOR(19 DOWNTO 0) : ="00000000000000000000" ;
signal   q6 : STD_LOGIC_VECTOR(19 DOWNTO 0) ;
constant a3 : STD_LOGIC_VECTOR(19 DOWNTO 0) : ="00100000000000000100";       -- -917500的二进制补码;
constant m  : time := 1 us ;
begin 

process (busy)
variable q2 : STD_LOGIC_VECTOR(15 DOWNTO 0) ;
begin
 if(busy'event and busy ='1')then
    q1  <= data_ad after m;
    if(q1   < "1000111101011100")then                  
     q2(15 DOWNTO 0):="0000000000000000";
    elsif(q1>  "1010001111010110")then                 
     q2(15 DOWNTO 0):="1111111111111110";
    else                                             --数值范围变换;
       q3(15 DOWNTO 0)  <=q1;
       q4(19 DOWNTO 4)  <=q3(15 DOWNTO 0);               -- 左移四位;
       q5(18 DOWNTO 3)  <=q3(15 DOWNTO 0);               --左移三位; 
       q6  <=q3+q4+q5+a3;                                
       q2(15 DOWNTO 0):= q6(16 DOWNTO 1);              --右移一位;
   end if;
 end if;
end process;
data  <= q2(15 DOWNTO 0);
end rtl;

 

 


发表时间:2004年7月24日17:29:05

  
回复该帖

本主题共有 2 帖,分页:>>>>>该主题的所有内容[2]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  59091.[详细]LIBRARY IEEE; &..
摘要:LIBRARY IEEE;                 ......(1769字)
- [dali_ly][780次] 2004年7月27日

[上一篇帖子]:give me a list.thank you! 
[下一篇帖子]:应该没问题 我看到过别人这么接的 请问你单片机用的是什么的? 我用ADUC8