门关键词: 固定与色码电感器 fddc放电线圈 松下原装耳机 光敏二极管的使用 磁性开关 二极管工作原理 电视机电源电路图
IC库存(8958万) PDF资料(329万) IC价格 IC求购 资讯 技术资料
电子元器件搜索:
维库电子市场网是知名的电子元器件交易网站,为电子生产企业提供IC库存和技术资料查询服务。
VHDL描述的ad转换和ad转换器有什么区别呢? 有这个还要...
新闻出处:综合电子论坛 发布时间: 2004-10-20
diavs 发布于 2004-10-20 23:31:00
表情VHDL描述的ad转换和ad转换器有什么区别呢? 有这个还要ad转换器干嘛
Package defining types used by the system memory
PACKAGE rampac IS
             SUBTYPE addr10 IS NATURAL RANGE 0 TO 1023;
             SUBTYPE data16 IS INTEGER RANGE -32768 TO +32767;
             TYPE ram_array IS ARRAY(addr10''LOW TO addr10''HIGH) OF data16;
             CONSTANT z_val : data16 := -1;
END rampac;
Package defining a basic analogue type
PACKAGE adcpac IS
     SUBTYPE analogue IS REAL RANGE -5.0 TO +5.0;
END adcpac;
16-bit Analogue to Digital Converter
USE WORK.rampac.ALL;
USE WORK.adcpac.ALL;
ENTITY adc16 IS
    GENERIC(tconv : TIME := 10 us); --conversion time
    PORT(vin : IN analogue; digout : OUT data16; --input and output
              sc : IN BIT; busy : OUT BIT); --control
END adc16;
ARCHITECTURE behaviour OF adc16 IS
BEGIN
     PROCESS
           VARIABLE digtemp : data16;
           CONSTANT vlsb : analogue := (analogue''HIGH -
analogue''LOW)/REAL(2*ABS(data16''LOW));
     BEGIN
           digtemp := data16''LOW;
           busy <= ''0'';
           WAIT UNTIL (sc''EVENT AND sc = ''0'');
           busy <= ''1'';
           FOR i IN 0 TO (2*data16''HIGH) LOOP
               IF vin >= (analogue''LOW + (REAL(i) + 0.5)*vlsb)
               THEN digtemp := digtemp + 1;
               ELSE EXIT;
               END IF;
           END LOOP;
           WAIT FOR tconv;
           digout <= digtemp;
           busy <= ''0'';
     END PROCESS;
END behaviour;
关闭】 【打印
 
相关专题
 
友情链接:
© 2007 电子元件网 网站地图