SoloCodigo
Programación Específica => Otros temas específicos => Lenguaje de Descripción de Hardware VHDL => Mensaje iniciado por: pascualsol en Jueves 28 de Abril de 2011, 19:44
-
hola señores pues estoy con este pequeño problemita y nesesito una manita plissssss
resurta que soy un novato en esto de vhdl. se un poco de visual basic
la preguntas es cual seria la funcion (mid) en vhdl
o si hay algun codigo que pueda separar una variable y entrarlas por separado en otra variable
EJEMPLO.
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity entry_unit is
Port (
end entry_unit;
architecture Behavioral of entry_unit is
begin
process(clk,rst)
variable NUN : integer range 0 to 255;
variable NUMERO1 : integer range 0 to 255;
variable NUMERO2 : integer range 0 to 255;
variable NUMERO3 : integer range 0 to 255;
begin
NUN:=123;
SEPARAR LOS 3 NUMERO QUE CONTIENE (NUN) Y ENTRARLAS EN LAS TRES VARIABLES
Y EL RESURTADO SEA ESTE
NUMERO1:= 1
NUMERO2:= 2
NUMERO3:= 3
end process;
end Behavioral;
pero no tengo ni idea de como se ase eso en vhdl si alguien save mas que yo seria un alivio
-
Viniendo de VB, antes de programar en VHDL deberías aprender un poco de circuitos digitales. VHDL no es un lenguaje para progamar aplicaciones. Es para modelado de circuitos. No tiene una función Mid porque eso no tiene ningún sentido en el contexto de circuitos digitales.
Saludos.
-
creo que uste no me a comprendido.
yo ya se electronica pero estoy aprendiendo a la programacion de los fpga.
la cuestion es que estoy asiendo un osciloscopio digital con un monitor vga, ya e hecho el codigo que dibuja la cuadricula
y tambien el que dibuja las hondas del adc en pantaya. estoy utilisando una memoria 29f040 la cual contiene una imagen .bmp
con todos los signos dibujados osea los numeros y letras que me serviran para mostrar los carculos del voltage frecuencia etcétera.
el problema es que solo puedo dibujal un solo numero ala ves
de 0 al 9 entonses si una bariable contiene digamos 123 para mostrarla en pantalla no me sera posible porque tendria que
crear ese array lo cuar seria estupido
ejemplo
type memory_array is array(integer range 0 to 1277) of tmp;
variable signoss: memory_array;
signoss(0):=1;
signoss(1):=10;
signoss(2):=19;
signoss(3):=28;
signoss(4):=37;
signoss(5):=46;
signoss(6):=55;
signoss(7):=64;
signoss(8):=73;
signoss(9):=81;
cada signo es igual a su posicion en la memoria osea el adres el numero (0) esta en el adress 1
-
Disculpa, pero no he comprendido nada. Sólo entiendo español/castellano.
Saludos.