VHDL-Forum

 
Sie sind nicht eingeloggt.
LoginLogin Kostenlos anmeldenKostenlos anmelden
BeiträgeBeiträge MembersMitglieder SucheSuche HilfeHilfe
VotesUmfragen FilesDateien CalendarKalender BookmarksBookmarks
AD-Wandler

Anfang   zurück   weiter   Ende
Autor Beitrag
Niko
Gast
New PostErstellt: 07.09.13, 09:22  Betreff: AD-Wandler  drucken  Thema drucken  weiterempfehlen Antwort mit Zitat  

Hello World =)
Vielleicht kennt sich jemand besser aus mit AMS, als ich! Aufgabe ist, einen AD-Wandler zu schreiben, der für eine Eingangsspannung zwischen 0 und 5 V 8 digitale Werte ausgibt. Hier mein Code:
--library ieee;
--use ieee.electrical_systems.all;
LIBRARY DISCIPLINES; -- Ich benutze hAMSter
USE DISCIPLINES.ELECTROMAGNETIC_SYSTEM.ALL;

entity a2d is
generic (vthreshold : real := 0.625);
port (D_output : out bit_vector (2 downto 0);
terminal a_input, electrical_ref : electrical);
end entity a2d;

architecture behavioral of a2d is
quantity vin ACROSS a_input to electrical_ref;
begin
process (vin) is

begin
IF (vin'above(vthreshold)) then -- 0 - 0,625 V
d_output <= '000';
ELSE IF (vin'above(vthreshold*2)) then -- 0,626 - 1,25 V
d_output <= '001';
ELSE IF (vin'above(vthreshold*3)) then -- ... - 1,875 V
d_output <= '010';
ELSE IF (vin'above(vthreshold*4)) then -- ... - 2,5 V
d_output <= '011';
ELSE IF (vin'above(vthreshold*5)) then -- ... - 3,125 V
d_output <= '100';
ELSE IF (vin'above(vthreshold*6)) then -- ... - 3,75 V
d_output <= '101';
ELSE IF (vin'above(vthreshold*7)) then -- ... - 4,375 V
d_output <= '110';
ELSE -- (vin'above(vthreshold*8)) then -- ... - 5 V
d_output <= '111';
end process;
end architecture behavioral;

begin
vin == sin(2.0 * math_pi * f * NOW);
end;

Ich müsste unbedingt noch abgrenzen, also z.B. '001' bei (not (vin'above(vthreshold)) && vin'above(vthreshold*2)) oder so...
Hat jemand eine Idee?
nach oben
cheshmgir2020
Stammgast


Beiträge: 24

New PostErstellt: 07.03.20, 16:54  Betreff: Re: AD-Wandler  drucken  weiterempfehlen Antwort mit Zitat  

cheshmgir
cheshmgir
cheshmgir
cheshmgir
cheshmgir

nach oben
Benutzerprofil anzeigen Private Nachricht an dieses Mitglied senden
Sortierung ndern:  
Anfang   zurück   weiter   Ende
Seite 1 von 1
Gehe zu:   
Search

powered by carookee.com - eigenes profi-forum kostenlos

Design © trevorj